diff --git a/Dockerfile b/Dockerfile index 160ac56..ecee294 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,10 +1,9 @@ FROM node:16 RUN apt update && apt install -y python3 python3-pip wget RUN mkdir -p /home/node/app/node_modules && chown -R node:node /home/node/app -RUN mkdir -p /tmp/fascinus && chown -R node:node /tmp/fascinus WORKDIR /home/node/app USER node -COPY --chown=node:node banter/requirements.txt . +COPY --chown=node:node lib/banter/requirements.txt . RUN pip3 install -r requirements.txt COPY --chown=node:node package*.json ./ RUN npm i diff --git a/bot.js b/bot.js index f04918c..0c1a173 100644 --- a/bot.js +++ b/bot.js @@ -2,7 +2,7 @@ var irc = require("irc"); var fs = require("fs"); var readline = require('readline'); var path = require('path'); -var randomext = require('./random'); +var randomext = require('./lib/randomnum'); const { Worker } = require('worker_threads'); //var randomWords = require('better-random-words'); @@ -10,7 +10,7 @@ var config = { //edit your shit here server: "irc.supernets.org", port: 6697, SSL: true, - channels: ['#dev', '#superbowl'], + channels: ['#dev', '#fascinus'], botName: "fascinus", userName: "fascinus", realName: "Sneed" @@ -128,7 +128,7 @@ async function art(chan, url) { } console.log("Starting Banter") const spawn = require("child_process").spawn; - const pythonProcess = spawn('python3', ["banter/banter.py", url, "-t", filetype]) + const pythonProcess = spawn('python3', ["lib/banter/banter.py", url, "-t", filetype]) pythonProcess.stdout.on('data', (data) => { console.log(data.toString()) }); diff --git a/commands/godwords.js b/commands/godwords.js index d61d037..9cbabc7 100644 --- a/commands/godwords.js +++ b/commands/godwords.js @@ -1,6 +1,6 @@ const { parentPort, workerData } = require('worker_threads'); const { amt } = workerData; -var randomWords = require('better-random-words'); +var randomWords = require('../lib/randomword'); var output = []; var string = []; diff --git a/banter/.gitignore b/lib/banter/.gitignore similarity index 100% rename from banter/.gitignore rename to lib/banter/.gitignore diff --git a/banter/LICENSE b/lib/banter/LICENSE similarity index 100% rename from banter/LICENSE rename to lib/banter/LICENSE diff --git a/banter/README.md b/lib/banter/README.md similarity index 100% rename from banter/README.md rename to lib/banter/README.md diff --git a/banter/banter.1 b/lib/banter/banter.1 similarity index 100% rename from banter/banter.1 rename to lib/banter/banter.1 diff --git a/banter/banter.py b/lib/banter/banter.py similarity index 100% rename from banter/banter.py rename to lib/banter/banter.py diff --git a/banter/color.py b/lib/banter/color.py similarity index 100% rename from banter/color.py rename to lib/banter/color.py diff --git a/banter/requirements.txt b/lib/banter/requirements.txt similarity index 100% rename from banter/requirements.txt rename to lib/banter/requirements.txt diff --git a/random.js b/lib/randomnum.js similarity index 100% rename from random.js rename to lib/randomnum.js diff --git a/lib/randomword.js b/lib/randomword.js new file mode 100644 index 0000000..56c196c --- /dev/null +++ b/lib/randomword.js @@ -0,0 +1,358 @@ +var wordList = [ + // Borrowed from xkcd password generator which borrowed it from wherever + "ability","able","aboard","about","above","accept","accident","according", + "account","accurate","acres","across","act","action","active","activity", + "actual","actually","add","addition","additional","adjective","adult","adventure", + "advice","affect","afraid","after","afternoon","again","against","age", + "ago","agree","ahead","aid","air","airplane","alike","alive", + "all","allow","almost","alone","along","aloud","alphabet","already", + "also","although","am","among","amount","ancient","angle","angry", + "animal","announced","another","answer","ants","any","anybody","anyone", + "anything","anyway","anywhere","apart","apartment","appearance","apple","applied", + "appropriate","are","area","arm","army","around","arrange","arrangement", + "arrive","arrow","art","article","as","aside","ask","asleep", + "at","ate","atmosphere","atom","atomic","attached","attack","attempt", + "attention","audience","author","automobile","available","average","avoid","aware", + "away","baby","back","bad","badly","bag","balance","ball", + "balloon","band","bank","bar","bare","bark","barn","base", + "baseball","basic","basis","basket","bat","battle","be","bean", + "bear","beat","beautiful","beauty","became","because","become","becoming", + "bee","been","before","began","beginning","begun","behavior","behind", + "being","believed","bell","belong","below","belt","bend","beneath", + "bent","beside","best","bet","better","between","beyond","bicycle", + "bigger","biggest","bill","birds","birth","birthday","bit","bite", + "black","blank","blanket","blew","blind","block","blood","blow", + "blue","board","boat","body","bone","book","border","born", + "both","bottle","bottom","bound","bow","bowl","box","boy", + "brain","branch","brass","brave","bread","break","breakfast","breath", + "breathe","breathing","breeze","brick","bridge","brief","bright","bring", + "broad","broke","broken","brother","brought","brown","brush","buffalo", + "build","building","built","buried","burn","burst","bus","bush", + "business","busy","but","butter","buy","by","cabin","cage", + "cake","call","calm","came","camera","camp","can","canal", + "cannot","cap","capital","captain","captured","car","carbon","card", + "care","careful","carefully","carried","carry","case","cast","castle", + "cat","catch","cattle","caught","cause","cave","cell","cent", + "center","central","century","certain","certainly","chain","chair","chamber", + "chance","change","changing","chapter","character","characteristic","charge","chart", + "check","cheese","chemical","chest","chicken","chief","child","children", + "choice","choose","chose","chosen","church","circle","circus","citizen", + "city","class","classroom","claws","clay","clean","clear","clearly", + "climate","climb","clock","close","closely","closer","cloth","clothes", + "clothing","cloud","club","coach","coal","coast","coat","coffee", + "cold","collect","college","colony","color","column","combination","combine", + "come","comfortable","coming","command","common","community","company","compare", + "compass","complete","completely","complex","composed","composition","compound","concerned", + "condition","congress","connected","consider","consist","consonant","constantly","construction", + "contain","continent","continued","contrast","control","conversation","cook","cookies", + "cool","copper","copy","corn","corner","correct","correctly","cost", + "cotton","could","count","country","couple","courage","course","court", + "cover","cow","cowboy","crack","cream","create","creature","crew", + "crop","cross","crowd","cry","cup","curious","current","curve", + "customs","cut","cutting","daily","damage","dance","danger","dangerous", + "dark","darkness","date","daughter","dawn","day","dead","deal", + "dear","death","decide","declared","deep","deeply","deer","definition", + "degree","depend","depth","describe","desert","design","desk","detail", + "determine","develop","development","diagram","diameter","did","die","differ", + "difference","different","difficult","difficulty","dig","dinner","direct","direction", + "directly","dirt","dirty","disappear","discover","discovery","discuss","discussion", + "disease","dish","distance","distant","divide","division","do","doctor", + "does","dog","doing","doll","dollar","done","donkey","door", + "dot","double","doubt","down","dozen","draw","drawn","dream", + "dress","drew","dried","drink","drive","driven","driver","driving", + "drop","dropped","drove","dry","duck","due","dug","dull", + "during","dust","duty","each","eager","ear","earlier","early", + "earn","earth","easier","easily","east","easy","eat","eaten", + "edge","education","effect","effort","egg","eight","either","electric", + "electricity","element","elephant","eleven","else","empty","end","enemy", + "energy","engine","engineer","enjoy","enough","enter","entire","entirely", + "environment","equal","equally","equator","equipment","escape","especially","essential", + "establish","even","evening","event","eventually","ever","every","everybody", + "everyone","everything","everywhere","evidence","exact","exactly","examine","example", + "excellent","except","exchange","excited","excitement","exciting","exclaimed","exercise", + "exist","expect","experience","experiment","explain","explanation","explore","express", + "expression","extra","eye","face","facing","fact","factor","factory", + "failed","fair","fairly","fall","fallen","familiar","family","famous", + "far","farm","farmer","farther","fast","fastened","faster","fat", + "father","favorite","fear","feathers","feature","fed","feed","feel", + "feet","fell","fellow","felt","fence","few","fewer","field", + "fierce","fifteen","fifth","fifty","fight","fighting","figure","fill", + "film","final","finally","find","fine","finest","finger","finish", + "fire","fireplace","firm","first","fish","five","fix","flag", + "flame","flat","flew","flies","flight","floating","floor","flow", + "flower","fly","fog","folks","follow","food","foot","football", + "for","force","foreign","forest","forget","forgot","forgotten","form", + "former","fort","forth","forty","forward","fought","found","four", + "fourth","fox","frame","free","freedom","frequently","fresh","friend", + "friendly","frighten","frog","from","front","frozen","fruit","fuel", + "full","fully","fun","function","funny","fur","furniture","further", + "future","gain","game","garage","garden","gas","gasoline","gate", + "gather","gave","general","generally","gentle","gently","get","getting", + "giant","gift","girl","give","given","giving","glad","glass", + "globe","go","goes","gold","golden","gone","good","goose", + "got","government","grabbed","grade","gradually","grain","grandfather","grandmother", + "graph","grass","gravity","gray","great","greater","greatest","greatly", + "green","grew","ground","group","grow","grown","growth","guard", + "guess","guide","gulf","gun","habit","had","hair","half", + "halfway","hall","hand","handle","handsome","hang","happen","happened", + "happily","happy","harbor","hard","harder","hardly","has","hat", + "have","having","hay","he","headed","heading","health","heard", + "hearing","heart","heat","heavy","height","held","hello","help", + "helpful","her","herd","here","herself","hidden","hide","high", + "higher","highest","highway","hill","him","himself","his","history", + "hit","hold","hole","hollow","home","honor","hope","horn", + "horse","hospital","hot","hour","house","how","however","huge", + "human","hundred","hung","hungry","hunt","hunter","hurried","hurry", + "hurt","husband","ice","idea","identity","if","ill","image", + "imagine","immediately","importance","important","impossible","improve","in","inch", + "include","including","income","increase","indeed","independent","indicate","individual", + "industrial","industry","influence","information","inside","instance","instant","instead", + "instrument","interest","interior","into","introduced","invented","involved","iron", + "is","island","it","its","itself","jack","jar","jet", + "job","join","joined","journey","joy","judge","jump","jungle", + "just","keep","kept","key","kids","kill","kind","kitchen", + "knew","knife","know","knowledge","known","label","labor","lack", + "lady","laid","lake","lamp","land","language","large","larger", + "largest","last","late","later","laugh","law","lay","layers", + "lead","leader","leaf","learn","least","leather","leave","leaving", + "led","left","leg","length","lesson","let","letter","level", + "library","lie","life","lift","light","like","likely","limited", + "line","lion","lips","liquid","list","listen","little","live", + "living","load","local","locate","location","log","lonely","long", + "longer","look","loose","lose","loss","lost","lot","loud", + "love","lovely","low","lower","luck","lucky","lunch","lungs", + "lying","machine","machinery","mad","made","magic","magnet","mail", + "main","mainly","major","make","making","man","managed","manner", + "manufacturing","many","map","mark","market","married","mass","massage", + "master","material","mathematics","matter","may","maybe","me","meal", + "mean","means","meant","measure","meat","medicine","meet","melted", + "member","memory","men","mental","merely","met","metal","method", + "mice","middle","might","mighty","mile","military","milk","mill", + "mind","mine","minerals","minute","mirror","missing","mission","mistake", + "mix","mixture","model","modern","molecular","moment","money","monkey", + "month","mood","moon","more","morning","most","mostly","mother", + "motion","motor","mountain","mouse","mouth","move","movement","movie", + "moving","mud","muscle","music","musical","must","my","myself", + "mysterious","nails","name","nation","national","native","natural","naturally", + "nature","near","nearby","nearer","nearest","nearly","necessary","neck", + "needed","needle","needs","negative","neighbor","neighborhood","nervous","nest", + "never","new","news","newspaper","next","nice","night","nine", + "no","nobody","nodded","noise","none","noon","nor","north", + "nose","not","note","noted","nothing","notice","noun","now", + "number","numeral","nuts","object","observe","obtain","occasionally","occur", + "ocean","of","off","offer","office","officer","official","oil", + "old","older","oldest","on","once","one","only","onto", + "open","operation","opinion","opportunity","opposite","or","orange","orbit", + "order","ordinary","organization","organized","origin","original","other","ought", + "our","ourselves","out","outer","outline","outside","over","own", + "owner","oxygen","pack","package","page","paid","pain","paint", + "pair","palace","pale","pan","paper","paragraph","parallel","parent", + "park","part","particles","particular","particularly","partly","parts","party", + "pass","passage","past","path","pattern","pay","peace","pen", + "pencil","people","per","percent","perfect","perfectly","perhaps","period", + "person","personal","pet","phrase","physical","piano","pick","picture", + "pictured","pie","piece","pig","pile","pilot","pine","pink", + "pipe","pitch","place","plain","plan","plane","planet","planned", + "planning","plant","plastic","plate","plates","play","pleasant","please", + "pleasure","plenty","plural","plus","pocket","poem","poet","poetry", + "point","pole","police","policeman","political","pond","pony","pool", + "poor","popular","population","porch","port","position","positive","possible", + "possibly","post","pot","potatoes","pound","pour","powder","power", + "powerful","practical","practice","prepare","present","president","press","pressure", + "pretty","prevent","previous","price","pride","primitive","principal","principle", + "printed","private","prize","probably","problem","process","produce","product", + "production","program","progress","promised","proper","properly","property","protection", + "proud","prove","provide","public","pull","pupil","pure","purple", + "purpose","push","put","putting","quarter","queen","question","quick", + "quickly","quiet","quietly","quite","rabbit","race","radio","railroad", + "rain","raise","ran","ranch","range","rapidly","rate","rather", + "raw","rays","reach","read","reader","ready","real","realize", + "rear","reason","recall","receive","recent","recently","recognize","record", + "red","refer","refused","region","regular","related","relationship","religious", + "remain","remarkable","remember","remove","repeat","replace","replied","report", + "represent","require","research","respect","rest","result","return","review", + "rhyme","rhythm","rice","rich","ride","riding","right","ring", + "rise","rising","river","road","roar","rock","rocket","rocky", + "rod","roll","roof","room","root","rope","rose","rough", + "round","route","row","rubbed","rubber","rule","ruler","run", + "running","rush","sad","saddle","safe","safety","said","sail", + "sale","salmon","salt","same","sand","sang","sat","satellites", + "satisfied","save","saved","saw","say","scale","scared","scene", + "school","science","scientific","scientist","score","screen","sea","search", + "season","seat","second","secret","section","see","seed","seeing", + "seems","seen","seldom","select","selection","sell","send","sense", + "sent","sentence","separate","series","serious","serve","service","sets", + "setting","settle","settlers","seven","several","shade","shadow","shake", + "shaking","shall","shallow","shape","share","sharp","she","sheep", + "sheet","shelf","shells","shelter","shine","shinning","ship","shirt", + "shoe","shoot","shop","shore","short","shorter","shot","should", + "shoulder","shout","show","shown","shut","sick","sides","sight", + "sign","signal","silence","silent","silk","silly","silver","similar", + "simple","simplest","simply","since","sing","single","sink","sister", + "sit","sitting","situation","six","size","skill","skin","sky", + "slabs","slave","sleep","slept","slide","slight","slightly","slip", + "slipped","slope","slow","slowly","small","smaller","smallest","smell", + "smile","smoke","smooth","snake","snow","so","soap","social", + "society","soft","softly","soil","solar","sold","soldier","solid", + "solution","solve","some","somebody","somehow","someone","something","sometime", + "somewhere","son","song","soon","sort","sound","source","south", + "southern","space","speak","special","species","specific","speech","speed", + "spell","spend","spent","spider","spin","spirit","spite","split", + "spoken","sport","spread","spring","square","stage","stairs","stand", + "standard","star","stared","start","state","statement","station","stay", + "steady","steam","steel","steep","stems","step","stepped","stick", + "stiff","still","stock","stomach","stone","stood","stop","stopped", + "store","storm","story","stove","straight","strange","stranger","straw", + "stream","street","strength","stretch","strike","string","strip","strong", + "stronger","struck","structure","struggle","stuck","student","studied","studying", + "subject","substance","success","successful","such","sudden","suddenly","sugar", + "suggest","suit","sum","summer","sun","sunlight","supper","supply", + "support","suppose","sure","surface","surprise","surrounded","swam","sweet", + "swept","swim","swimming","swing","swung","syllable","symbol","system", + "table","tail","take","taken","tales","talk","tall","tank", + "tape","task","taste","taught","tax","tea","teach","teacher", + "team","tears","teeth","telephone","television","tell","temperature","ten", + "tent","term","terrible","test","than","thank","that","thee", + "them","themselves","then","theory","there","therefore","these","they", + "thick","thin","thing","think","third","thirty","this","those", + "thou","though","thought","thousand","thread","three","threw","throat", + "through","throughout","throw","thrown","thumb","thus","thy","tide", + "tie","tight","tightly","till","time","tin","tiny","tip", + "tired","title","to","tobacco","today","together","told","tomorrow", + "tone","tongue","tonight","too","took","tool","top","topic", + "torn","total","touch","toward","tower","town","toy","trace", + "track","trade","traffic","trail","train","transportation","trap","travel", + "treated","tree","triangle","tribe","trick","tried","trip","troops", + "tropical","trouble","truck","trunk","truth","try","tube","tune", + "turn","twelve","twenty","twice","two","type","typical","uncle", + "under","underline","understanding","unhappy","union","unit","universe","unknown", + "unless","until","unusual","up","upon","upper","upward","us", + "use","useful","using","usual","usually","valley","valuable","value", + "vapor","variety","various","vast","vegetable","verb","vertical","very", + "vessels","victory","view","village","visit","visitor","voice","volume", + "vote","vowel","voyage","wagon","wait","walk","wall","want", + "war","warm","warn","was","wash","waste","watch","water", + "wave","way","we","weak","wealth","wear","weather","week", + "weigh","weight","welcome","well","went","were","west","western", + "wet","whale","what","whatever","wheat","wheel","when","whenever", + "where","wherever","whether","which","while","whispered","whistle","white", + "who","whole","whom","whose","why","wide","widely","wife", + "wild","will","willing","win","wind","window","wing","winter", + "wire","wise","wish","with","within","without","wolf","women", + "won","wonder","wonderful","wood","wooden","wool","word","wore", + "work","worker","world","worried","worry","worse","worth","would", + "wrapped","write","writer","writing","written","wrong","wrote","yard", + "year","yellow","yes","yesterday","yet","you","young","younger", + "your","yourself","youth","zero","zebra","zipper","zoo","zulu","Alabama", + ,"count","history","fortieth","finished","still","Britain","leader","spent","plane","beat" + ,"deal","current","worth","melody","weather","Berlin","Alabama","members","property","long", +,"would","above","plane","Denmark","stood","continue","covered","when","pole","winter","nerve","speak", +"whether","feet","northern","held","opinion","past","ball","train","able", "acid", "also", "area", "army", "away", "baby", "back", "ball", "band", "bank", "base", "bath", "bear", "beat", "been", "before", "begin", "bell", "best", "bill", "bird", "bite", "blue", "boat", "body", "bomb", "bond", "bone", "book", "born", "both", "bowl", "buzz", "cage", "cake", "call", "calm", "came", "card", "care", "case", "cast", "cell", "cent", "chat", "chip", "city", "claw", "clay", "clean", "clear", "cloak", "clock", "cloth", "cloud", "club", "coal", "coat", "code", "coin", "cold", "come", "cook", "cool", "cope", "copy", "core", "cost", "Crew", "crop", "cube", "cure", "curl", "dark", "date", "dawn", "days", "dead", "deal", "dean", "dear", "debt", "deep", "deny", "desk", "dial", "died", "diet", "doct", "does", "door", "down", "draw", "drew", "drug", "dual", "duck", "duty", "each", "earn", "ease", "east", "easy", "edge", "else", "even", "ever", "evil", "exit", "face", "fact", "fail", "fair", "fall", "fame", "farm", "fast", "fate", "fear", "feed", "feel", "feet", "fell", "felt", "fern", "fewer", "flee", "flew", "flip", "flow", "food", "foot", "ford", "form", "fort", "four", "free", "from", "fuel", "full", "fund", "gain", "game", "gate", "gave", "gear", "gene", "gift", "girl", "give", "glad", "glass", "globe", "glow", "goat", "gold", "good", "gown", "grab", "gray", "green", "grew", "grin", "grip", "grow", "grown", "gulf", "hair", "half", "hall", "hand", "hang", "hard", "harm", "hate", "have", "hear", "heat", "held", "hell", "help", "herd", "here", "hero", "hill", "hire", "hold", "hole", "home", "hope", "horn", "host", "hour", "howl", "huge", "hung", "hunt", "hurry", "hurt", "idea", "into", "iron", "item", "jack", "jerk", "joke", "jolt", "jump", "jury", "keep", "knew", "know", "lack", "lady", "laid", "lake", "land", "lane", "last", "late", "laud", "lead", "leaf", "leak", "lean", "leap", "less", "lest", +"aboard", "ability", "acquire", "across", "action", "address", "advance", "advisor", "afflict", "afraid", "against", "airport", "alarmed", "algebra", "alkaline", "alleged", "already", "although", "amazing", "amount", "amplify", "ancient", "ankle", "annoyed", "another", "answer", "anymore", "apology", "appear", "approve", "archery", "arrival", "artist", "asleep", "assemble", "attack", "attempt", "attend", "august", "average", "awesome", "awkward", "backing", "balance", "balcony", "bamboo", "banquet", "barren", "battle", "beauty", "because", "become", "bedroom", "before", "behold", "believe", "beneath", "benefit", "beware", "beyond", "bicycle", "billing", "biscuit", "bitters", "bizarre", "blacken", "blaming", "bleak", "bleed", "blender", "blissful", "blossom", "blunder", "boarder", "bouncing", "bouncing", "breeze", "brevity", "bright", "brisket", "bronze", "brooding", "bruised", "bumped", "bundle", "burden", "bustle", "butcher", "butter", "cactus", "calmly", "camper", "cancel", "candle", "candy", "canyon", "capital", "captain", "caution", "ceiling", "centaur", "certain", "chalked", "champion", "channel", "charge", "chase", "cheaper", "chewier", "chicken", "chimney", "choir", "chosen", "circles", "citizen", "claimed", "clarity", "claws", "climbed", "cloak", "clumsy", "coaster", "coconut", "coffin", "college", "coltish", "column", "combine", "coming", "command", "common", "compare", "compete", "concede", "concern", "condemn", "confess", "confirm", "confuse", "consent", "consume", "contain", "contend", "continue", "contrast", "control", "convert", "copper", "corridor", "cotton", "couple", "cousin", "cozy", "crackle", "crashed", "crawdad", "create", "crevice", "cricket", "criminal", "crisply", "critter", "cruelty", "crumble", "cuddle", "currency", "cursor", "custard", "cuticle", "cutlass", "dazzle", "debtors", "decency", "decision", "decrease", "defeat", "defend", "degree", "delight", "deliver", "demand", "deposit", "deserve", "desire", "despair", "destroy", "device", "devote", "diagram", +"diamond", "different", "digest", "digital", "dilute", "diluted", "diluting", "diploma", "dipped", "direct", "disagree", "discover", "disease", "display", "distance", "diverge", "divorce", "doctor", "dodging", "dolphin", "dominant", "donate", "double", "doubles", "doubtful", "downing", "dragon", "dreamer", "dressed", "drink", "driver", "drummer", "dueling", "dumbest", "during", "dwell", "eagerly", "easiest", "eclipse", "ecstasy", "edition", "educate", "eighteen", "eighties", "electron", "elegant", "element", "embargo", "embrace", "emerge", "emotions", "empathy", "emperor", "enable", "enclose", "encourage", "endanger", "energy", "enhance", "enquire", "entrance", "envelope", "envision", "epidemic", "escape", "essential", "esteem", "ethical", "evasion", "evident", "exalted", "exceed", "exclaim", "exclude", "execute", "exhaled", "exist", "expect", "expire", "explain", "explore", "extract", "eyebrow", "facial", "factor", "failing", "fallen", "familiar", "fantasy", "fashion", "faucet", "favorite", "feather", "feature", "feline", "females", "fencing", "fertile", "fierce", "figure", "filming", "finally", "finance", "fitness", "flashed", "flatten", "flicker", "floated", "flowing", "fluidly", "fluke", "focusing", "follower", "forbid", "force", "forest", "formal", "formula", "fossil", "fouling", "frantic", "frequent", "freshly", "frown", "furnace", "fuse", "futile", "gainer", "gallons", "gamble", "garden", "gathered", "gemstone", "generate", "genuine", "geology", "geometry", "germ", "gibberish", "giggle", "glimpse", "gnashing", "goddess", "goggle", "gopher", "grander", "granting", "greeting", "grilled", "grinning", "groove", "grooving", "guiding", "guitar", "gullible", "guru", "gushing", "habitat", "happens", "harmful", "hastily", "haughty", "healers", "health", "heart", +"heavier", "hectic", "helping", "herself", "hesitate", "hiding", "highway", "hinder", "history", "hitched", "hoarse", "holler", "homeless", "honest", "hopeful", "horror", "hospital", "humbled", "humming", "hunting", "hurried", "husband", "hydrate", "identify", "idle", "ignored", "illness", "illuminate", "imagine", "impact", "impair", "impart", "implant", "imply", "import", "impose", "improve", "incident", "indicate", "indulge", "inject", "injure", "inkling", "innocent", "inquire", "insist", "inspire", "instinct", "insult", "integral", "intense", "interact", "interest", "intern", "intimate", "invalid", "involve", "isolate", "jacket", "jaguar", "jawbone", "jeering", "jelly", "jewelry", "jogging", "journey", "jubilant", "judgment", "junior", "justice", "keeping", "kettle", "keyboard", "kidding", "kidnap", "kilogram", "kinder", "kitten", "knocked", "knocked", "knocking", "knotted", "knowing", "knuckle", "labored", "lacking", "ladder", "lashing", "lasting", "laughter", "layered", "learning", "leather", "legacy", "legend", "leopard", "liberty", "licking", "lifetime", "lighting", "lightly", "limber", "limited", "lining", "liquid", "listen", "lively", "livid", "loafers", "lobbied", "locking", "lodging", "longest", "looking", "looping", "loosing", "losses", "loving", "lucid", "lumber", "lunatic", "luxury", "machine", "magical", "magnet", "maintain", "majority", "malice", "malign", "manage", "maneuver", "manners", "mantra", "marched", "mariner", "marital", "masking", "massive", "master", "match", "matrix", "meaning", "meeting", "member", "merging", "message", "method", "midterm", "migrate", "milkman", "mineral", "mingle", "miracle", "mirror", "misery", "missing", "mobile", "moderate", "modest", "moments", "monster", "morally", "mortal", "motivate", "mourned", "movement", "muffin", "mullet", "multiply", "murder", "muscles", "musical", "mustard", "mutated", "myself", "mystery", "nailing", "napkin", "navigate", +"oaring", "oasises", "oathful", "obelisk", "obelize", "obesely", "objecto", "objuret", "oblance", "oblatex", "obligee", "oblique", "oblongs", "obtuser", "obverse", "occiput", "occlude", "occular", "occyxes", "octagon", "octaval", "octette", "octopod", "octuply", "odalisk", "oddment", "odograph", "odorous", "odyssey", "oecists", "oecumen", "offbeat", "offence", "offside", "ogreish", "oilbird", "oilhole", "oilskin", "oilskin", "oklahoma", "oldwife", "olefine", "oligist", "olivary", "olivine", "olivine", "olivine", "olycook", "omaosis", "ombilici", "omentum", "omental", "omniana", "omnibus", "oncosis", "oneness", "onerier", "oneness", "onetime", "ongoing", "onliness", "onstage", "ontogeny", "oogenic", "oolitic", "oologic", "oophore", "ooziest", "opacity", "openest", "operons", "ophitic", "opiated", "opinata", "opsonin", "optical", "optimum", "opulent", "oralist", "orality", "orarian", "orbiest", "orbitae", "orbless", "orchard", "orchids", "orcinol", "ordinal", "oregano", "organum", "orgasms", "oriente", "orifice", "origamy", "origans", "orleans", "ormolus", "ornater", "ornerie", "orology", "orphans", "orrisin", "osculum", "osmious", "osmotic", "osmouser", "ossicle", "osteoma", "osteoma", "ostiary", "ostiole", "ostmark", "ostosis", "ostrich", "otalgia", "otolith", "otology", "ouakari", "oublish", "oubliet", "ouchees", "oudeeks", "ouldest", "oulongs", "ouphish", "ouraris", "ourself", "outable", "outbake", "outbeam", "outbleat", "outboast", "outbond", "outburn", "outcast", "outcharm", "outcheat", "outdare", "outdoer", "outdoor", "outdraw", "outecho", "outenvy", "outface", "outflee", "outflung", "outform", "outgain", "outgnaw", "outgush", "outhowl", "outingly", "outjest", "outjump", "outlast", "outlawry", "outleap", "outlungs", "outmost", "outpass", "outpour", "outpray", "outrave", "outread", "outring", "outroar", "outroom", +"pacific", "packers", "packman", "padauk", "padroni", "paeonic", "paganly", "paginal", "pagurid", "pailful", "painter", "pajamas", "palaced", "paladin", "palatal", "palauan", "paleful", "palfrey", "palikar", "pallium", "palmate", "palmful", "palmier", "palmist", "palmyra", "palship", "palsied", "palsyed", "pampean", "pamphlet", "pampero", "panacea", "panama", "pander", "pandour", "pandrop", "paneity", "pangamy", "panhead", "pannier", "pansies", "pantheon", "papaya", "papillon", "papyrin", "paragon", "parapet", "parazoa", "parazoa", "pareira", "pareira", "pareira", "pareira", "parence", "pareu", "parfait", "parhely", "parison", "parity", "parkway", "parlous", "parnass", "parrhes", "parrots", "parroty", "partake", "partans", "parthen", "parting", "partner", "partook", "parture", "paruras", "paschal", "pashas", "pashmin", "passado", "passant", "passkey", "passman", "passout", "pastels", "pastime", "pastime", "pastime", "pastime", "pasture", "patchy", "patella", +"quacked", "quacker", "quadric", "quadrum", "quaich", "quailed", "quaker", "qualify", "quamash", "quantum", "quarrel", "quartan", "quartes", "quartet", "quartic", "quarto", "quasars", "quassin", "quatref", "quaver", "queachy", "queenly", "queered", "quellos", +"racket", "raddled", "radials", "radiate", "radices", "radicle", "raffled", "raffler", "raftered", "raglans", "railbus", "railway", "rainbow", "rainier", "raisiny", "rakings", "rakish", "rallied", "rambles", "ramjet", "ramming", "rammish", "rampage", "rampant", "rampart", "ramtils", "ranching", "rancors", "rancour", "rangers", "ranging", "rankers", "rankest", "rankled", "rankles", "ransack", "ranters", "ranting", "rapiers", "rapines", "rapists", "rapping", "raptors", "rapture", "rarebit", "rascals", "raspier", "rasping", "rattans", "rattens", "rattles", "rattons", "ravages", "raveled", "raveler", "ravened", "ravener", "ravined", "ravines", "ravioli", "rawhide", "rayless", "razored", "reached", "reacter", "readied", "readier", "readies", "readily", "realest", "realign", "realise", "realism", "realist", "realize", "rearmed", "rebeled", "rebored", "rebound", "rebuked", "rebuker", "rebuild", "rebuilt", "recalls", "recants", "recasts", "recedes", "receipt", "receive", "recency", "recent", "recess", "recheck", "recital", "recited", "reciter", "recline", "reclose", "recoils", "records", "recount", "recoups", "recover", "recruit", "rectify", "rectums", "recusal", "recused", "recuses", "redeems", "redeems", "redials", "redness", "redoing", "redoubt", "redound", "redraft", "redraws", "redress", "reduced", "reducer", "reduces", "reelect", "reentry", "reeving", "refaced", "refaces", "referee", "refills", "refined", "refiner", "refines", "reflets", "reflows", "refocus", "refolds", "reforge", "reform", "refract", "refrain", "refresh", "refried", "refries", "refuged", "refugee", "refuges", "refuels", "refund", "refusal", "refused", "refuses", "regains", "regaled", "regaler", "regales", "regents", "regiven", "regives", "regloss", "regnant", "regrade", "regrind", "regroup", "reheard", "rehears", "reheats", "reigns", "reining", "reissue", "reject", "rejoins", "rejoins", "rejudge", +"sabered", "sachets", "sacques", "saddens", "saddest", "saddled", "saddler", "saddles", "safaris", "safiest", "sagiest", "sailers", "sailors", "sainted", "sainted", "sakelis", "sakkara", "salable", "salamis", "salient", "salines", "salkets", "sallied", "sallies", "sallow", "saloons", "saltern", "salters", "salvage", "samisen", "samlets", "samovar", "sampled", "sampler", "samples", "sandals", "sandbag", "sanders", "sandier", "sanding", "sangers", "sangoma", "sanicle", "sanious", "sanitar", "sannops", "sannups", "santims", "santols", "santurs", "sapajou", "sapiens", "sapient", "sapling", "sappers", "sappier", "sapping", "saprobe", "sarapes", "sarcasm", "sarcoid", "sardana", "sardine", "sareece", "sarees", "sargass", "sarioca", "sarodah", "sarongs", "sarsars", "sashays", "sassaby", "sassier", "sassing", "satellite", "satinet", "satires", "satiric", "satoris", "satrapy", "saturae", "satyric", "saurels", "saurels", "saussur", "sautoir", "savable", "savaged", "savager", "savages", "savings", "saviors", "savored", "savorer", "savours", "sawbill", "sawbuck", "sawdust", "sawfish", "sawyers", "saxhorn", "sayable", "sayyids", "scalade", "scalage", "scalars", "scalers", "scaling", "scallop", "scalped", "scalpel", "scamper", "scandal", "scanned", "scanner", "scanted", "scanter", "scaping", "scapose", "scarers", "scaring", "scarily", "scaries", "scarlet", "scarped", "scathed", "scathes", "scatted", "scatter", "scepter", "sceptre", "schema", "schemas", "scherzi", "schlepp", "schmoos", "schmuck", "schnook", "schnork", "scholar", "school", "schooly", "schorls", "schrik", "sciatic", "sciatic", "sciatica", "sciatica", "sciaticas", "sciences", "scirrhi", "scissor", "sclaffs", "scleral", "sclimed", "sclimed", "scliming", "scliming", "sclimmed", "sclimmed", "scolded", "scolder", "scollop", "sconced", "sconces", "scooped", +"tabaret", "tabbing", "taberna", "tabetic", "tabloid", "tabooed", "tabored", "tabuing", "tacamah", "tacitly", "tackier", "tacking", "tackled", "tackler", "tackles", "tacnode", "tactful", "tactics", "tactile", "tadpole", "taffeta", "taffias", "taffies", "taggers", "tagging", "tahinis", "tahsils", "taiglum", "tailers", "tailfin", "tailors", "tainted", "takahes", "takers", "taking", "talaria", "talents", "talgang", "taliang", "tallage", "tallboy", "tallied", "tallier", "tallies", "tallith", "tallow", "talmuds", "taloned", "talooks", "talukas", "taluses", "tamable", "tamarau", "tamaric", "tamaris", "tambaks", "tambala", "tambour", "tamburs", "tameins", "tamises", "tammies", "tampala", "tampans", "tampers", "tamping", "tampion", "tandoor", "tangeli", "tangent", "tangier", "tanging", "tangled", "tangler", "tangles", "tangram", "taniwas", "tankage", "tankard", "tankers", "tankful", "tanking", "tannage", "tannate", "tanning", "tannins", "tanrecs", "tantara", "tantivy", "tantras", "tantrum", "tapaler", "tapetal", "tapetum", "tapises", "tappets", "tapping", "tapsals", "tapster", "tarboos", "tarbush", "tardier", "tardies", "tardily", "tardive", "tarefas", "targets", "tariffs", "tarmacs", "tarocco", "tarokas", "tarpans", "tarpons", "tarragon", "tarried", "tarrier", "tarries", "tarsals", "tarsier", "tarsius", "tartana", "tartars", "tartest", "tarting", "tartish", "tarweed", "tassels", "tasters", "tastier", "tasting", "tatamis", "tatouay", "tatters", "tattier", "tatties", "tattily", "tattler", "tattoos", "taught", "taupes", "taurine", "tautaug", "tautens", "tautest", "tauting", "taverns", "tawdier", "tawdries", "tawdrily", "tawsees", "taxable", "taxated", "taxates", "taxemic", "taxying", "teabowl", "teacart", +"ubiquit", "ulcered", "ulsters", "ultimas", "ultimos", "ultraism", "ultrama", "umbeled", "umbeles", "umbering", "umbonal", "umbones", "umbrage", "umbrial", "umbrous", "umiacs", "umiacs", "unaware", "unbased", "unbated", "unbends", "unbinding", "unbolts", "unboxes", "unbroken", "uncaged", "uncakes", "uncanny", "uncease", "uncere", "uncivil", "unclasp", "uncloak", "unclosed", "unclogs", "uncloud", "uncocks", "uncoils", "uncorks", "uncouple", "uncrate", "uncross", "unction", "unctuous", "uncuffed", "uncurbs", "uncutis", "undated", "undecked", "underdo", "undergo", "undines", "undocks", "undoing", "undress", "uneared", "unearth", "unfasten", "ungents", "unglued", "unglues", "unhands", "unhangs", "unharmed", "unheard", "unheeds", "unhinge", "unhitch", "unisons", "unitage", "unitard", "uniting", "unities", "unjoint", "unlearn", "unleash", "unloose", "unloved", "unmaker", "unmanly", "unmask", "unmated", "unmingle", "unmoors", "unmoral", "unmoved", "unnamed", "unopened", "unowned", "unpaved", "unplait", "unquote", "unraked", "unrated", "unreeve", "unrigid", "unroofs", "unroots", "unround", "unseals", "unseams", "unseat", "unseats", "unsells", "unsewn", "unshaks", "unshorn", "unslung", "unsnaps", "unsolder", "unspent", "unstick", "unstring", "unsweet", "untacks", "untaken", "untamed", "untaxed", "unteams", "unthaws", "unthread", "untread", "untried", "unvents", "unweave", "unwinds", "unwoven", "unwrap", "unwraps", "upboils", "upbraid", "upchuck", "upclimb", "upcoils", "upcurls", "updarts", "updater", "updates", "updives", "upflows", "upgirds", "upgirds", "upheaps", "upheaval", "upheld", "upholder", "uphills", "upholds", "uphroes", "upkeep", "uplands", "upleaps", "uplifts", "upload", "uploads", "upraised", "upraiser", "upraises", "upreach", "uprights", "uprise", "uprisen", "upriser", "uprises", +"vacuole", "vacuome", "vacuous", "vacuums", "vadose", "vaguest", "vaivode", "valance", "valence", "valency", "valerin", "valeric", "valeted", "valgoid", "valines", "valises", "valkyrs", "valonia", "valours", "valse", "valuers", "valuing", "valvate", "vamosed", "vamoses", "vampers", "vamping", "vampish", "vanadic", "vanadyl", "vandal", "vandals", "vandyke", "vanessa", "vanillas", "vanille", "vanillo", "vanitas", "vanning", "vanpool", "vantages", "vapidly", "vapored", "vapours", "vapulae", "varactor", "variant", "variate", "varices", "varioli", "variola", "various", "varlets", "varnish", "varsity", "varying", "vascula", "vasculum", "vastier", "vastity", "vatfuls", "vaudois", "vaulted", "vaulter", "vaulting", "vaunted", "vaulter", "vealier", "vectors", "vedalias", "vedette", "vegan", "vegans", "vegetal", "vegete", "vegetes", "vehicle", "veiling", "veinier", "veining", "veinlet", "veinule", "velaric", "velaria", "veliger", "vellums", "velours", "velured", "velures", "velvet", "velvets", "venally", "vendees", "venders", "vending", "vendors", "veneers", "venial", "venines", "venires", "venomed", "venomer", "venoming", "ventage", "ventail", "venters", "venting", "ventral", "venture", "ventures", "venue", "venues", "verdant", "verdict", "vergers", "verging", "verglas", "veridic", "verisms", "verists", "verites", "vermeil", "vermian", "vermuth", "vernier", "vernity", "versals", "versant", "versers", "versify", "versine", "versing", "version", "verstes", "vertigo", "vervets", "vesical", "vesicle", "vesper", "vespers", "vespire", "vestal", "vestals", "vestees", "vesting", "vestral", "vestry", "vetoers", "vexedly", "vexilla", "vexings", "viaduct", "viatica", "vibrant", "vibrate", "vicarly", "viceroy", "vicious", "victims", "victors", "victual", "videlicet", "videx", "videxes", "vieques", "viewers", +"wabbers", "wabbles", "wabblers", "waddled", "waddler", "waddles", "wadiats", "wadmaal", "wadmals", "wadmels", "wadmoll", "wadmols", "wadsets", "waeness", "waftage", "wafture", "waggers", "wagging", "wagling", "wahines", "wailing", "wainage", "wainful", "waining", "wainscot", "waisted", "waister", "waiting", "waiving", "wakened", "wakener", "wakikis", "wallets", "wallies", "wallops", "wallows", "walnuts", "wamble", "wambled", "wambles", "wambly", "wamefou", "wameful", "wampums", "wandero", "wandle", "wangled", "wangler", "wangles", "wanigan", "wanking", "wannest", "wannish", "wanting", "wapitis", "wapiti", "warble", "warbled", "warbler", "warbles", "wardens", "warders", "warding", "warehou", "wareing", "warfare", "warhead", "warison", "warless", "warlike", "warling", "warlock", "warlord", "warmed", "warmers", "warmest", "warming", "warmish", "warmth", "warmths", "warners", "warning", "warpage", "warper", "warping", "warrant", "warrant", "warrant", "warranted", "warranted", "warranted", "warrens", "warring", "warrior", "warstle", "warthog", "wartier", "wartime", "wasabit", "wasatch", "washday", "washers", "washier", "washing", "washrag", "washtub", "wasps", "wasting", "wastrel", "wastril", "watchdog", "watcher", "watchfu", "watching", "waterlo", "watery", "wattage", "watters", "wattest", "wattles", "wauchle", "waucht", "waught", "wauling", "wauping", "wauring", "wausau", "wavelet", "waveoff", "wavered", "waverer", "wavering", "waxbill", "waxiest", "waxlike", "waxwing", "waxwork", "waxworm", "waybill", "wayfare", "waygate", "waylaid", "waylayer", "wayless", "wayside", "waywode", "weakens", "weakest", "weakish", "wealful", "wealthy", "weaners", "weanling", "weapone", "wearers", +"xanthic", "xanthin", "xanthoma", "xanthone", "xanthein", "xanthene", "xanthenes", "xanthine", "xanthines", "xanthins", "xanthoma", "xanthomas", "xanthones", "xebecs", "xenials", "xenogamy", "xenogeny", "xenolith", "xenomai", "xenon", "xenons", "xenopus", "xenure", "xenures", "xerarch", "xeroses", "xerosis", "xiphias", "xiphiid", "xiphiids", "xiphoids", "xylenes", "xylidin", "xylidins", "xylitol", "xylitols", "xylocarp", "xyloid", "xyloids", "xyloma", "xylomata", "xylose", "xyloses", "xylyl", "xylyls", "xystoi", "xystos", "xysts", "yabbers", "yacking", "yaffing", "yagers", "yagging", "yakitori", "yakking", "yakimes", "yakking", "yaksha", "yakshas", "yakutat", "yamalka", "yammer", "yammered", "yammerer", "yammering", "yammers", "yanking", "yanquis", "yantra", "yantras", "yapocks", "yapok", "yapons", "yapping", "yarayan", "yardage", "yardang", "yarding", "yardman", "yardmen", "yardwand", "yarely", "yarest", "yarners", "yarning", "yarrow", "yarrows", "yatagan", "yatagan", "yataghan", "yataghans", "yatagans", "yatter", "yattered", "yattering", "yatters", "yauds", "yauping", "yaupon", "yaupons", "yautia", "yautias", "yawings", "yawled", "yawling", "yawners", "yawning", "yawpers", "yawping", "yawpings", "yeaning", "yearnful", "yearning", "yeasting", "yeelins", "yelling", "yellowed", "yellowest", "yellowing", "yellowish", "yellowy", "yelping", "yenned", "yenning", "yeoman", "yeomanly", "yeomanry", "yeomen", "yessing", "yestreen", "yetlins", "yeuking", "yielden", "yielding", "yielding", "yirring", "yobbish", "yocking", "yodeled", "yodeler", "yodeling", +"03orb", "06xipu", "06croacre" +]; + +function words(options) { + + function word() { + if (options && options.maxLength > 1) { + return generateWordWithMaxLength(); + } else { + return generateRandomWord(); + } + } + + function generateWordWithMaxLength() { + var rightSize = false; + var wordUsed; + while (!rightSize) { + wordUsed = generateRandomWord(); + if(wordUsed.length <= options.maxLength) { + rightSize = true; + } + + } + return wordUsed; + } + + function generateRandomWord() { + return wordList[randInt(wordList.length)]; + } + + function randInt(lessThan) { + return Math.floor(Math.random() * lessThan); + } + + // No arguments = generate one word + if (typeof(options) === 'undefined') { + return word(); + } + + // Just a number = return that many words + if (typeof(options) === 'number') { + options = { exactly: options }; + } + + // options supported: exactly, min, max, join + if (options.exactly) { + options.min = options.exactly; + options.max = options.exactly; + } + + // not a number = one word par string + if (typeof(options.wordsPerString) !== 'number') { + options.wordsPerString = 1; + } + + //not a function = returns the raw word + if (typeof(options.formatter) !== 'function') { + options.formatter = (word) => word; + } + + //not a string = separator is a space + if (typeof(options.separator) !== 'string') { + options.separator = ' '; + } + + var total = options.min + randInt(options.max + 1 - options.min); + var results = []; + var token = ''; + var relativeIndex = 0; + + for (var i = 0; (i < total * options.wordsPerString); i++) { + if (relativeIndex === options.wordsPerString - 1) { + token += options.formatter(word(), relativeIndex); + } + else { + token += options.formatter(word(), relativeIndex) + options.separator; + } + relativeIndex++; + if ((i + 1) % options.wordsPerString === 0) { + results.push(token); + token = ''; + relativeIndex = 0; + } + + } + if (typeof options.join === 'string') { + results = results.join(options.join); + } + + return results; +} + +module.exports = words; +// Export the word list as it is often useful +words.wordList = wordList; \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 6be449c..c5196aa 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,392 +8,15 @@ "name": "fascinus", "version": "1.0.0", "dependencies": { - "better-random-words": "^1.0.0", "fs": "^0.0.1-security", "irc": "^0.5.2" } }, - "node_modules/ansi-colors": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", - "engines": { - "node": ">=6" - } - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - }, - "node_modules/better-random-words": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/better-random-words/-/better-random-words-1.0.0.tgz", - "integrity": "sha512-9wAR6mzO+z9Mp4Xid0MkPHOUK5ehQgR5RBWfaKZ98YtVVbrG7eSsADRRWLxo+klhig3oM+v87y0wVBKq3xb/5Q==", - "dependencies": { - "mocha": "^10.2.0" - } - }, - "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "engines": { - "node": ">=8" - } - }, - "node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/browser-stdout": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", - "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==" - }, - "node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/chalk/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" - }, - "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/debug/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "node_modules/decamelize": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", - "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/diff": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz", - "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==", - "engines": { - "node": ">=0.3.1" - } - }, - "node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/flat": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", - "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", - "bin": { - "flat": "cli.js" - } - }, "node_modules/fs": { "version": "0.0.1-security", "resolved": "https://registry.npmjs.org/fs/-/fs-0.0.1-security.tgz", "integrity": "sha512-3XY9e1pP0CVEUCdj5BmfIZxRBTSDycnbqhIOGec9QYtmVH2fbLpj86CFWkrNOkt/Fvty4KZG5lTglL9j/gJ87w==" }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" - }, - "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "node_modules/glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/glob/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/glob/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "engines": { - "node": ">=8" - } - }, - "node_modules/he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", - "bin": { - "he": "bin/he" - } - }, "node_modules/iconv": { "version": "2.2.3", "resolved": "https://registry.npmjs.org/iconv/-/iconv-2.2.3.tgz", @@ -407,20 +30,6 @@ "node": ">=0.8.0" } }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, "node_modules/irc": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/irc/-/irc-0.5.2.tgz", @@ -444,183 +53,12 @@ "node": ">=6" } }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "engines": { - "node": ">=8" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-plain-obj": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", - "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", - "engines": { - "node": ">=8" - } - }, - "node_modules/is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dependencies": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/minimatch": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz", - "integrity": "sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/mocha": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.2.0.tgz", - "integrity": "sha512-IDY7fl/BecMwFHzoqF2sg/SHHANeBoMMXFlS9r0OXKDssYE1M5O43wUY/9BVPeIvfH2zmEbBfseqN9gBQZzXkg==", - "dependencies": { - "ansi-colors": "4.1.1", - "browser-stdout": "1.3.1", - "chokidar": "3.5.3", - "debug": "4.3.4", - "diff": "5.0.0", - "escape-string-regexp": "4.0.0", - "find-up": "5.0.0", - "glob": "7.2.0", - "he": "1.2.0", - "js-yaml": "4.1.0", - "log-symbols": "4.1.0", - "minimatch": "5.0.1", - "ms": "2.1.3", - "nanoid": "3.3.3", - "serialize-javascript": "6.0.0", - "strip-json-comments": "3.1.1", - "supports-color": "8.1.1", - "workerpool": "6.2.1", - "yargs": "16.2.0", - "yargs-parser": "20.2.4", - "yargs-unparser": "2.0.0" - }, - "bin": { - "_mocha": "bin/_mocha", - "mocha": "bin/mocha.js" - }, - "engines": { - "node": ">= 14.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mochajs" - } - }, - "node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - }, "node_modules/nan": { "version": "2.17.0", "resolved": "https://registry.npmjs.org/nan/-/nan-2.17.0.tgz", "integrity": "sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ==", "optional": true }, - "node_modules/nanoid": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz", - "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==", - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, "node_modules/node-icu-charset-detector": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/node-icu-charset-detector/-/node-icu-charset-detector-0.2.0.tgz", @@ -633,549 +71,14 @@ "engines": { "node": ">=0.6" } - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "engines": { - "node": ">=8" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dependencies": { - "safe-buffer": "^5.1.0" - } - }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/serialize-javascript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", - "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", - "dependencies": { - "randombytes": "^2.1.0" - } - }, - "node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/workerpool": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.2.1.tgz", - "integrity": "sha512-ILEIE97kDZvF9Wb9f6h5aXK4swSlKGUcOEGiIYb2OOu/IrDU9iwj0fD//SsA6E5ibwJxpEvhullJY4Sl4GcpAw==" - }, - "node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" - }, - "node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "engines": { - "node": ">=10" - } - }, - "node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/yargs-parser": { - "version": "20.2.4", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz", - "integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==", - "engines": { - "node": ">=10" - } - }, - "node_modules/yargs-unparser": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz", - "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==", - "dependencies": { - "camelcase": "^6.0.0", - "decamelize": "^4.0.0", - "flat": "^5.0.2", - "is-plain-obj": "^2.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } } }, "dependencies": { - "ansi-colors": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==" - }, - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "requires": { - "color-convert": "^2.0.1" - } - }, - "anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - }, - "better-random-words": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/better-random-words/-/better-random-words-1.0.0.tgz", - "integrity": "sha512-9wAR6mzO+z9Mp4Xid0MkPHOUK5ehQgR5RBWfaKZ98YtVVbrG7eSsADRRWLxo+klhig3oM+v87y0wVBKq3xb/5Q==", - "requires": { - "mocha": "^10.2.0" - } - }, - "binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==" - }, - "brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "requires": { - "balanced-match": "^1.0.0" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "requires": { - "fill-range": "^7.0.1" - } - }, - "browser-stdout": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", - "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==" - }, - "camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==" - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "dependencies": { - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "requires": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "fsevents": "~2.3.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - } - }, - "cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" - }, - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "requires": { - "ms": "2.1.2" - }, - "dependencies": { - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - } - } - }, - "decamelize": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", - "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==" - }, - "diff": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz", - "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==" - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" - }, - "escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==" - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "requires": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - } - }, - "flat": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", - "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==" - }, "fs": { "version": "0.0.1-security", "resolved": "https://registry.npmjs.org/fs/-/fs-0.0.1-security.tgz", "integrity": "sha512-3XY9e1pP0CVEUCdj5BmfIZxRBTSDycnbqhIOGec9QYtmVH2fbLpj86CFWkrNOkt/Fvty4KZG5lTglL9j/gJ87w==" }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" - }, - "fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "optional": true - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" - }, - "glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "requires": { - "brace-expansion": "^1.1.7" - } - } - } - }, - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "requires": { - "is-glob": "^4.0.1" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" - }, - "he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==" - }, "iconv": { "version": "2.2.3", "resolved": "https://registry.npmjs.org/iconv/-/iconv-2.2.3.tgz", @@ -1185,20 +88,6 @@ "nan": "^2.3.5" } }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, "irc": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/irc/-/irc-0.5.2.tgz", @@ -1214,124 +103,12 @@ "resolved": "https://registry.npmjs.org/irc-colors/-/irc-colors-1.5.0.tgz", "integrity": "sha512-HtszKchBQTcqw1DC09uD7i7vvMayHGM1OCo6AHt5pkgZEyo99ClhHTMJdf+Ezc9ovuNNxcH89QfyclGthjZJOw==" }, - "is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==" - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - }, - "is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" - }, - "is-plain-obj": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", - "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==" - }, - "is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==" - }, - "js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "requires": { - "argparse": "^2.0.1" - } - }, - "locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "requires": { - "p-locate": "^5.0.0" - } - }, - "log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "requires": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - } - }, - "minimatch": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz", - "integrity": "sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==", - "requires": { - "brace-expansion": "^2.0.1" - } - }, - "mocha": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.2.0.tgz", - "integrity": "sha512-IDY7fl/BecMwFHzoqF2sg/SHHANeBoMMXFlS9r0OXKDssYE1M5O43wUY/9BVPeIvfH2zmEbBfseqN9gBQZzXkg==", - "requires": { - "ansi-colors": "4.1.1", - "browser-stdout": "1.3.1", - "chokidar": "3.5.3", - "debug": "4.3.4", - "diff": "5.0.0", - "escape-string-regexp": "4.0.0", - "find-up": "5.0.0", - "glob": "7.2.0", - "he": "1.2.0", - "js-yaml": "4.1.0", - "log-symbols": "4.1.0", - "minimatch": "5.0.1", - "ms": "2.1.3", - "nanoid": "3.3.3", - "serialize-javascript": "6.0.0", - "strip-json-comments": "3.1.1", - "supports-color": "8.1.1", - "workerpool": "6.2.1", - "yargs": "16.2.0", - "yargs-parser": "20.2.4", - "yargs-unparser": "2.0.0" - } - }, - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - }, "nan": { "version": "2.17.0", "resolved": "https://registry.npmjs.org/nan/-/nan-2.17.0.tgz", "integrity": "sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ==", "optional": true }, - "nanoid": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz", - "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==" - }, "node-icu-charset-detector": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/node-icu-charset-detector/-/node-icu-charset-detector-0.2.0.tgz", @@ -1340,183 +117,6 @@ "requires": { "nan": "^2.3.3" } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "requires": { - "wrappy": "1" - } - }, - "p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "requires": { - "yocto-queue": "^0.1.0" - } - }, - "p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "requires": { - "p-limit": "^3.0.2" - } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==" - }, - "picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==" - }, - "randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "requires": { - "safe-buffer": "^5.1.0" - } - }, - "readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "requires": { - "picomatch": "^2.2.1" - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==" - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" - }, - "serialize-javascript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", - "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", - "requires": { - "randombytes": "^2.1.0" - } - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } - }, - "strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==" - }, - "supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "requires": { - "has-flag": "^4.0.0" - } - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "requires": { - "is-number": "^7.0.0" - } - }, - "workerpool": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.2.1.tgz", - "integrity": "sha512-ILEIE97kDZvF9Wb9f6h5aXK4swSlKGUcOEGiIYb2OOu/IrDU9iwj0fD//SsA6E5ibwJxpEvhullJY4Sl4GcpAw==" - }, - "wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" - }, - "y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==" - }, - "yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - } - }, - "yargs-parser": { - "version": "20.2.4", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz", - "integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==" - }, - "yargs-unparser": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz", - "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==", - "requires": { - "camelcase": "^6.0.0", - "decamelize": "^4.0.0", - "flat": "^5.0.2", - "is-plain-obj": "^2.1.0" - } - }, - "yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==" } } } diff --git a/package.json b/package.json index 6f8591e..1eca1b2 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,6 @@ "description": "", "main": "index.js", "dependencies": { - "better-random-words": "^1.0.0", "fs": "^0.0.1-security", "irc": "^0.5.2" },