From 603aa7c5b238a6d6c52fb59f6b636f3d90de5da1 Mon Sep 17 00:00:00 2001 From: Marco van Dijk Date: Sun, 9 Oct 2022 22:37:03 +0200 Subject: [PATCH] Added config file and cleanup --- .gitignore | 3 +- config/default.json | 48 + convert.py | 3 +- index.js | 21 +- modules/helpers.js | 97 +- nft-media/rocketeer.js | 58 +- nft-media/svg-generator.js | 41 +- package-lock.json | 1709 ------------------------------------ package.json | 8 +- 9 files changed, 123 insertions(+), 1865 deletions(-) create mode 100644 config/default.json delete mode 100644 package-lock.json diff --git a/.gitignore b/.gitignore index 5ebb39c..88e6068 100644 --- a/.gitignore +++ b/.gitignore @@ -3,4 +3,5 @@ build/ *.log notes.txt output -converted \ No newline at end of file +converted +package-lock.json \ No newline at end of file diff --git a/config/default.json b/config/default.json new file mode 100644 index 0000000..2281227 --- /dev/null +++ b/config/default.json @@ -0,0 +1,48 @@ +{ + "control": { + "iterations": 500, + "threads": 1, + "minId": 1, + "maxId": 999998, + "path": "./output/" + }, + "generate": { + "helmet": { + "classic": 0.2, + "racer": 0.1, + "punk": 0.1, + "knight": 0.2, + "geek": 0.2 + }, + "patch": { + "livepeer": 0.2, + "nimbus": 0.1, + "teku": 0.1, + "lighthouse": 0.1, + "prysm": 0.2, + "rocketpool": 0.3 + }, + "backpack": { + "yes": 0.9, + "no": 0.1 + }, + "panel": { + "yes": 0.9, + "no": 0.1 + }, + "background": { + "planets": 0.2, + "system": 0.2, + "playful": 0.1, + "moon": 0.05, + "galaxy": 0.2, + "chip": 0.05 + }, + "backgroundComplexity": { + "complex": 0.1, + "med": 0.15, + "low": 0.25, + "basic": 0.50 + } + } +} \ No newline at end of file diff --git a/convert.py b/convert.py index d55faed..c1337a0 100644 --- a/convert.py +++ b/convert.py @@ -1,8 +1,9 @@ import os import cairosvg from pathlib import Path - +# Create path Path("./converted/").mkdir(parents=True, exist_ok=True) +# Convert all .svg's in the ./output folder to ./converted/ as .png for file in os.listdir('./output'): name = file.split('.svg')[0] print('Converting ' + './output/' + name + '.svg' + ' -> ./converted/' + name + '.png') diff --git a/index.js b/index.js index 5ab07b2..be5af08 100644 --- a/index.js +++ b/index.js @@ -1,11 +1,26 @@ +const config = require('config'); +const iterations = config.get('control.iterations'); +const threads = config.get('control.threads'); +const minId = config.get('control.minId'); +const maxId = config.get('control.maxId'); +const basePath = config.get('control.path'); const { generateRocketeer } = require("./nft-media/rocketeer"); (async () => { try { - while (true) { - const id = Math.floor(Math.random() * (999998) + 1) + // Sanity check on config variables + let todo = iterations; + if (isNaN(todo)){ + console.log("Cannot create `" + todo + "' amount Captain Chads"); + return; + }else if (todo < 1){todo = 1;} + if (minId >= maxId){return;} + // Generate new Captain Chad's + while (todo) { + const id = Math.floor(Math.random() * (maxId) + minId) console.log("Generating Cpn Chad " + id); - console.log(await generateRocketeer(id)); + console.log(await generateRocketeer(id, basePath)); + todo--; } process.exit(0); } catch (err) { diff --git a/modules/helpers.js b/modules/helpers.js index e1b0889..a4bd3a9 100644 --- a/modules/helpers.js +++ b/modules/helpers.js @@ -1,16 +1,5 @@ -// /////////////////////////////// -// Helper functions -// /////////////////////////////// -exports.dev = !!process.env.development; -const log = (...messages) => { - if (process.env.development) console.log(...messages); -}; -exports.log = log; - -// Wait in async -const wait = (timeInMs) => - new Promise((resolve) => setTimeout(resolve), timeInMs); -exports.wait = wait; +const config = require("config"); +const parameters = config.get("generate"); // Pick random item from an array const pickRandomArrayEntry = (array) => @@ -50,91 +39,61 @@ exports.pickRandomAttributes = (attributes) => { })); }; -const nameColor = require("color-namer"); -const Color = require("color"); -exports.getColorName = (rgb) => { - try { - return nameColor(rgb).basic[0].name; - } catch (e) { - return rgb; - } -}; -exports.getRgbArrayFromColorName = (name) => { - const { hex } = nameColor(name).basic[0]; - const color = Color(hex); - return color.rgb().array(); -}; - -// /////////////////////////////// -// Attribute sources -// /////////////////////////////// +// Define all Captain Chad attributes exports.globalAttributes = [ { trait_type: "helmet", values: [ - { value: "classic", probability: 0.2 }, - { value: "racer", probability: 0.1 }, - { value: "punk", probability: 0.1 }, - { value: "knight", probability: 0.2 }, - { value: "geek", probability: 0.2 }, + { value: "classic", probability: parameters.helmet.classic }, + { value: "racer", probability: parameters.helmet.racer }, + { value: "punk", probability: parameters.helmet.punk }, + { value: "knight", probability: parameters.helmet.knight }, + { value: "geek", probability: parameters.helmet.geek }, ], }, { trait_type: "patch", values: [ - { value: "livepeer", probability: 0.2 }, - { value: "nimbus", probability: 0.1 }, - { value: "teku", probability: 0.1 }, - { value: "lighthouse", probability: 0.1 }, - { value: "prysm", probability: 0.2 }, - { value: "rocketpool", probability: 0.3 }, + { value: "livepeer", probability: parameters.patch.livepeer }, + { value: "nimbus", probability: parameters.patch.livepeer }, + { value: "teku", probability: parameters.patch.livepeer }, + { value: "lighthouse", probability: parameters.patch.livepeer }, + { value: "prysm", probability: parameters.patch.livepeer }, + { value: "rocketpool", probability: parameters.patch.livepeer }, ], }, { trait_type: "backpack", values: [ - { value: "yes", probability: 0.9 }, - { value: "no", probability: 0.1 }, + { value: "yes", probability: parameters.backpack.yes }, + { value: "no", probability: parameters.backpack.no }, ], }, { trait_type: "panel", values: [ - { value: "yes", probability: 0.9 }, - { value: "no", probability: 0.1 }, + { value: "yes", probability: parameters.panel.yes }, + { value: "no", probability: parameters.panel.no }, ], }, { trait_type: "background", values: [ - { value: "planets", probability: 0.2 }, - { value: "system", probability: 0.2 }, - { value: "playful", probability: 0.1 }, - { value: "moon", probability: 0.05 }, - { value: "galaxy", probability: 0.2 }, - { value: "chip", probability: 0.05 }, + { value: "planets", probability: parameters.background.planets }, + { value: "system", probability: parameters.background.system }, + { value: "playful", probability: parameters.background.playful }, + { value: "moon", probability: parameters.background.moon }, + { value: "galaxy", probability: parameters.background.galaxy }, + { value: "chip", probability: parameters.background.chip }, ], }, { trait_type: "background complexity", values: [ - { value: 1, probability: 0.05 }, - { value: 2, probability: 0.1 }, - { value: 3, probability: 0.1 }, - { value: 4, probability: 0.75 }, + { value: 1, probability: parameters.backgroundComplexity.complex }, + { value: 2, probability: parameters.backgroundComplexity.med }, + { value: 3, probability: parameters.backgroundComplexity.low }, + { value: 4, probability: parameters.backgroundComplexity.basic }, ], }, ]; -exports.heavenlyBodies = [ - "Mercury", - "Venus", - "Earth", - "Mars", - "Jupiter", - "Saturn", - "Uranus", - "Neptune", - "Pluto", - "the Moon", - "the Sun", -]; diff --git a/nft-media/rocketeer.js b/nft-media/rocketeer.js index 005c111..57e9fbc 100644 --- a/nft-media/rocketeer.js +++ b/nft-media/rocketeer.js @@ -1,44 +1,19 @@ -const name = require("random-name"); const { - pickRandomArrayEntry, pickRandomAttributes, randomNumberBetween, - globalAttributes, - heavenlyBodies, - getColorName, + globalAttributes } = require("../modules/helpers"); const svgFromAttributes = require("./svg-generator"); -// /////////////////////////////// -// Rocketeer generator -// /////////////////////////////// -async function generateRocketeer(id) { - // The base object of a new Rocketeer +// Generates a random Chad names as basePath/id.svg +async function generateRocketeer(id, basePath) { const rocketeer = { - name: `${name.first()} ${name.middle()} ${name.last()} of ${ - id % 42 == 0 ? "the Towel" : pickRandomArrayEntry(heavenlyBodies) - }`, - description: "", image: ``, attributes: [], }; - - // Generate randomized attributes + // Pick random attributes based on configured probabilities rocketeer.attributes = pickRandomAttributes(globalAttributes); - - // Set birthday - rocketeer.attributes.push({ - display_type: "date", - trait_type: "birthday", - value: Math.floor(Date.now() / 1000), - }); - - // Create description - rocketeer.description = `${rocketeer.name} is a proud member of the ${ - rocketeer.attributes.find(({ trait_type }) => trait_type == "patch").value - } guild.`; - - // Generate color attributes + // Randomize colours rocketeer.attributes.push({ trait_type: "outfit color", value: `rgb( ${randomNumberBetween(0, 255)}, ${randomNumberBetween( @@ -67,27 +42,10 @@ async function generateRocketeer(id) { 255 )}, ${randomNumberBetween(0, 255)} )`, }); - - // Generate, compile and upload image - const { NODE_ENV: mode } = process.env; - let path = "./output/" + id; -// if (mode == "production") { -// path = "/var/www/avatars/" + id; -// } else { -// path = "./output/" + id; -// } + // Generate SVG + let path = basePath + id; rocketeer.image = await svgFromAttributes(rocketeer.attributes, path); - - // Namify the attributes - rocketeer.attributes = rocketeer.attributes.map((attribute) => { - if (!attribute.trait_type.includes("color")) return attribute; - return { - ...attribute, - value: getColorName(attribute.value), - }; - }); - - return rocketeer.name + ": `" + rocketeer.description + "' @ " + rocketeer.image; + return "@" + rocketeer.image; } module.exports = { diff --git a/nft-media/svg-generator.js b/nft-media/svg-generator.js index 2871caf..e138965 100644 --- a/nft-media/svg-generator.js +++ b/nft-media/svg-generator.js @@ -9,9 +9,7 @@ module.exports = async function svgFromAttributes(attributes = [], path = "") { if (!attributes.length) throw new Error("svgFromAttributes missing attributes"); - console.log("Checking attributes"); - - // Get properties + console.log("Getting attributes..."); const { value: primary_color } = attributes.find( ({ trait_type }) => trait_type == "outfit color" ); @@ -43,20 +41,15 @@ module.exports = async function svgFromAttributes(attributes = [], path = "") { ({ trait_type }) => trait_type == "background complexity" ); - console.log("Reading master file"); - + console.log("Reading master file..."); // Generate DOM to work with const svgString = await fs.readFile(masterPath, { encoding: "utf8" }); const { window: { document }, } = new JSDOM(svgString); - // /////////////////////////////// - // Attribute selection - // /////////////////////////////// console.log("Removing unused attributes from master"); - - // Remove obsolete patches + // Remove unused patches const obsoletePatches = [ "livepeer", "nimbus", @@ -71,7 +64,7 @@ module.exports = async function svgFromAttributes(attributes = [], path = "") { else console.log(`Could not find #${obsoletePatches[i]}`); } - // Remove obsolete hemets + // Remove unused helmets const obsoleteHelmets = ["classic", "racer", "punk", "knight", "geek"].filter( (p) => p !== helmet ); @@ -88,21 +81,21 @@ module.exports = async function svgFromAttributes(attributes = [], path = "") { } } - // Remove panel if need be + // Remove unused panels if (panel === "no") { const element = document.querySelector(`#panel`); if (element) element.remove(); else console.log(`Could not find #panel`); } - // Remove backpack if need be + // Remove unused backpacks if (backpack === "no") { const element = document.querySelector(`#backpack`); if (element) element.remove(); else console.log("Could not find #backpack"); } - // Remove obsolete backgrounds + // Remove unused backgrounds const obsoleteBackgrounds = [ "planets", "system", @@ -117,11 +110,7 @@ module.exports = async function svgFromAttributes(attributes = [], path = "") { else console.log(`Could not find #${obsoleteBackgrounds[i]}`); } - // /////////////////////////////// - // Background customisation - // /////////////////////////////// - - // In playful, keeping things is basic, removing them is cool + // With a playful background: more rarity->less complexity if (background === "playful") { const toRemove = background_complexity; for (let i = 1; i <= toRemove; i++) { @@ -130,8 +119,7 @@ module.exports = async function svgFromAttributes(attributes = [], path = "") { else console.log(`Could not find #playful-element-${5 - i}`); } } else { - // In others, keeping is cool, and removing is less cool - // so higher rarity means less looping + // With a playful background: more rarity->more complexity const toRemove = 4 - background_complexity; for (let i = 1; i <= toRemove; i++) { const element = document.querySelector(`#${background}-element-${5 - i}`); @@ -140,9 +128,7 @@ module.exports = async function svgFromAttributes(attributes = [], path = "") { } } - // /////////////////////////////// - // Color substitutions - // /////////////////////////////// + // Substitute master colours for generated ones console.log("Substituting colours from master"); const defaultPrimary = /rgb\( ?252 ?, ?186 ?, ?157 ?\)/gi; const defaultVisor = /rgb\( ?71 ?, ?22 ?, ?127 ?\)/gi; @@ -159,18 +145,19 @@ module.exports = async function svgFromAttributes(attributes = [], path = "") { replace(defaultVisor, visor_color); replace(defaultBackpack, backpack_color); - console.log("Baking SVG now..."); + console.log("Generating SVG..."); const bakedSvg = [ ``, ``, document.querySelector("svg").outerHTML, ].join(""); + // Write SVG to file const dir = path.split('/').slice(0, -1).join('/'); await fs.mkdir(dir, { recursive: true }); console.log("Writing to `" + path + ".svg`..."); await fs.writeFile(`${path}.svg`, bakedSvg); - // Return public url - return "Paths: '" + `${path}.svg` + "'"; + // Return output location + return `${path}.svg`; }; diff --git a/package-lock.json b/package-lock.json deleted file mode 100644 index 1e621c9..0000000 --- a/package-lock.json +++ /dev/null @@ -1,1709 +0,0 @@ -{ - "name": "RandomChad", - "version": "0.0.1", - "lockfileVersion": 2, - "requires": true, - "packages": { - "": { - "name": "RandomChad", - "version": "0.0.1", - "dependencies": { - "color": "^4.2.3", - "color-namer": "^1.4.0", - "jsdom": "^18.1.1", - "random-name": "^0.1.2" - }, - "devDependencies": { - "nodemon": "^2.0.20" - } - }, - "node_modules/@tootallnate/once": { - "version": "2.0.0", - "license": "MIT", - "engines": { - "node": ">= 10" - } - }, - "node_modules/abab": { - "version": "2.0.6", - "license": "BSD-3-Clause" - }, - "node_modules/abbrev": { - "version": "1.1.1", - "dev": true, - "license": "ISC" - }, - "node_modules/acorn": { - "version": "8.8.0", - "license": "MIT", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-globals": { - "version": "6.0.0", - "license": "MIT", - "dependencies": { - "acorn": "^7.1.1", - "acorn-walk": "^7.1.1" - } - }, - "node_modules/acorn-globals/node_modules/acorn": { - "version": "7.4.1", - "license": "MIT", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-walk": { - "version": "7.2.0", - "license": "MIT", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/agent-base": { - "version": "6.0.2", - "license": "MIT", - "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/agent-base/node_modules/debug": { - "version": "4.3.4", - "license": "MIT", - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/agent-base/node_modules/ms": { - "version": "2.1.2", - "license": "MIT" - }, - "node_modules/anymatch": { - "version": "3.1.2", - "dev": true, - "license": "ISC", - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/asynckit": { - "version": "0.4.0", - "license": "MIT" - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "dev": true, - "license": "MIT" - }, - "node_modules/binary-extensions": { - "version": "2.2.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/braces": { - "version": "3.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/browser-process-hrtime": { - "version": "1.0.0", - "license": "BSD-2-Clause" - }, - "node_modules/chokidar": { - "version": "3.5.3", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "license": "MIT", - "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/chroma-js": { - "version": "1.4.1" - }, - "node_modules/color": { - "version": "4.2.3", - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1", - "color-string": "^1.9.0" - }, - "engines": { - "node": ">=12.5.0" - } - }, - "node_modules/color-convert": { - "version": "2.0.1", - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/color-name": { - "version": "1.1.4", - "license": "MIT" - }, - "node_modules/color-namer": { - "version": "1.4.0", - "license": "MIT", - "dependencies": { - "chroma-js": "^1.3.4", - "es6-weak-map": "^2.0.3" - } - }, - "node_modules/color-string": { - "version": "1.9.1", - "license": "MIT", - "dependencies": { - "color-name": "^1.0.0", - "simple-swizzle": "^0.2.2" - } - }, - "node_modules/combined-stream": { - "version": "1.0.8", - "license": "MIT", - "dependencies": { - "delayed-stream": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/concat-map": { - "version": "0.0.1", - "dev": true, - "license": "MIT" - }, - "node_modules/cssom": { - "version": "0.5.0", - "license": "MIT" - }, - "node_modules/cssstyle": { - "version": "2.3.0", - "license": "MIT", - "dependencies": { - "cssom": "~0.3.6" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cssstyle/node_modules/cssom": { - "version": "0.3.8", - "license": "MIT" - }, - "node_modules/d": { - "version": "1.0.1", - "license": "ISC", - "dependencies": { - "es5-ext": "^0.10.50", - "type": "^1.0.1" - } - }, - "node_modules/data-urls": { - "version": "3.0.2", - "license": "MIT", - "dependencies": { - "abab": "^2.0.6", - "whatwg-mimetype": "^3.0.0", - "whatwg-url": "^11.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/data-urls/node_modules/whatwg-url": { - "version": "11.0.0", - "license": "MIT", - "dependencies": { - "tr46": "^3.0.0", - "webidl-conversions": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/decimal.js": { - "version": "10.4.1", - "license": "MIT" - }, - "node_modules/deep-is": { - "version": "0.1.4", - "license": "MIT" - }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "license": "MIT", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/domexception": { - "version": "4.0.0", - "license": "MIT", - "dependencies": { - "webidl-conversions": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/es5-ext": { - "version": "0.10.62", - "hasInstallScript": true, - "license": "ISC", - "dependencies": { - "es6-iterator": "^2.0.3", - "es6-symbol": "^3.1.3", - "next-tick": "^1.1.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/es6-iterator": { - "version": "2.0.3", - "license": "MIT", - "dependencies": { - "d": "1", - "es5-ext": "^0.10.35", - "es6-symbol": "^3.1.1" - } - }, - "node_modules/es6-symbol": { - "version": "3.1.3", - "license": "ISC", - "dependencies": { - "d": "^1.0.1", - "ext": "^1.1.2" - } - }, - "node_modules/es6-weak-map": { - "version": "2.0.3", - "license": "ISC", - "dependencies": { - "d": "1", - "es5-ext": "^0.10.46", - "es6-iterator": "^2.0.3", - "es6-symbol": "^3.1.1" - } - }, - "node_modules/escodegen": { - "version": "2.0.0", - "license": "BSD-2-Clause", - "dependencies": { - "esprima": "^4.0.1", - "estraverse": "^5.2.0", - "esutils": "^2.0.2", - "optionator": "^0.8.1" - }, - "bin": { - "escodegen": "bin/escodegen.js", - "esgenerate": "bin/esgenerate.js" - }, - "engines": { - "node": ">=6.0" - }, - "optionalDependencies": { - "source-map": "~0.6.1" - } - }, - "node_modules/esprima": { - "version": "4.0.1", - "license": "BSD-2-Clause", - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/estraverse": { - "version": "5.3.0", - "license": "BSD-2-Clause", - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esutils": { - "version": "2.0.3", - "license": "BSD-2-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ext": { - "version": "1.7.0", - "license": "ISC", - "dependencies": { - "type": "^2.7.2" - } - }, - "node_modules/ext/node_modules/type": { - "version": "2.7.2", - "license": "ISC" - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "license": "MIT" - }, - "node_modules/fill-range": { - "version": "7.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/form-data": { - "version": "4.0.0", - "license": "MIT", - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/glob-parent": { - "version": "5.1.2", - "dev": true, - "license": "ISC", - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/has-flag": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/html-encoding-sniffer": { - "version": "3.0.0", - "license": "MIT", - "dependencies": { - "whatwg-encoding": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/http-proxy-agent": { - "version": "5.0.0", - "license": "MIT", - "dependencies": { - "@tootallnate/once": "2", - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/http-proxy-agent/node_modules/debug": { - "version": "4.3.4", - "license": "MIT", - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/http-proxy-agent/node_modules/ms": { - "version": "2.1.2", - "license": "MIT" - }, - "node_modules/https-proxy-agent": { - "version": "5.0.1", - "license": "MIT", - "dependencies": { - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/https-proxy-agent/node_modules/debug": { - "version": "4.3.4", - "license": "MIT", - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/https-proxy-agent/node_modules/ms": { - "version": "2.1.2", - "license": "MIT" - }, - "node_modules/ignore-by-default": { - "version": "1.0.1", - "dev": true, - "license": "ISC" - }, - "node_modules/is-arrayish": { - "version": "0.3.2", - "license": "MIT" - }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-number": { - "version": "7.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-potential-custom-element-name": { - "version": "1.0.1", - "license": "MIT" - }, - "node_modules/jsdom": { - "version": "18.1.1", - "license": "MIT", - "dependencies": { - "abab": "^2.0.5", - "acorn": "^8.5.0", - "acorn-globals": "^6.0.0", - "cssom": "^0.5.0", - "cssstyle": "^2.3.0", - "data-urls": "^3.0.1", - "decimal.js": "^10.3.1", - "domexception": "^4.0.0", - "escodegen": "^2.0.0", - "form-data": "^4.0.0", - "html-encoding-sniffer": "^3.0.0", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.0", - "parse5": "6.0.1", - "saxes": "^5.0.1", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.0.0", - "w3c-hr-time": "^1.0.2", - "w3c-xmlserializer": "^3.0.0", - "webidl-conversions": "^7.0.0", - "whatwg-encoding": "^2.0.0", - "whatwg-mimetype": "^3.0.0", - "whatwg-url": "^10.0.0", - "ws": "^8.2.3", - "xml-name-validator": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "peerDependencies": { - "canvas": "^2.5.0" - }, - "peerDependenciesMeta": { - "canvas": { - "optional": true - } - } - }, - "node_modules/levn": { - "version": "0.3.0", - "license": "MIT", - "dependencies": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/mime-db": { - "version": "1.52.0", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.35", - "license": "MIT", - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/minimatch": { - "version": "3.1.2", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/next-tick": { - "version": "1.1.0", - "license": "ISC" - }, - "node_modules/nodemon": { - "version": "2.0.20", - "dev": true, - "license": "MIT", - "dependencies": { - "chokidar": "^3.5.2", - "debug": "^3.2.7", - "ignore-by-default": "^1.0.1", - "minimatch": "^3.1.2", - "pstree.remy": "^1.1.8", - "semver": "^5.7.1", - "simple-update-notifier": "^1.0.7", - "supports-color": "^5.5.0", - "touch": "^3.1.0", - "undefsafe": "^2.0.5" - }, - "bin": { - "nodemon": "bin/nodemon.js" - }, - "engines": { - "node": ">=8.10.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/nodemon" - } - }, - "node_modules/nodemon/node_modules/debug": { - "version": "3.2.7", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/nodemon/node_modules/ms": { - "version": "2.1.3", - "dev": true, - "license": "MIT" - }, - "node_modules/nopt": { - "version": "1.0.10", - "dev": true, - "license": "MIT", - "dependencies": { - "abbrev": "1" - }, - "bin": { - "nopt": "bin/nopt.js" - } - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/nwsapi": { - "version": "2.2.2", - "license": "MIT" - }, - "node_modules/optionator": { - "version": "0.8.3", - "license": "MIT", - "dependencies": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/parse5": { - "version": "6.0.1", - "license": "MIT" - }, - "node_modules/picomatch": { - "version": "2.3.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/prelude-ls": { - "version": "1.1.2", - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/psl": { - "version": "1.9.0", - "license": "MIT" - }, - "node_modules/pstree.remy": { - "version": "1.1.8", - "dev": true, - "license": "MIT" - }, - "node_modules/punycode": { - "version": "2.1.1", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/querystringify": { - "version": "2.2.0", - "license": "MIT" - }, - "node_modules/random-name": { - "version": "0.1.2", - "license": "MIT" - }, - "node_modules/readdirp": { - "version": "3.6.0", - "dev": true, - "license": "MIT", - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/requires-port": { - "version": "1.0.0", - "license": "MIT" - }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "license": "MIT" - }, - "node_modules/saxes": { - "version": "5.0.1", - "license": "ISC", - "dependencies": { - "xmlchars": "^2.2.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/semver": { - "version": "5.7.1", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/simple-swizzle": { - "version": "0.2.2", - "license": "MIT", - "dependencies": { - "is-arrayish": "^0.3.1" - } - }, - "node_modules/simple-update-notifier": { - "version": "1.0.7", - "dev": true, - "license": "MIT", - "dependencies": { - "semver": "~7.0.0" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/simple-update-notifier/node_modules/semver": { - "version": "7.0.0", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/source-map": { - "version": "0.6.1", - "license": "BSD-3-Clause", - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/supports-color": { - "version": "5.5.0", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/symbol-tree": { - "version": "3.2.4", - "license": "MIT" - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/touch": { - "version": "3.1.0", - "dev": true, - "license": "ISC", - "dependencies": { - "nopt": "~1.0.10" - }, - "bin": { - "nodetouch": "bin/nodetouch.js" - } - }, - "node_modules/tough-cookie": { - "version": "4.1.2", - "license": "BSD-3-Clause", - "dependencies": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.2.0", - "url-parse": "^1.5.3" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/tr46": { - "version": "3.0.0", - "license": "MIT", - "dependencies": { - "punycode": "^2.1.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/type": { - "version": "1.2.0", - "license": "ISC" - }, - "node_modules/type-check": { - "version": "0.3.2", - "license": "MIT", - "dependencies": { - "prelude-ls": "~1.1.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/undefsafe": { - "version": "2.0.5", - "dev": true, - "license": "MIT" - }, - "node_modules/universalify": { - "version": "0.2.0", - "license": "MIT", - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/url-parse": { - "version": "1.5.10", - "license": "MIT", - "dependencies": { - "querystringify": "^2.1.1", - "requires-port": "^1.0.0" - } - }, - "node_modules/w3c-hr-time": { - "version": "1.0.2", - "license": "MIT", - "dependencies": { - "browser-process-hrtime": "^1.0.0" - } - }, - "node_modules/w3c-xmlserializer": { - "version": "3.0.0", - "license": "MIT", - "dependencies": { - "xml-name-validator": "^4.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/webidl-conversions": { - "version": "7.0.0", - "license": "BSD-2-Clause", - "engines": { - "node": ">=12" - } - }, - "node_modules/whatwg-encoding": { - "version": "2.0.0", - "license": "MIT", - "dependencies": { - "iconv-lite": "0.6.3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/whatwg-encoding/node_modules/iconv-lite": { - "version": "0.6.3", - "license": "MIT", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/whatwg-mimetype": { - "version": "3.0.0", - "license": "MIT", - "engines": { - "node": ">=12" - } - }, - "node_modules/whatwg-url": { - "version": "10.0.0", - "license": "MIT", - "dependencies": { - "tr46": "^3.0.0", - "webidl-conversions": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/word-wrap": { - "version": "1.2.3", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ws": { - "version": "8.9.0", - "license": "MIT", - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/xml-name-validator": { - "version": "4.0.0", - "license": "Apache-2.0", - "engines": { - "node": ">=12" - } - }, - "node_modules/xmlchars": { - "version": "2.2.0", - "license": "MIT" - } - }, - "dependencies": { - "@tootallnate/once": { - "version": "2.0.0" - }, - "abab": { - "version": "2.0.6" - }, - "abbrev": { - "version": "1.1.1", - "dev": true - }, - "acorn": { - "version": "8.8.0" - }, - "acorn-globals": { - "version": "6.0.0", - "requires": { - "acorn": "^7.1.1", - "acorn-walk": "^7.1.1" - }, - "dependencies": { - "acorn": { - "version": "7.4.1" - } - } - }, - "acorn-walk": { - "version": "7.2.0" - }, - "agent-base": { - "version": "6.0.2", - "requires": { - "debug": "4" - }, - "dependencies": { - "debug": { - "version": "4.3.4", - "requires": { - "ms": "2.1.2" - } - }, - "ms": { - "version": "2.1.2" - } - } - }, - "anymatch": { - "version": "3.1.2", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "asynckit": { - "version": "0.4.0" - }, - "balanced-match": { - "version": "1.0.2", - "dev": true - }, - "binary-extensions": { - "version": "2.2.0", - "dev": true - }, - "brace-expansion": { - "version": "1.1.11", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "3.0.2", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "browser-process-hrtime": { - "version": "1.0.0" - }, - "chokidar": { - "version": "3.5.3", - "dev": true, - "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" - } - }, - "chroma-js": { - "version": "1.4.1" - }, - "color": { - "version": "4.2.3", - "requires": { - "color-convert": "^2.0.1", - "color-string": "^1.9.0" - } - }, - "color-convert": { - "version": "2.0.1", - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4" - }, - "color-namer": { - "version": "1.4.0", - "requires": { - "chroma-js": "^1.3.4", - "es6-weak-map": "^2.0.3" - } - }, - "color-string": { - "version": "1.9.1", - "requires": { - "color-name": "^1.0.0", - "simple-swizzle": "^0.2.2" - } - }, - "combined-stream": { - "version": "1.0.8", - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "concat-map": { - "version": "0.0.1", - "dev": true - }, - "cssom": { - "version": "0.5.0" - }, - "cssstyle": { - "version": "2.3.0", - "requires": { - "cssom": "~0.3.6" - }, - "dependencies": { - "cssom": { - "version": "0.3.8" - } - } - }, - "d": { - "version": "1.0.1", - "requires": { - "es5-ext": "^0.10.50", - "type": "^1.0.1" - } - }, - "data-urls": { - "version": "3.0.2", - "requires": { - "abab": "^2.0.6", - "whatwg-mimetype": "^3.0.0", - "whatwg-url": "^11.0.0" - }, - "dependencies": { - "whatwg-url": { - "version": "11.0.0", - "requires": { - "tr46": "^3.0.0", - "webidl-conversions": "^7.0.0" - } - } - } - }, - "decimal.js": { - "version": "10.4.1" - }, - "deep-is": { - "version": "0.1.4" - }, - "delayed-stream": { - "version": "1.0.0" - }, - "domexception": { - "version": "4.0.0", - "requires": { - "webidl-conversions": "^7.0.0" - } - }, - "es5-ext": { - "version": "0.10.62", - "requires": { - "es6-iterator": "^2.0.3", - "es6-symbol": "^3.1.3", - "next-tick": "^1.1.0" - } - }, - "es6-iterator": { - "version": "2.0.3", - "requires": { - "d": "1", - "es5-ext": "^0.10.35", - "es6-symbol": "^3.1.1" - } - }, - "es6-symbol": { - "version": "3.1.3", - "requires": { - "d": "^1.0.1", - "ext": "^1.1.2" - } - }, - "es6-weak-map": { - "version": "2.0.3", - "requires": { - "d": "1", - "es5-ext": "^0.10.46", - "es6-iterator": "^2.0.3", - "es6-symbol": "^3.1.1" - } - }, - "escodegen": { - "version": "2.0.0", - "requires": { - "esprima": "^4.0.1", - "estraverse": "^5.2.0", - "esutils": "^2.0.2", - "optionator": "^0.8.1", - "source-map": "~0.6.1" - } - }, - "esprima": { - "version": "4.0.1" - }, - "estraverse": { - "version": "5.3.0" - }, - "esutils": { - "version": "2.0.3" - }, - "ext": { - "version": "1.7.0", - "requires": { - "type": "^2.7.2" - }, - "dependencies": { - "type": { - "version": "2.7.2" - } - } - }, - "fast-levenshtein": { - "version": "2.0.6" - }, - "fill-range": { - "version": "7.0.1", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "form-data": { - "version": "4.0.0", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - } - }, - "glob-parent": { - "version": "5.1.2", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - }, - "has-flag": { - "version": "3.0.0", - "dev": true - }, - "html-encoding-sniffer": { - "version": "3.0.0", - "requires": { - "whatwg-encoding": "^2.0.0" - } - }, - "http-proxy-agent": { - "version": "5.0.0", - "requires": { - "@tootallnate/once": "2", - "agent-base": "6", - "debug": "4" - }, - "dependencies": { - "debug": { - "version": "4.3.4", - "requires": { - "ms": "2.1.2" - } - }, - "ms": { - "version": "2.1.2" - } - } - }, - "https-proxy-agent": { - "version": "5.0.1", - "requires": { - "agent-base": "6", - "debug": "4" - }, - "dependencies": { - "debug": { - "version": "4.3.4", - "requires": { - "ms": "2.1.2" - } - }, - "ms": { - "version": "2.1.2" - } - } - }, - "ignore-by-default": { - "version": "1.0.1", - "dev": true - }, - "is-arrayish": { - "version": "0.3.2" - }, - "is-binary-path": { - "version": "2.1.0", - "dev": true, - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "is-extglob": { - "version": "2.1.1", - "dev": true - }, - "is-glob": { - "version": "4.0.3", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-number": { - "version": "7.0.0", - "dev": true - }, - "is-potential-custom-element-name": { - "version": "1.0.1" - }, - "jsdom": { - "version": "18.1.1", - "requires": { - "abab": "^2.0.5", - "acorn": "^8.5.0", - "acorn-globals": "^6.0.0", - "cssom": "^0.5.0", - "cssstyle": "^2.3.0", - "data-urls": "^3.0.1", - "decimal.js": "^10.3.1", - "domexception": "^4.0.0", - "escodegen": "^2.0.0", - "form-data": "^4.0.0", - "html-encoding-sniffer": "^3.0.0", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.0", - "parse5": "6.0.1", - "saxes": "^5.0.1", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.0.0", - "w3c-hr-time": "^1.0.2", - "w3c-xmlserializer": "^3.0.0", - "webidl-conversions": "^7.0.0", - "whatwg-encoding": "^2.0.0", - "whatwg-mimetype": "^3.0.0", - "whatwg-url": "^10.0.0", - "ws": "^8.2.3", - "xml-name-validator": "^4.0.0" - } - }, - "levn": { - "version": "0.3.0", - "requires": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - } - }, - "mime-db": { - "version": "1.52.0" - }, - "mime-types": { - "version": "2.1.35", - "requires": { - "mime-db": "1.52.0" - } - }, - "minimatch": { - "version": "3.1.2", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "next-tick": { - "version": "1.1.0" - }, - "nodemon": { - "version": "2.0.20", - "dev": true, - "requires": { - "chokidar": "^3.5.2", - "debug": "^3.2.7", - "ignore-by-default": "^1.0.1", - "minimatch": "^3.1.2", - "pstree.remy": "^1.1.8", - "semver": "^5.7.1", - "simple-update-notifier": "^1.0.7", - "supports-color": "^5.5.0", - "touch": "^3.1.0", - "undefsafe": "^2.0.5" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.3", - "dev": true - } - } - }, - "nopt": { - "version": "1.0.10", - "dev": true, - "requires": { - "abbrev": "1" - } - }, - "normalize-path": { - "version": "3.0.0", - "dev": true - }, - "nwsapi": { - "version": "2.2.2" - }, - "optionator": { - "version": "0.8.3", - "requires": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" - } - }, - "parse5": { - "version": "6.0.1" - }, - "picomatch": { - "version": "2.3.1", - "dev": true - }, - "prelude-ls": { - "version": "1.1.2" - }, - "psl": { - "version": "1.9.0" - }, - "pstree.remy": { - "version": "1.1.8", - "dev": true - }, - "punycode": { - "version": "2.1.1" - }, - "querystringify": { - "version": "2.2.0" - }, - "random-name": { - "version": "0.1.2" - }, - "readdirp": { - "version": "3.6.0", - "dev": true, - "requires": { - "picomatch": "^2.2.1" - } - }, - "requires-port": { - "version": "1.0.0" - }, - "safer-buffer": { - "version": "2.1.2" - }, - "saxes": { - "version": "5.0.1", - "requires": { - "xmlchars": "^2.2.0" - } - }, - "semver": { - "version": "5.7.1", - "dev": true - }, - "simple-swizzle": { - "version": "0.2.2", - "requires": { - "is-arrayish": "^0.3.1" - } - }, - "simple-update-notifier": { - "version": "1.0.7", - "dev": true, - "requires": { - "semver": "~7.0.0" - }, - "dependencies": { - "semver": { - "version": "7.0.0", - "dev": true - } - } - }, - "source-map": { - "version": "0.6.1", - "optional": true - }, - "supports-color": { - "version": "5.5.0", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "symbol-tree": { - "version": "3.2.4" - }, - "to-regex-range": { - "version": "5.0.1", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - }, - "touch": { - "version": "3.1.0", - "dev": true, - "requires": { - "nopt": "~1.0.10" - } - }, - "tough-cookie": { - "version": "4.1.2", - "requires": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.2.0", - "url-parse": "^1.5.3" - } - }, - "tr46": { - "version": "3.0.0", - "requires": { - "punycode": "^2.1.1" - } - }, - "type": { - "version": "1.2.0" - }, - "type-check": { - "version": "0.3.2", - "requires": { - "prelude-ls": "~1.1.2" - } - }, - "undefsafe": { - "version": "2.0.5", - "dev": true - }, - "universalify": { - "version": "0.2.0" - }, - "url-parse": { - "version": "1.5.10", - "requires": { - "querystringify": "^2.1.1", - "requires-port": "^1.0.0" - } - }, - "w3c-hr-time": { - "version": "1.0.2", - "requires": { - "browser-process-hrtime": "^1.0.0" - } - }, - "w3c-xmlserializer": { - "version": "3.0.0", - "requires": { - "xml-name-validator": "^4.0.0" - } - }, - "webidl-conversions": { - "version": "7.0.0" - }, - "whatwg-encoding": { - "version": "2.0.0", - "requires": { - "iconv-lite": "0.6.3" - }, - "dependencies": { - "iconv-lite": { - "version": "0.6.3", - "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - } - } - } - }, - "whatwg-mimetype": { - "version": "3.0.0" - }, - "whatwg-url": { - "version": "10.0.0", - "requires": { - "tr46": "^3.0.0", - "webidl-conversions": "^7.0.0" - } - }, - "word-wrap": { - "version": "1.2.3" - }, - "ws": { - "version": "8.9.0", - "requires": {} - }, - "xml-name-validator": { - "version": "4.0.0" - }, - "xmlchars": { - "version": "2.2.0" - } - } -} diff --git a/package.json b/package.json index 77a39b5..499b7fd 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "RandomChad", - "version": "0.1.0", + "version": "0.1.1", "description": "", "main": "index.js", "module": "index.js", @@ -12,10 +12,8 @@ "author": "", "license": "", "dependencies": { - "color": "^4.2.3", - "color-namer": "^1.4.0", - "jsdom": "^18.1.1", - "random-name": "^0.1.2" + "config": "^3.3.8", + "jsdom": "^18.1.1" }, "devDependencies": { "nodemon": "^2.0.20"