├── .editorconfig ├── .gitignore ├── .prettierrc ├── LICENSE ├── README.md ├── installer ├── index.js ├── modules │ ├── clearConsole.js │ ├── handleError.js │ ├── printNextSteps.js │ └── run.js └── packages │ └── package.json ├── next-env.d.ts ├── next.config.js ├── package-lock.json ├── package.json ├── public ├── robots.txt └── site.webmanifest ├── src ├── assets │ ├── styles │ │ ├── globalStyles.tsx │ │ ├── mq.ts │ │ ├── theme.ts │ │ └── types.ts │ └── svg │ │ └── Logo.tsx ├── components │ └── Page │ │ ├── Page.tsx │ │ └── index.ts └── pages │ ├── _app.tsx │ ├── _document.tsx │ └── index.tsx └── tsconfig.json /.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | end_of_line = lf 5 | charset = utf-8 6 | trim_trailing_whitespace = true 7 | insert_final_newline = true 8 | indent_style = tab 9 | indent_size = 3 10 | 11 | [*.md] 12 | trim_trailing_whitespace = false 13 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | logs 2 | *.log* 3 | pids 4 | *.pid 5 | *.seed 6 | lib-cov 7 | coverage 8 | node_modules 9 | .vscode 10 | .DS_Store 11 | .next 12 | scratch.js 13 | notes.md 14 | .now 15 | .env 16 | .vercel 17 | out 18 | .eslintcache 19 | -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "printWidth": 80, 3 | "useTabs": true, 4 | "tabWidth": 4, 5 | "endOfLine": "lf", 6 | "semi": true, 7 | "singleQuote": false, 8 | "trailingComma": "all", 9 | "bracketSpacing": true, 10 | "bracketSameLine": false, 11 | "arrowParens": "always" 12 | } 13 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) Luan Gjokaj - www.riangle.com 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # [![Nextify Logo](https://nextify.s3-eu-west-1.amazonaws.com/img/nextify-repository-logo.svg#1)](https://www.nextify.me/) 2 | 3 | [![Version](https://img.shields.io/github/package-json/v/luangjokaj/nextify)](https://www.fuzzymail.co/) 4 | 5 | React apps using Next.js and Emotion. 6 | 7 | --- 8 | 9 | ## Documentation 10 | 11 | For full documentation, visit https://www.nextify.me. 12 | 13 | ## Community 14 | 15 | For help, discussion about best practices, or any other conversation that would benefit from being searchable: 16 | 17 | [Discuss Nextify on GitHub](https://github.com/luangjokaj/nextify/discussions) 18 | 19 | For casual chit-chat with others using Nextify: 20 | 21 | [Join the Discord Server](https://discord.com/invite/uQFdMddMZw) 22 | -------------------------------------------------------------------------------- /installer/index.js: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | /** 3 | * Main Installer for Nextify 4 | * Check the node version if above 12 then run the app. 5 | * 6 | * Credits: 7 | * Ahmad Awais - https://twitter.com/MrAhmadAwais/ 8 | * Luan Gjokaj - https://twitter.com/luangjokaj/ 9 | */ 10 | 11 | import prompts from "prompts"; 12 | import chalk from "chalk"; 13 | import { program } from "commander"; 14 | import { createRequire } from "module"; 15 | import { run } from "./modules/run.js"; 16 | 17 | const require = createRequire(import.meta.url); 18 | const packageData = require("./packages/package.json"); 19 | 20 | const version = packageData.version; 21 | const currentNodeVersion = process.versions.node; 22 | const semver = currentNodeVersion.split("."); 23 | const major = semver[0]; 24 | 25 | program 26 | .version(version, "-v, --vers", "output the current version") 27 | .parse(process.argv); 28 | 29 | (async () => { 30 | const response = await prompts({ 31 | type: "confirm", 32 | name: "value", 33 | message: `Do you want to install ${chalk.white.bgBlue( 34 | "⚡ Nextify", 35 | )} in the current directory?\n${chalk.red(process.cwd())}`, 36 | }); 37 | 38 | if (response.value) { 39 | // If below Node 12 40 | if (12 > major) { 41 | console.error( 42 | chalk.red( 43 | "You are running Node " + 44 | currentNodeVersion + 45 | ".\n" + 46 | "Install Nextify requires Node 12 or higher. \n" + 47 | "Kindly, update your version of Node.", 48 | ), 49 | ); 50 | process.exit(1); 51 | } 52 | 53 | // Makes the script crash on unhandled rejections instead of silently 54 | // ignoring them. In the future, promise rejections that are not handled will 55 | // terminate the Node.js process with a non-zero exit code 56 | process.on("unhandledRejection", (err) => { 57 | throw err; 58 | }); 59 | 60 | /** 61 | * Run the entire program 62 | * 63 | * Runs all the functions with async/await 64 | */ 65 | run(); 66 | } 67 | })(); 68 | -------------------------------------------------------------------------------- /installer/modules/clearConsole.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Cross platform clear console. 3 | * 4 | * Support for win32 and others. 5 | */ 6 | 7 | const clearConsole = () => { 8 | process.stdout.write( 9 | "win32" === process.platform 10 | ? "\x1B[2J\x1B[0f" 11 | : "\x1B[2J\x1B[3J\x1B[H", 12 | ); 13 | }; 14 | 15 | export { clearConsole }; 16 | -------------------------------------------------------------------------------- /installer/modules/handleError.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Error handler 3 | */ 4 | 5 | const handleError = (err) => { 6 | if (err) { 7 | console.log("ERROR: " + err); 8 | } 9 | }; 10 | 11 | export { handleError }; 12 | -------------------------------------------------------------------------------- /installer/modules/printNextSteps.js: -------------------------------------------------------------------------------- 1 | import chalk from "chalk"; 2 | 3 | const printNextSteps = () => { 4 | console.log("\n\n✅ ", chalk.black.bgGreen(" All done! Happy coding. \n")); 5 | console.log( 6 | "Installer has added ⚡ Nextify files to the current directory. ", 7 | "\nInside this directory, you can run this command:", 8 | ); 9 | 10 | // Scripts 11 | console.log( 12 | "\n👉 ", 13 | " Type", 14 | chalk.black.bgWhite(" npm run dev "), 15 | "\n\n", 16 | " Use to compile and run your files.", 17 | "\n", 18 | " Watches for any changes and reports back any errors in your code.", 19 | ); 20 | 21 | // Support 22 | console.log("\n✊ ", chalk.black.bgYellow(" Support Nextify \n")); 23 | console.log( 24 | "Like Nextify? Check out our other free and open source repositories: \n", 25 | ); 26 | console.log( 27 | ` ${chalk.yellow("Cherry → ")} https://bit.ly/3sEr75P`, 28 | "\n", 29 | ` ${chalk.gray("• A design system to build the web.")}`, 30 | "\n", 31 | ` ${chalk.yellow("GoPablo → ")} http://bit.ly/2Hgkfpy`, 32 | "\n", 33 | ` ${chalk.gray("• Create optimized static websites.")}`, 34 | "\n", 35 | ` ${chalk.yellow("WordPressify → ")} https://bit.ly/2KTqyQX`, 36 | "\n", 37 | ` ${chalk.gray("• Automate your WordPress development workflow.")}`, 38 | "\n", 39 | ` ${chalk.yellow("Nextify → ")} https://bit.ly/3m4lVWm`, 40 | "\n", 41 | ` ${chalk.gray("• React apps using Next.js and Emotion.")}`, 42 | "\n", 43 | ` ${chalk.yellow("FuzzyMail → ")} https://bit.ly/2P3Irlr`, 44 | "\n", 45 | ` ${chalk.gray("• Responsive email template generator.")}`, 46 | "\n", 47 | ` ${chalk.green("Powered by Riangle → ")} https://bit.ly/2P5i26I`, 48 | "\n", 49 | "\n", 50 | ` ${chalk.red( 51 | "Thank you for using ⚡ Nextify → ", 52 | )} https://www.nextify.me`, 53 | ); 54 | 55 | // Get started 56 | console.log("\n\n🎯 ", chalk.black.bgGreen(" Get Started → \n")); 57 | console.log(" You can start: \n"); 58 | console.log( 59 | ` ${chalk.dim("1.")} Editing your new react application: ${chalk.green( 60 | `${process.cwd()}/src`, 61 | )}`, 62 | ); 63 | console.log( 64 | ` ${chalk.dim("2.")} Running: ${chalk.green("npm")} run dev`, 65 | "\n\n", 66 | ); 67 | process.exit(); 68 | }; 69 | 70 | export { printNextSteps }; 71 | -------------------------------------------------------------------------------- /installer/modules/run.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Installation 3 | */ 4 | 5 | import fs from "fs"; 6 | import ora from "ora"; 7 | import chalk from "chalk"; 8 | import download from "download"; 9 | import { execa } from "execa"; 10 | import { createRequire } from "module"; 11 | import { handleError } from "./handleError.js"; 12 | import { clearConsole } from "./clearConsole.js"; 13 | import { printNextSteps } from "./printNextSteps.js"; 14 | 15 | const require = createRequire(import.meta.url); 16 | const packageData = require("../packages/package.json"); 17 | 18 | const version = packageData.version; 19 | 20 | const theCWD = process.cwd(); 21 | const theCWDArray = theCWD.split("/"); 22 | const theDir = theCWDArray[theCWDArray.length - 1]; 23 | 24 | const run = () => { 25 | // Init 26 | clearConsole(); 27 | 28 | let upstreamUrl = `https://raw.githubusercontent.com/luangjokaj/nextify/v${version}`; 29 | 30 | // Files 31 | const filesToDownload = [ 32 | `${upstreamUrl}/.editorconfig`, 33 | `${upstreamUrl}/.gitignore`, 34 | `${upstreamUrl}/.prettierrc`, 35 | `${upstreamUrl}/LICENSE`, 36 | `${upstreamUrl}/next.config.js`, 37 | `${upstreamUrl}/installer/packages/package.json`, 38 | `${upstreamUrl}/README.md`, 39 | `${upstreamUrl}/tsconfig.json`, 40 | 41 | `${upstreamUrl}/public/robots.txt`, 42 | `${upstreamUrl}/public/site.webmanifest`, 43 | 44 | `${upstreamUrl}/src/assets/styles/globalStyles.tsx`, 45 | `${upstreamUrl}/src/assets/styles/mq.ts`, 46 | `${upstreamUrl}/src/assets/styles/theme.ts`, 47 | 48 | `${upstreamUrl}/src/assets/svg/Logo.tsx`, 49 | 50 | `${upstreamUrl}/src/components/Page/index.ts`, 51 | `${upstreamUrl}/src/components/Page/Page.tsx`, 52 | 53 | `${upstreamUrl}/src/pages/_app.tsx`, 54 | `${upstreamUrl}/src/pages/_document.tsx`, 55 | `${upstreamUrl}/src/pages/index.tsx`, 56 | ]; 57 | 58 | // Organise file structure 59 | const dotFiles = [".editorconfig", ".gitignore", ".prettierrc"]; 60 | const publicFiles = ["robots.txt", "site.webmanifest"]; 61 | const stylesFiles = ["globalStyles.tsx", "mq.ts", "theme.ts"]; 62 | const svgFiles = ["Logo.tsx"]; 63 | const componentsFiles = ["index.ts", "Page.tsx"]; 64 | const pagesFiles = ["_app.tsx", "_document.tsx", "index.tsx"]; 65 | 66 | // Start 67 | console.log("\n"); 68 | console.log( 69 | "📦 ", 70 | chalk.black.bgYellow( 71 | ` Downloading ⚡ Nextify files in: → ${chalk.bgGreen( 72 | ` ${theDir} `, 73 | )}\n`, 74 | ), 75 | chalk.dim(`\n In the directory: ${theCWD}\n`), 76 | chalk.dim("This might take a couple of minutes.\n"), 77 | ); 78 | 79 | const spinner = ora({ text: "" }); 80 | spinner.start( 81 | `1. Creating ⚡ Nextify files inside → ${chalk.black.bgWhite( 82 | ` ${theDir} `, 83 | )}`, 84 | ); 85 | 86 | // Download 87 | Promise.all(filesToDownload.map((x) => download(x, `${theCWD}`))).then( 88 | async () => { 89 | if (!fs.existsSync("src")) { 90 | await execa("mkdir", [ 91 | "public", 92 | "src", 93 | "src/assets", 94 | "src/assets/styles", 95 | "src/assets/svg", 96 | "src/components", 97 | "src/components/Page", 98 | "src/pages", 99 | ]); 100 | } 101 | 102 | dotFiles.map((x) => 103 | fs.rename(`${theCWD}/${x.slice(1)}`, `${theCWD}/${x}`, (err) => 104 | handleError(err), 105 | ), 106 | ); 107 | publicFiles.map((x) => 108 | fs.rename(`${theCWD}/${x}`, `${theCWD}/public/${x}`, (err) => 109 | handleError(err), 110 | ), 111 | ); 112 | stylesFiles.map((x) => 113 | fs.rename( 114 | `${theCWD}/${x}`, 115 | `${theCWD}/src/assets/styles/${x}`, 116 | (err) => handleError(err), 117 | ), 118 | ); 119 | svgFiles.map((x) => 120 | fs.rename( 121 | `${theCWD}/${x}`, 122 | `${theCWD}/src/assets/svg/${x}`, 123 | (err) => handleError(err), 124 | ), 125 | ); 126 | componentsFiles.map((x) => 127 | fs.rename( 128 | `${theCWD}/${x}`, 129 | `${theCWD}/src/components/Page/${x}`, 130 | (err) => handleError(err), 131 | ), 132 | ); 133 | pagesFiles.map((x) => 134 | fs.rename(`${theCWD}/${x}`, `${theCWD}/src/pages/${x}`, (err) => 135 | handleError(err), 136 | ), 137 | ); 138 | spinner.succeed(); 139 | 140 | // The npm install 141 | spinner.start("2. Installing npm packages..."); 142 | await execa("npm", ["install", "--legacy-peer-deps"]); 143 | spinner.succeed(); 144 | 145 | // Done 146 | printNextSteps(); 147 | }, 148 | ); 149 | }; 150 | 151 | export { run }; 152 | -------------------------------------------------------------------------------- /installer/packages/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "create-nextify-app", 3 | "version": "0.0.2-21", 4 | "description": "React apps using Next.js and Emotion.", 5 | "keywords": [ 6 | "nextjs", 7 | "next", 8 | "react", 9 | "javascript", 10 | "typescript", 11 | "ts", 12 | "framework", 13 | "emotion", 14 | "styles", 15 | "css", 16 | "styling", 17 | "css-in-js", 18 | "workflow" 19 | ], 20 | "homepage": "https://www.nextify.me", 21 | "repository": "https://github.com/luangjokaj/nextify", 22 | "exports": "./index.js", 23 | "scripts": { 24 | "dev": "next dev", 25 | "build": "next build", 26 | "start": "next start", 27 | "export": "next export", 28 | "lint": "next lint", 29 | "type-check": "tsc", 30 | "type-watch": "tsc --watch", 31 | "format": "prettier --write \"./**/*.{js,json,ts,tsx}\" \"!.node_modules/**\" \"!.next/**\"", 32 | "analyze": "ANALYZE=true next build", 33 | "analyze:server": "BUNDLE_ANALYZE=server next build", 34 | "analyze:browser": "BUNDLE_ANALYZE=browser next build" 35 | }, 36 | "author": "Luan Gjokaj ", 37 | "license": "MIT", 38 | "dependencies": { 39 | "@emotion/babel-plugin": "^11.10.5", 40 | "@emotion/react": "^11.10.5", 41 | "@next/bundle-analyzer": "^13.1.3", 42 | "@types/node": "^18.11.18", 43 | "@types/react": "^18.0.27", 44 | "@types/react-dom": "^18.0.10", 45 | "cherry-components": "^0.0.2-21", 46 | "express": "^4.18.2", 47 | "next": "^13.1.3", 48 | "prettier": "^2.8.3", 49 | "react": "^18.2.0", 50 | "react-dom": "^18.2.0", 51 | "typescript": "^4.9.4" 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /next-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | /// 3 | -------------------------------------------------------------------------------- /next.config.js: -------------------------------------------------------------------------------- 1 | const withBundleAnalyzer = require("@next/bundle-analyzer"); 2 | 3 | const config = { 4 | compiler: { 5 | emotion: true, 6 | }, 7 | }; 8 | 9 | const bundleAnalyzer = withBundleAnalyzer({ 10 | enabled: process.env.ANALYZE === "true", 11 | }); 12 | 13 | module.exports = (_phase, { defaultConfig }) => { 14 | const plugins = [bundleAnalyzer]; 15 | return plugins.reduce((acc, plugin) => plugin(acc), { ...config }); 16 | }; 17 | -------------------------------------------------------------------------------- /package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "create-nextify-app", 3 | "version": "0.0.2-21", 4 | "lockfileVersion": 2, 5 | "requires": true, 6 | "packages": { 7 | "": { 8 | "name": "create-nextify-app", 9 | "version": "0.0.2-21", 10 | "license": "MIT", 11 | "dependencies": { 12 | "chalk": "^5.2.0", 13 | "commander": "^10.0.0", 14 | "download": "^8.0.0", 15 | "execa": "^6.1.0", 16 | "ora": "^6.1.2", 17 | "prompts": "^2.4.2" 18 | }, 19 | "bin": { 20 | "create-nextify-app": "installer/index.js" 21 | } 22 | }, 23 | "node_modules/@sindresorhus/is": { 24 | "version": "0.7.0", 25 | "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.7.0.tgz", 26 | "integrity": "sha512-ONhaKPIufzzrlNbqtWFFd+jlnemX6lJAgq9ZeiZtS7I1PIf/la7CW4m83rTXRnVnsMbW2k56pGYu7AUFJD9Pow==", 27 | "engines": { 28 | "node": ">=4" 29 | } 30 | }, 31 | "node_modules/ansi-regex": { 32 | "version": "6.0.1", 33 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", 34 | "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", 35 | "engines": { 36 | "node": ">=12" 37 | }, 38 | "funding": { 39 | "url": "https://github.com/chalk/ansi-regex?sponsor=1" 40 | } 41 | }, 42 | "node_modules/archive-type": { 43 | "version": "4.0.0", 44 | "resolved": "https://registry.npmjs.org/archive-type/-/archive-type-4.0.0.tgz", 45 | "integrity": "sha1-+S5yIzBW38aWlHJ0nCZ72wRrHXA=", 46 | "dependencies": { 47 | "file-type": "^4.2.0" 48 | }, 49 | "engines": { 50 | "node": ">=4" 51 | } 52 | }, 53 | "node_modules/archive-type/node_modules/file-type": { 54 | "version": "4.4.0", 55 | "resolved": "https://registry.npmjs.org/file-type/-/file-type-4.4.0.tgz", 56 | "integrity": "sha1-G2AOX8ofvcboDApwxxyNul95BsU=", 57 | "engines": { 58 | "node": ">=4" 59 | } 60 | }, 61 | "node_modules/base64-js": { 62 | "version": "1.5.1", 63 | "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", 64 | "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", 65 | "funding": [ 66 | { 67 | "type": "github", 68 | "url": "https://github.com/sponsors/feross" 69 | }, 70 | { 71 | "type": "patreon", 72 | "url": "https://www.patreon.com/feross" 73 | }, 74 | { 75 | "type": "consulting", 76 | "url": "https://feross.org/support" 77 | } 78 | ] 79 | }, 80 | "node_modules/bl": { 81 | "version": "5.0.0", 82 | "resolved": "https://registry.npmjs.org/bl/-/bl-5.0.0.tgz", 83 | "integrity": "sha512-8vxFNZ0pflFfi0WXA3WQXlj6CaMEwsmh63I1CNp0q+wWv8sD0ARx1KovSQd0l2GkwrMIOyedq0EF1FxI+RCZLQ==", 84 | "dependencies": { 85 | "buffer": "^6.0.3", 86 | "inherits": "^2.0.4", 87 | "readable-stream": "^3.4.0" 88 | } 89 | }, 90 | "node_modules/bl/node_modules/buffer": { 91 | "version": "6.0.3", 92 | "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", 93 | "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", 94 | "funding": [ 95 | { 96 | "type": "github", 97 | "url": "https://github.com/sponsors/feross" 98 | }, 99 | { 100 | "type": "patreon", 101 | "url": "https://www.patreon.com/feross" 102 | }, 103 | { 104 | "type": "consulting", 105 | "url": "https://feross.org/support" 106 | } 107 | ], 108 | "dependencies": { 109 | "base64-js": "^1.3.1", 110 | "ieee754": "^1.2.1" 111 | } 112 | }, 113 | "node_modules/bl/node_modules/readable-stream": { 114 | "version": "3.6.0", 115 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", 116 | "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", 117 | "dependencies": { 118 | "inherits": "^2.0.3", 119 | "string_decoder": "^1.1.1", 120 | "util-deprecate": "^1.0.1" 121 | }, 122 | "engines": { 123 | "node": ">= 6" 124 | } 125 | }, 126 | "node_modules/buffer": { 127 | "version": "5.7.1", 128 | "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", 129 | "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", 130 | "funding": [ 131 | { 132 | "type": "github", 133 | "url": "https://github.com/sponsors/feross" 134 | }, 135 | { 136 | "type": "patreon", 137 | "url": "https://www.patreon.com/feross" 138 | }, 139 | { 140 | "type": "consulting", 141 | "url": "https://feross.org/support" 142 | } 143 | ], 144 | "dependencies": { 145 | "base64-js": "^1.3.1", 146 | "ieee754": "^1.1.13" 147 | } 148 | }, 149 | "node_modules/buffer-alloc": { 150 | "version": "1.2.0", 151 | "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", 152 | "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", 153 | "dependencies": { 154 | "buffer-alloc-unsafe": "^1.1.0", 155 | "buffer-fill": "^1.0.0" 156 | } 157 | }, 158 | "node_modules/buffer-alloc-unsafe": { 159 | "version": "1.1.0", 160 | "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", 161 | "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==" 162 | }, 163 | "node_modules/buffer-crc32": { 164 | "version": "0.2.13", 165 | "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", 166 | "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", 167 | "engines": { 168 | "node": "*" 169 | } 170 | }, 171 | "node_modules/buffer-fill": { 172 | "version": "1.0.0", 173 | "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", 174 | "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=" 175 | }, 176 | "node_modules/cacheable-request": { 177 | "version": "2.1.4", 178 | "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-2.1.4.tgz", 179 | "integrity": "sha1-DYCIAbY0KtM8kd+dC0TcCbkeXD0=", 180 | "dependencies": { 181 | "clone-response": "1.0.2", 182 | "get-stream": "3.0.0", 183 | "http-cache-semantics": "3.8.1", 184 | "keyv": "3.0.0", 185 | "lowercase-keys": "1.0.0", 186 | "normalize-url": "2.0.1", 187 | "responselike": "1.0.2" 188 | } 189 | }, 190 | "node_modules/cacheable-request/node_modules/get-stream": { 191 | "version": "3.0.0", 192 | "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", 193 | "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", 194 | "engines": { 195 | "node": ">=4" 196 | } 197 | }, 198 | "node_modules/cacheable-request/node_modules/lowercase-keys": { 199 | "version": "1.0.0", 200 | "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.0.tgz", 201 | "integrity": "sha1-TjNms55/VFfjXxMkvfb4jQv8cwY=", 202 | "engines": { 203 | "node": ">=0.10.0" 204 | } 205 | }, 206 | "node_modules/chalk": { 207 | "version": "5.2.0", 208 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz", 209 | "integrity": "sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==", 210 | "engines": { 211 | "node": "^12.17.0 || ^14.13 || >=16.0.0" 212 | }, 213 | "funding": { 214 | "url": "https://github.com/chalk/chalk?sponsor=1" 215 | } 216 | }, 217 | "node_modules/cli-cursor": { 218 | "version": "4.0.0", 219 | "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-4.0.0.tgz", 220 | "integrity": "sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==", 221 | "dependencies": { 222 | "restore-cursor": "^4.0.0" 223 | }, 224 | "engines": { 225 | "node": "^12.20.0 || ^14.13.1 || >=16.0.0" 226 | }, 227 | "funding": { 228 | "url": "https://github.com/sponsors/sindresorhus" 229 | } 230 | }, 231 | "node_modules/cli-spinners": { 232 | "version": "2.6.1", 233 | "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.1.tgz", 234 | "integrity": "sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g==", 235 | "engines": { 236 | "node": ">=6" 237 | }, 238 | "funding": { 239 | "url": "https://github.com/sponsors/sindresorhus" 240 | } 241 | }, 242 | "node_modules/clone": { 243 | "version": "1.0.4", 244 | "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", 245 | "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", 246 | "engines": { 247 | "node": ">=0.8" 248 | } 249 | }, 250 | "node_modules/clone-response": { 251 | "version": "1.0.2", 252 | "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", 253 | "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", 254 | "dependencies": { 255 | "mimic-response": "^1.0.0" 256 | } 257 | }, 258 | "node_modules/commander": { 259 | "version": "10.0.0", 260 | "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.0.tgz", 261 | "integrity": "sha512-zS5PnTI22FIRM6ylNW8G4Ap0IEOyk62fhLSD0+uHRT9McRCLGpkVNvao4bjimpK/GShynyQkFFxHhwMcETmduA==", 262 | "engines": { 263 | "node": ">=14" 264 | } 265 | }, 266 | "node_modules/content-disposition": { 267 | "version": "0.5.3", 268 | "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", 269 | "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", 270 | "dependencies": { 271 | "safe-buffer": "5.1.2" 272 | }, 273 | "engines": { 274 | "node": ">= 0.6" 275 | } 276 | }, 277 | "node_modules/core-util-is": { 278 | "version": "1.0.2", 279 | "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", 280 | "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" 281 | }, 282 | "node_modules/cross-spawn": { 283 | "version": "7.0.3", 284 | "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", 285 | "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", 286 | "dependencies": { 287 | "path-key": "^3.1.0", 288 | "shebang-command": "^2.0.0", 289 | "which": "^2.0.1" 290 | }, 291 | "engines": { 292 | "node": ">= 8" 293 | } 294 | }, 295 | "node_modules/decode-uri-component": { 296 | "version": "0.2.0", 297 | "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", 298 | "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", 299 | "engines": { 300 | "node": ">=0.10" 301 | } 302 | }, 303 | "node_modules/decompress": { 304 | "version": "4.2.1", 305 | "resolved": "https://registry.npmjs.org/decompress/-/decompress-4.2.1.tgz", 306 | "integrity": "sha512-e48kc2IjU+2Zw8cTb6VZcJQ3lgVbS4uuB1TfCHbiZIP/haNXm+SVyhu+87jts5/3ROpd82GSVCoNs/z8l4ZOaQ==", 307 | "dependencies": { 308 | "decompress-tar": "^4.0.0", 309 | "decompress-tarbz2": "^4.0.0", 310 | "decompress-targz": "^4.0.0", 311 | "decompress-unzip": "^4.0.1", 312 | "graceful-fs": "^4.1.10", 313 | "make-dir": "^1.0.0", 314 | "pify": "^2.3.0", 315 | "strip-dirs": "^2.0.0" 316 | }, 317 | "engines": { 318 | "node": ">=4" 319 | } 320 | }, 321 | "node_modules/decompress-response": { 322 | "version": "3.3.0", 323 | "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", 324 | "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", 325 | "dependencies": { 326 | "mimic-response": "^1.0.0" 327 | }, 328 | "engines": { 329 | "node": ">=4" 330 | } 331 | }, 332 | "node_modules/decompress-tar": { 333 | "version": "4.1.1", 334 | "resolved": "https://registry.npmjs.org/decompress-tar/-/decompress-tar-4.1.1.tgz", 335 | "integrity": "sha512-JdJMaCrGpB5fESVyxwpCx4Jdj2AagLmv3y58Qy4GE6HMVjWz1FeVQk1Ct4Kye7PftcdOo/7U7UKzYBJgqnGeUQ==", 336 | "dependencies": { 337 | "file-type": "^5.2.0", 338 | "is-stream": "^1.1.0", 339 | "tar-stream": "^1.5.2" 340 | }, 341 | "engines": { 342 | "node": ">=4" 343 | } 344 | }, 345 | "node_modules/decompress-tar/node_modules/file-type": { 346 | "version": "5.2.0", 347 | "resolved": "https://registry.npmjs.org/file-type/-/file-type-5.2.0.tgz", 348 | "integrity": "sha1-LdvqfHP/42No365J3DOMBYwritY=", 349 | "engines": { 350 | "node": ">=4" 351 | } 352 | }, 353 | "node_modules/decompress-tarbz2": { 354 | "version": "4.1.1", 355 | "resolved": "https://registry.npmjs.org/decompress-tarbz2/-/decompress-tarbz2-4.1.1.tgz", 356 | "integrity": "sha512-s88xLzf1r81ICXLAVQVzaN6ZmX4A6U4z2nMbOwobxkLoIIfjVMBg7TeguTUXkKeXni795B6y5rnvDw7rxhAq9A==", 357 | "dependencies": { 358 | "decompress-tar": "^4.1.0", 359 | "file-type": "^6.1.0", 360 | "is-stream": "^1.1.0", 361 | "seek-bzip": "^1.0.5", 362 | "unbzip2-stream": "^1.0.9" 363 | }, 364 | "engines": { 365 | "node": ">=4" 366 | } 367 | }, 368 | "node_modules/decompress-tarbz2/node_modules/file-type": { 369 | "version": "6.2.0", 370 | "resolved": "https://registry.npmjs.org/file-type/-/file-type-6.2.0.tgz", 371 | "integrity": "sha512-YPcTBDV+2Tm0VqjybVd32MHdlEGAtuxS3VAYsumFokDSMG+ROT5wawGlnHDoz7bfMcMDt9hxuXvXwoKUx2fkOg==", 372 | "engines": { 373 | "node": ">=4" 374 | } 375 | }, 376 | "node_modules/decompress-targz": { 377 | "version": "4.1.1", 378 | "resolved": "https://registry.npmjs.org/decompress-targz/-/decompress-targz-4.1.1.tgz", 379 | "integrity": "sha512-4z81Znfr6chWnRDNfFNqLwPvm4db3WuZkqV+UgXQzSngG3CEKdBkw5jrv3axjjL96glyiiKjsxJG3X6WBZwX3w==", 380 | "dependencies": { 381 | "decompress-tar": "^4.1.1", 382 | "file-type": "^5.2.0", 383 | "is-stream": "^1.1.0" 384 | }, 385 | "engines": { 386 | "node": ">=4" 387 | } 388 | }, 389 | "node_modules/decompress-targz/node_modules/file-type": { 390 | "version": "5.2.0", 391 | "resolved": "https://registry.npmjs.org/file-type/-/file-type-5.2.0.tgz", 392 | "integrity": "sha1-LdvqfHP/42No365J3DOMBYwritY=", 393 | "engines": { 394 | "node": ">=4" 395 | } 396 | }, 397 | "node_modules/decompress-unzip": { 398 | "version": "4.0.1", 399 | "resolved": "https://registry.npmjs.org/decompress-unzip/-/decompress-unzip-4.0.1.tgz", 400 | "integrity": "sha1-3qrM39FK6vhVePczroIQ+bSEj2k=", 401 | "dependencies": { 402 | "file-type": "^3.8.0", 403 | "get-stream": "^2.2.0", 404 | "pify": "^2.3.0", 405 | "yauzl": "^2.4.2" 406 | }, 407 | "engines": { 408 | "node": ">=4" 409 | } 410 | }, 411 | "node_modules/decompress-unzip/node_modules/file-type": { 412 | "version": "3.9.0", 413 | "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", 414 | "integrity": "sha1-JXoHg4TR24CHvESdEH1SpSZyuek=", 415 | "engines": { 416 | "node": ">=0.10.0" 417 | } 418 | }, 419 | "node_modules/decompress-unzip/node_modules/get-stream": { 420 | "version": "2.3.1", 421 | "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-2.3.1.tgz", 422 | "integrity": "sha1-Xzj5PzRgCWZu4BUKBUFn+Rvdld4=", 423 | "dependencies": { 424 | "object-assign": "^4.0.1", 425 | "pinkie-promise": "^2.0.0" 426 | }, 427 | "engines": { 428 | "node": ">=0.10.0" 429 | } 430 | }, 431 | "node_modules/decompress-unzip/node_modules/pify": { 432 | "version": "2.3.0", 433 | "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", 434 | "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", 435 | "engines": { 436 | "node": ">=0.10.0" 437 | } 438 | }, 439 | "node_modules/decompress/node_modules/make-dir": { 440 | "version": "1.3.0", 441 | "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", 442 | "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", 443 | "dependencies": { 444 | "pify": "^3.0.0" 445 | }, 446 | "engines": { 447 | "node": ">=4" 448 | } 449 | }, 450 | "node_modules/decompress/node_modules/make-dir/node_modules/pify": { 451 | "version": "3.0.0", 452 | "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", 453 | "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", 454 | "engines": { 455 | "node": ">=4" 456 | } 457 | }, 458 | "node_modules/decompress/node_modules/pify": { 459 | "version": "2.3.0", 460 | "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", 461 | "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", 462 | "engines": { 463 | "node": ">=0.10.0" 464 | } 465 | }, 466 | "node_modules/defaults": { 467 | "version": "1.0.3", 468 | "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", 469 | "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", 470 | "dependencies": { 471 | "clone": "^1.0.2" 472 | } 473 | }, 474 | "node_modules/download": { 475 | "version": "8.0.0", 476 | "resolved": "https://registry.npmjs.org/download/-/download-8.0.0.tgz", 477 | "integrity": "sha512-ASRY5QhDk7FK+XrQtQyvhpDKanLluEEQtWl/J7Lxuf/b+i8RYh997QeXvL85xitrmRKVlx9c7eTrcRdq2GS4eA==", 478 | "dependencies": { 479 | "archive-type": "^4.0.0", 480 | "content-disposition": "^0.5.2", 481 | "decompress": "^4.2.1", 482 | "ext-name": "^5.0.0", 483 | "file-type": "^11.1.0", 484 | "filenamify": "^3.0.0", 485 | "get-stream": "^4.1.0", 486 | "got": "^8.3.1", 487 | "make-dir": "^2.1.0", 488 | "p-event": "^2.1.0", 489 | "pify": "^4.0.1" 490 | }, 491 | "engines": { 492 | "node": ">=10" 493 | } 494 | }, 495 | "node_modules/duplexer3": { 496 | "version": "0.1.4", 497 | "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", 498 | "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=" 499 | }, 500 | "node_modules/end-of-stream": { 501 | "version": "1.4.4", 502 | "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", 503 | "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", 504 | "dependencies": { 505 | "once": "^1.4.0" 506 | } 507 | }, 508 | "node_modules/escape-string-regexp": { 509 | "version": "1.0.5", 510 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", 511 | "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", 512 | "engines": { 513 | "node": ">=0.8.0" 514 | } 515 | }, 516 | "node_modules/execa": { 517 | "version": "6.1.0", 518 | "resolved": "https://registry.npmjs.org/execa/-/execa-6.1.0.tgz", 519 | "integrity": "sha512-QVWlX2e50heYJcCPG0iWtf8r0xjEYfz/OYLGDYH+IyjWezzPNxz63qNFOu0l4YftGWuizFVZHHs8PrLU5p2IDA==", 520 | "dependencies": { 521 | "cross-spawn": "^7.0.3", 522 | "get-stream": "^6.0.1", 523 | "human-signals": "^3.0.1", 524 | "is-stream": "^3.0.0", 525 | "merge-stream": "^2.0.0", 526 | "npm-run-path": "^5.1.0", 527 | "onetime": "^6.0.0", 528 | "signal-exit": "^3.0.7", 529 | "strip-final-newline": "^3.0.0" 530 | }, 531 | "engines": { 532 | "node": "^12.20.0 || ^14.13.1 || >=16.0.0" 533 | }, 534 | "funding": { 535 | "url": "https://github.com/sindresorhus/execa?sponsor=1" 536 | } 537 | }, 538 | "node_modules/execa/node_modules/get-stream": { 539 | "version": "6.0.1", 540 | "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", 541 | "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", 542 | "engines": { 543 | "node": ">=10" 544 | }, 545 | "funding": { 546 | "url": "https://github.com/sponsors/sindresorhus" 547 | } 548 | }, 549 | "node_modules/execa/node_modules/is-stream": { 550 | "version": "3.0.0", 551 | "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", 552 | "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", 553 | "engines": { 554 | "node": "^12.20.0 || ^14.13.1 || >=16.0.0" 555 | }, 556 | "funding": { 557 | "url": "https://github.com/sponsors/sindresorhus" 558 | } 559 | }, 560 | "node_modules/execa/node_modules/mimic-fn": { 561 | "version": "4.0.0", 562 | "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", 563 | "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", 564 | "engines": { 565 | "node": ">=12" 566 | }, 567 | "funding": { 568 | "url": "https://github.com/sponsors/sindresorhus" 569 | } 570 | }, 571 | "node_modules/execa/node_modules/onetime": { 572 | "version": "6.0.0", 573 | "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", 574 | "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", 575 | "dependencies": { 576 | "mimic-fn": "^4.0.0" 577 | }, 578 | "engines": { 579 | "node": ">=12" 580 | }, 581 | "funding": { 582 | "url": "https://github.com/sponsors/sindresorhus" 583 | } 584 | }, 585 | "node_modules/ext-list": { 586 | "version": "2.2.2", 587 | "resolved": "https://registry.npmjs.org/ext-list/-/ext-list-2.2.2.tgz", 588 | "integrity": "sha512-u+SQgsubraE6zItfVA0tBuCBhfU9ogSRnsvygI7wht9TS510oLkBRXBsqopeUG/GBOIQyKZO9wjTqIu/sf5zFA==", 589 | "dependencies": { 590 | "mime-db": "^1.28.0" 591 | }, 592 | "engines": { 593 | "node": ">=0.10.0" 594 | } 595 | }, 596 | "node_modules/ext-name": { 597 | "version": "5.0.0", 598 | "resolved": "https://registry.npmjs.org/ext-name/-/ext-name-5.0.0.tgz", 599 | "integrity": "sha512-yblEwXAbGv1VQDmow7s38W77hzAgJAO50ztBLMcUyUBfxv1HC+LGwtiEN+Co6LtlqT/5uwVOxsD4TNIilWhwdQ==", 600 | "dependencies": { 601 | "ext-list": "^2.0.0", 602 | "sort-keys-length": "^1.0.0" 603 | }, 604 | "engines": { 605 | "node": ">=4" 606 | } 607 | }, 608 | "node_modules/fd-slicer": { 609 | "version": "1.1.0", 610 | "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", 611 | "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=", 612 | "dependencies": { 613 | "pend": "~1.2.0" 614 | } 615 | }, 616 | "node_modules/file-type": { 617 | "version": "11.1.0", 618 | "resolved": "https://registry.npmjs.org/file-type/-/file-type-11.1.0.tgz", 619 | "integrity": "sha512-rM0UO7Qm9K7TWTtA6AShI/t7H5BPjDeGVDaNyg9BjHAj3PysKy7+8C8D137R88jnR3rFJZQB/tFgydl5sN5m7g==", 620 | "engines": { 621 | "node": ">=6" 622 | } 623 | }, 624 | "node_modules/filename-reserved-regex": { 625 | "version": "2.0.0", 626 | "resolved": "https://registry.npmjs.org/filename-reserved-regex/-/filename-reserved-regex-2.0.0.tgz", 627 | "integrity": "sha1-q/c9+rc10EVECr/qLZHzieu/oik=", 628 | "engines": { 629 | "node": ">=4" 630 | } 631 | }, 632 | "node_modules/filenamify": { 633 | "version": "3.0.0", 634 | "resolved": "https://registry.npmjs.org/filenamify/-/filenamify-3.0.0.tgz", 635 | "integrity": "sha512-5EFZ//MsvJgXjBAFJ+Bh2YaCTRF/VP1YOmGrgt+KJ4SFRLjI87EIdwLLuT6wQX0I4F9W41xutobzczjsOKlI/g==", 636 | "dependencies": { 637 | "filename-reserved-regex": "^2.0.0", 638 | "strip-outer": "^1.0.0", 639 | "trim-repeated": "^1.0.0" 640 | }, 641 | "engines": { 642 | "node": ">=6" 643 | } 644 | }, 645 | "node_modules/from2": { 646 | "version": "2.3.0", 647 | "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", 648 | "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", 649 | "dependencies": { 650 | "inherits": "^2.0.1", 651 | "readable-stream": "^2.0.0" 652 | } 653 | }, 654 | "node_modules/fs-constants": { 655 | "version": "1.0.0", 656 | "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", 657 | "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" 658 | }, 659 | "node_modules/get-stream": { 660 | "version": "4.1.0", 661 | "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", 662 | "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", 663 | "dependencies": { 664 | "pump": "^3.0.0" 665 | }, 666 | "engines": { 667 | "node": ">=6" 668 | } 669 | }, 670 | "node_modules/got": { 671 | "version": "8.3.2", 672 | "resolved": "https://registry.npmjs.org/got/-/got-8.3.2.tgz", 673 | "integrity": "sha512-qjUJ5U/hawxosMryILofZCkm3C84PLJS/0grRIpjAwu+Lkxxj5cxeCU25BG0/3mDSpXKTyZr8oh8wIgLaH0QCw==", 674 | "dependencies": { 675 | "@sindresorhus/is": "^0.7.0", 676 | "cacheable-request": "^2.1.1", 677 | "decompress-response": "^3.3.0", 678 | "duplexer3": "^0.1.4", 679 | "get-stream": "^3.0.0", 680 | "into-stream": "^3.1.0", 681 | "is-retry-allowed": "^1.1.0", 682 | "isurl": "^1.0.0-alpha5", 683 | "lowercase-keys": "^1.0.0", 684 | "mimic-response": "^1.0.0", 685 | "p-cancelable": "^0.4.0", 686 | "p-timeout": "^2.0.1", 687 | "pify": "^3.0.0", 688 | "safe-buffer": "^5.1.1", 689 | "timed-out": "^4.0.1", 690 | "url-parse-lax": "^3.0.0", 691 | "url-to-options": "^1.0.1" 692 | }, 693 | "engines": { 694 | "node": ">=4" 695 | } 696 | }, 697 | "node_modules/got/node_modules/get-stream": { 698 | "version": "3.0.0", 699 | "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", 700 | "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", 701 | "engines": { 702 | "node": ">=4" 703 | } 704 | }, 705 | "node_modules/got/node_modules/pify": { 706 | "version": "3.0.0", 707 | "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", 708 | "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", 709 | "engines": { 710 | "node": ">=4" 711 | } 712 | }, 713 | "node_modules/graceful-fs": { 714 | "version": "4.2.6", 715 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", 716 | "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==" 717 | }, 718 | "node_modules/has-symbol-support-x": { 719 | "version": "1.4.2", 720 | "resolved": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.2.tgz", 721 | "integrity": "sha512-3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw==", 722 | "engines": { 723 | "node": "*" 724 | } 725 | }, 726 | "node_modules/has-to-string-tag-x": { 727 | "version": "1.4.1", 728 | "resolved": "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz", 729 | "integrity": "sha512-vdbKfmw+3LoOYVr+mtxHaX5a96+0f3DljYd8JOqvOLsf5mw2Otda2qCDT9qRqLAhrjyQ0h7ual5nOiASpsGNFw==", 730 | "dependencies": { 731 | "has-symbol-support-x": "^1.4.1" 732 | }, 733 | "engines": { 734 | "node": "*" 735 | } 736 | }, 737 | "node_modules/http-cache-semantics": { 738 | "version": "3.8.1", 739 | "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz", 740 | "integrity": "sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==" 741 | }, 742 | "node_modules/human-signals": { 743 | "version": "3.0.1", 744 | "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-3.0.1.tgz", 745 | "integrity": "sha512-rQLskxnM/5OCldHo+wNXbpVgDn5A17CUoKX+7Sokwaknlq7CdSnphy0W39GU8dw59XiCXmFXDg4fRuckQRKewQ==", 746 | "engines": { 747 | "node": ">=12.20.0" 748 | } 749 | }, 750 | "node_modules/ieee754": { 751 | "version": "1.2.1", 752 | "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", 753 | "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", 754 | "funding": [ 755 | { 756 | "type": "github", 757 | "url": "https://github.com/sponsors/feross" 758 | }, 759 | { 760 | "type": "patreon", 761 | "url": "https://www.patreon.com/feross" 762 | }, 763 | { 764 | "type": "consulting", 765 | "url": "https://feross.org/support" 766 | } 767 | ] 768 | }, 769 | "node_modules/inherits": { 770 | "version": "2.0.4", 771 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", 772 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" 773 | }, 774 | "node_modules/into-stream": { 775 | "version": "3.1.0", 776 | "resolved": "https://registry.npmjs.org/into-stream/-/into-stream-3.1.0.tgz", 777 | "integrity": "sha1-lvsKk2wSur1v8XUqF9BWFqvQlMY=", 778 | "dependencies": { 779 | "from2": "^2.1.1", 780 | "p-is-promise": "^1.1.0" 781 | }, 782 | "engines": { 783 | "node": ">=4" 784 | } 785 | }, 786 | "node_modules/is-interactive": { 787 | "version": "2.0.0", 788 | "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-2.0.0.tgz", 789 | "integrity": "sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ==", 790 | "engines": { 791 | "node": ">=12" 792 | }, 793 | "funding": { 794 | "url": "https://github.com/sponsors/sindresorhus" 795 | } 796 | }, 797 | "node_modules/is-natural-number": { 798 | "version": "4.0.1", 799 | "resolved": "https://registry.npmjs.org/is-natural-number/-/is-natural-number-4.0.1.tgz", 800 | "integrity": "sha1-q5124dtM7VHjXeDHLr7PCfc0zeg=" 801 | }, 802 | "node_modules/is-object": { 803 | "version": "1.0.2", 804 | "resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.2.tgz", 805 | "integrity": "sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA==", 806 | "funding": { 807 | "url": "https://github.com/sponsors/ljharb" 808 | } 809 | }, 810 | "node_modules/is-plain-obj": { 811 | "version": "1.1.0", 812 | "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", 813 | "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", 814 | "engines": { 815 | "node": ">=0.10.0" 816 | } 817 | }, 818 | "node_modules/is-retry-allowed": { 819 | "version": "1.2.0", 820 | "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz", 821 | "integrity": "sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==", 822 | "engines": { 823 | "node": ">=0.10.0" 824 | } 825 | }, 826 | "node_modules/is-stream": { 827 | "version": "1.1.0", 828 | "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", 829 | "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", 830 | "engines": { 831 | "node": ">=0.10.0" 832 | } 833 | }, 834 | "node_modules/is-unicode-supported": { 835 | "version": "1.2.0", 836 | "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.2.0.tgz", 837 | "integrity": "sha512-wH+U77omcRzevfIG8dDhTS0V9zZyweakfD01FULl97+0EHiJTTZtJqxPSkIIo/SDPv/i07k/C9jAPY+jwLLeUQ==", 838 | "engines": { 839 | "node": ">=12" 840 | }, 841 | "funding": { 842 | "url": "https://github.com/sponsors/sindresorhus" 843 | } 844 | }, 845 | "node_modules/isarray": { 846 | "version": "1.0.0", 847 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", 848 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" 849 | }, 850 | "node_modules/isexe": { 851 | "version": "2.0.0", 852 | "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", 853 | "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" 854 | }, 855 | "node_modules/isurl": { 856 | "version": "1.0.0", 857 | "resolved": "https://registry.npmjs.org/isurl/-/isurl-1.0.0.tgz", 858 | "integrity": "sha512-1P/yWsxPlDtn7QeRD+ULKQPaIaN6yF368GZ2vDfv0AL0NwpStafjWCDDdn0k8wgFMWpVAqG7oJhxHnlud42i9w==", 859 | "dependencies": { 860 | "has-to-string-tag-x": "^1.2.0", 861 | "is-object": "^1.0.1" 862 | }, 863 | "engines": { 864 | "node": ">= 4" 865 | } 866 | }, 867 | "node_modules/json-buffer": { 868 | "version": "3.0.0", 869 | "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", 870 | "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=" 871 | }, 872 | "node_modules/keyv": { 873 | "version": "3.0.0", 874 | "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.0.0.tgz", 875 | "integrity": "sha512-eguHnq22OE3uVoSYG0LVWNP+4ppamWr9+zWBe1bsNcovIMy6huUJFPgy4mGwCd/rnl3vOLGW1MTlu4c57CT1xA==", 876 | "dependencies": { 877 | "json-buffer": "3.0.0" 878 | } 879 | }, 880 | "node_modules/kleur": { 881 | "version": "3.0.3", 882 | "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", 883 | "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", 884 | "engines": { 885 | "node": ">=6" 886 | } 887 | }, 888 | "node_modules/log-symbols": { 889 | "version": "5.1.0", 890 | "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-5.1.0.tgz", 891 | "integrity": "sha512-l0x2DvrW294C9uDCoQe1VSU4gf529FkSZ6leBl4TiqZH/e+0R7hSfHQBNut2mNygDgHwvYHfFLn6Oxb3VWj2rA==", 892 | "dependencies": { 893 | "chalk": "^5.0.0", 894 | "is-unicode-supported": "^1.1.0" 895 | }, 896 | "engines": { 897 | "node": ">=12" 898 | }, 899 | "funding": { 900 | "url": "https://github.com/sponsors/sindresorhus" 901 | } 902 | }, 903 | "node_modules/lowercase-keys": { 904 | "version": "1.0.1", 905 | "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", 906 | "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", 907 | "engines": { 908 | "node": ">=0.10.0" 909 | } 910 | }, 911 | "node_modules/make-dir": { 912 | "version": "2.1.0", 913 | "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", 914 | "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", 915 | "dependencies": { 916 | "pify": "^4.0.1", 917 | "semver": "^5.6.0" 918 | }, 919 | "engines": { 920 | "node": ">=6" 921 | } 922 | }, 923 | "node_modules/merge-stream": { 924 | "version": "2.0.0", 925 | "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", 926 | "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" 927 | }, 928 | "node_modules/mime-db": { 929 | "version": "1.47.0", 930 | "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.47.0.tgz", 931 | "integrity": "sha512-QBmA/G2y+IfeS4oktet3qRZ+P5kPhCKRXxXnQEudYqUaEioAU1/Lq2us3D/t1Jfo4hE9REQPrbB7K5sOczJVIw==", 932 | "engines": { 933 | "node": ">= 0.6" 934 | } 935 | }, 936 | "node_modules/mimic-fn": { 937 | "version": "2.1.0", 938 | "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", 939 | "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", 940 | "engines": { 941 | "node": ">=6" 942 | } 943 | }, 944 | "node_modules/mimic-response": { 945 | "version": "1.0.1", 946 | "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", 947 | "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", 948 | "engines": { 949 | "node": ">=4" 950 | } 951 | }, 952 | "node_modules/normalize-url": { 953 | "version": "2.0.1", 954 | "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-2.0.1.tgz", 955 | "integrity": "sha512-D6MUW4K/VzoJ4rJ01JFKxDrtY1v9wrgzCX5f2qj/lzH1m/lW6MhUZFKerVsnyjOhOsYzI9Kqqak+10l4LvLpMw==", 956 | "dependencies": { 957 | "prepend-http": "^2.0.0", 958 | "query-string": "^5.0.1", 959 | "sort-keys": "^2.0.0" 960 | }, 961 | "engines": { 962 | "node": ">=4" 963 | } 964 | }, 965 | "node_modules/npm-run-path": { 966 | "version": "5.1.0", 967 | "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", 968 | "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", 969 | "dependencies": { 970 | "path-key": "^4.0.0" 971 | }, 972 | "engines": { 973 | "node": "^12.20.0 || ^14.13.1 || >=16.0.0" 974 | }, 975 | "funding": { 976 | "url": "https://github.com/sponsors/sindresorhus" 977 | } 978 | }, 979 | "node_modules/npm-run-path/node_modules/path-key": { 980 | "version": "4.0.0", 981 | "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", 982 | "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", 983 | "engines": { 984 | "node": ">=12" 985 | }, 986 | "funding": { 987 | "url": "https://github.com/sponsors/sindresorhus" 988 | } 989 | }, 990 | "node_modules/object-assign": { 991 | "version": "4.1.1", 992 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", 993 | "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", 994 | "engines": { 995 | "node": ">=0.10.0" 996 | } 997 | }, 998 | "node_modules/once": { 999 | "version": "1.4.0", 1000 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 1001 | "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", 1002 | "dependencies": { 1003 | "wrappy": "1" 1004 | } 1005 | }, 1006 | "node_modules/onetime": { 1007 | "version": "5.1.2", 1008 | "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", 1009 | "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", 1010 | "dependencies": { 1011 | "mimic-fn": "^2.1.0" 1012 | }, 1013 | "engines": { 1014 | "node": ">=6" 1015 | }, 1016 | "funding": { 1017 | "url": "https://github.com/sponsors/sindresorhus" 1018 | } 1019 | }, 1020 | "node_modules/ora": { 1021 | "version": "6.1.2", 1022 | "resolved": "https://registry.npmjs.org/ora/-/ora-6.1.2.tgz", 1023 | "integrity": "sha512-EJQ3NiP5Xo94wJXIzAyOtSb0QEIAUu7m8t6UZ9krbz0vAJqr92JpcK/lEXg91q6B9pEGqrykkd2EQplnifDSBw==", 1024 | "dependencies": { 1025 | "bl": "^5.0.0", 1026 | "chalk": "^5.0.0", 1027 | "cli-cursor": "^4.0.0", 1028 | "cli-spinners": "^2.6.1", 1029 | "is-interactive": "^2.0.0", 1030 | "is-unicode-supported": "^1.1.0", 1031 | "log-symbols": "^5.1.0", 1032 | "strip-ansi": "^7.0.1", 1033 | "wcwidth": "^1.0.1" 1034 | }, 1035 | "engines": { 1036 | "node": "^12.20.0 || ^14.13.1 || >=16.0.0" 1037 | }, 1038 | "funding": { 1039 | "url": "https://github.com/sponsors/sindresorhus" 1040 | } 1041 | }, 1042 | "node_modules/p-cancelable": { 1043 | "version": "0.4.1", 1044 | "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.4.1.tgz", 1045 | "integrity": "sha512-HNa1A8LvB1kie7cERyy21VNeHb2CWJJYqyyC2o3klWFfMGlFmWv2Z7sFgZH8ZiaYL95ydToKTFVXgMV/Os0bBQ==", 1046 | "engines": { 1047 | "node": ">=4" 1048 | } 1049 | }, 1050 | "node_modules/p-event": { 1051 | "version": "2.3.1", 1052 | "resolved": "https://registry.npmjs.org/p-event/-/p-event-2.3.1.tgz", 1053 | "integrity": "sha512-NQCqOFhbpVTMX4qMe8PF8lbGtzZ+LCiN7pcNrb/413Na7+TRoe1xkKUzuWa/YEJdGQ0FvKtj35EEbDoVPO2kbA==", 1054 | "dependencies": { 1055 | "p-timeout": "^2.0.1" 1056 | }, 1057 | "engines": { 1058 | "node": ">=6" 1059 | } 1060 | }, 1061 | "node_modules/p-finally": { 1062 | "version": "1.0.0", 1063 | "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", 1064 | "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", 1065 | "engines": { 1066 | "node": ">=4" 1067 | } 1068 | }, 1069 | "node_modules/p-is-promise": { 1070 | "version": "1.1.0", 1071 | "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-1.1.0.tgz", 1072 | "integrity": "sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4=", 1073 | "engines": { 1074 | "node": ">=4" 1075 | } 1076 | }, 1077 | "node_modules/p-timeout": { 1078 | "version": "2.0.1", 1079 | "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-2.0.1.tgz", 1080 | "integrity": "sha512-88em58dDVB/KzPEx1X0N3LwFfYZPyDc4B6eF38M1rk9VTZMbxXXgjugz8mmwpS9Ox4BDZ+t6t3QP5+/gazweIA==", 1081 | "dependencies": { 1082 | "p-finally": "^1.0.0" 1083 | }, 1084 | "engines": { 1085 | "node": ">=4" 1086 | } 1087 | }, 1088 | "node_modules/path-key": { 1089 | "version": "3.1.1", 1090 | "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", 1091 | "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", 1092 | "engines": { 1093 | "node": ">=8" 1094 | } 1095 | }, 1096 | "node_modules/pend": { 1097 | "version": "1.2.0", 1098 | "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", 1099 | "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=" 1100 | }, 1101 | "node_modules/pify": { 1102 | "version": "4.0.1", 1103 | "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", 1104 | "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", 1105 | "engines": { 1106 | "node": ">=6" 1107 | } 1108 | }, 1109 | "node_modules/pinkie": { 1110 | "version": "2.0.4", 1111 | "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", 1112 | "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", 1113 | "engines": { 1114 | "node": ">=0.10.0" 1115 | } 1116 | }, 1117 | "node_modules/pinkie-promise": { 1118 | "version": "2.0.1", 1119 | "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", 1120 | "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", 1121 | "dependencies": { 1122 | "pinkie": "^2.0.0" 1123 | }, 1124 | "engines": { 1125 | "node": ">=0.10.0" 1126 | } 1127 | }, 1128 | "node_modules/prepend-http": { 1129 | "version": "2.0.0", 1130 | "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", 1131 | "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", 1132 | "engines": { 1133 | "node": ">=4" 1134 | } 1135 | }, 1136 | "node_modules/process-nextick-args": { 1137 | "version": "2.0.1", 1138 | "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", 1139 | "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" 1140 | }, 1141 | "node_modules/prompts": { 1142 | "version": "2.4.2", 1143 | "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", 1144 | "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", 1145 | "dependencies": { 1146 | "kleur": "^3.0.3", 1147 | "sisteransi": "^1.0.5" 1148 | }, 1149 | "engines": { 1150 | "node": ">= 6" 1151 | } 1152 | }, 1153 | "node_modules/pump": { 1154 | "version": "3.0.0", 1155 | "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", 1156 | "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", 1157 | "dependencies": { 1158 | "end-of-stream": "^1.1.0", 1159 | "once": "^1.3.1" 1160 | } 1161 | }, 1162 | "node_modules/query-string": { 1163 | "version": "5.1.1", 1164 | "resolved": "https://registry.npmjs.org/query-string/-/query-string-5.1.1.tgz", 1165 | "integrity": "sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw==", 1166 | "dependencies": { 1167 | "decode-uri-component": "^0.2.0", 1168 | "object-assign": "^4.1.0", 1169 | "strict-uri-encode": "^1.0.0" 1170 | }, 1171 | "engines": { 1172 | "node": ">=0.10.0" 1173 | } 1174 | }, 1175 | "node_modules/readable-stream": { 1176 | "version": "2.3.7", 1177 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", 1178 | "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", 1179 | "dependencies": { 1180 | "core-util-is": "~1.0.0", 1181 | "inherits": "~2.0.3", 1182 | "isarray": "~1.0.0", 1183 | "process-nextick-args": "~2.0.0", 1184 | "safe-buffer": "~5.1.1", 1185 | "string_decoder": "~1.1.1", 1186 | "util-deprecate": "~1.0.1" 1187 | } 1188 | }, 1189 | "node_modules/responselike": { 1190 | "version": "1.0.2", 1191 | "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", 1192 | "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", 1193 | "dependencies": { 1194 | "lowercase-keys": "^1.0.0" 1195 | } 1196 | }, 1197 | "node_modules/restore-cursor": { 1198 | "version": "4.0.0", 1199 | "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-4.0.0.tgz", 1200 | "integrity": "sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==", 1201 | "dependencies": { 1202 | "onetime": "^5.1.0", 1203 | "signal-exit": "^3.0.2" 1204 | }, 1205 | "engines": { 1206 | "node": "^12.20.0 || ^14.13.1 || >=16.0.0" 1207 | }, 1208 | "funding": { 1209 | "url": "https://github.com/sponsors/sindresorhus" 1210 | } 1211 | }, 1212 | "node_modules/safe-buffer": { 1213 | "version": "5.1.2", 1214 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", 1215 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" 1216 | }, 1217 | "node_modules/seek-bzip": { 1218 | "version": "1.0.6", 1219 | "resolved": "https://registry.npmjs.org/seek-bzip/-/seek-bzip-1.0.6.tgz", 1220 | "integrity": "sha512-e1QtP3YL5tWww8uKaOCQ18UxIT2laNBXHjV/S2WYCiK4udiv8lkG89KRIoCjUagnAmCBurjF4zEVX2ByBbnCjQ==", 1221 | "dependencies": { 1222 | "commander": "^2.8.1" 1223 | }, 1224 | "bin": { 1225 | "seek-bunzip": "bin/seek-bunzip", 1226 | "seek-table": "bin/seek-bzip-table" 1227 | } 1228 | }, 1229 | "node_modules/seek-bzip/node_modules/commander": { 1230 | "version": "2.20.3", 1231 | "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", 1232 | "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" 1233 | }, 1234 | "node_modules/semver": { 1235 | "version": "5.7.1", 1236 | "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", 1237 | "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", 1238 | "bin": { 1239 | "semver": "bin/semver" 1240 | } 1241 | }, 1242 | "node_modules/shebang-command": { 1243 | "version": "2.0.0", 1244 | "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", 1245 | "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", 1246 | "dependencies": { 1247 | "shebang-regex": "^3.0.0" 1248 | }, 1249 | "engines": { 1250 | "node": ">=8" 1251 | } 1252 | }, 1253 | "node_modules/shebang-regex": { 1254 | "version": "3.0.0", 1255 | "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", 1256 | "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", 1257 | "engines": { 1258 | "node": ">=8" 1259 | } 1260 | }, 1261 | "node_modules/signal-exit": { 1262 | "version": "3.0.7", 1263 | "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", 1264 | "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" 1265 | }, 1266 | "node_modules/sisteransi": { 1267 | "version": "1.0.5", 1268 | "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", 1269 | "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==" 1270 | }, 1271 | "node_modules/sort-keys": { 1272 | "version": "2.0.0", 1273 | "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz", 1274 | "integrity": "sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=", 1275 | "dependencies": { 1276 | "is-plain-obj": "^1.0.0" 1277 | }, 1278 | "engines": { 1279 | "node": ">=4" 1280 | } 1281 | }, 1282 | "node_modules/sort-keys-length": { 1283 | "version": "1.0.1", 1284 | "resolved": "https://registry.npmjs.org/sort-keys-length/-/sort-keys-length-1.0.1.tgz", 1285 | "integrity": "sha1-nLb09OnkgVWmqgZx7dM2/xR5oYg=", 1286 | "dependencies": { 1287 | "sort-keys": "^1.0.0" 1288 | }, 1289 | "engines": { 1290 | "node": ">=0.10.0" 1291 | } 1292 | }, 1293 | "node_modules/sort-keys-length/node_modules/sort-keys": { 1294 | "version": "1.1.2", 1295 | "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz", 1296 | "integrity": "sha1-RBttTTRnmPG05J6JIK37oOVD+a0=", 1297 | "dependencies": { 1298 | "is-plain-obj": "^1.0.0" 1299 | }, 1300 | "engines": { 1301 | "node": ">=0.10.0" 1302 | } 1303 | }, 1304 | "node_modules/strict-uri-encode": { 1305 | "version": "1.1.0", 1306 | "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", 1307 | "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=", 1308 | "engines": { 1309 | "node": ">=0.10.0" 1310 | } 1311 | }, 1312 | "node_modules/string_decoder": { 1313 | "version": "1.1.1", 1314 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", 1315 | "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", 1316 | "dependencies": { 1317 | "safe-buffer": "~5.1.0" 1318 | } 1319 | }, 1320 | "node_modules/strip-ansi": { 1321 | "version": "7.0.1", 1322 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", 1323 | "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", 1324 | "dependencies": { 1325 | "ansi-regex": "^6.0.1" 1326 | }, 1327 | "engines": { 1328 | "node": ">=12" 1329 | }, 1330 | "funding": { 1331 | "url": "https://github.com/chalk/strip-ansi?sponsor=1" 1332 | } 1333 | }, 1334 | "node_modules/strip-dirs": { 1335 | "version": "2.1.0", 1336 | "resolved": "https://registry.npmjs.org/strip-dirs/-/strip-dirs-2.1.0.tgz", 1337 | "integrity": "sha512-JOCxOeKLm2CAS73y/U4ZeZPTkE+gNVCzKt7Eox84Iej1LT/2pTWYpZKJuxwQpvX1LiZb1xokNR7RLfuBAa7T3g==", 1338 | "dependencies": { 1339 | "is-natural-number": "^4.0.1" 1340 | } 1341 | }, 1342 | "node_modules/strip-final-newline": { 1343 | "version": "3.0.0", 1344 | "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", 1345 | "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", 1346 | "engines": { 1347 | "node": ">=12" 1348 | }, 1349 | "funding": { 1350 | "url": "https://github.com/sponsors/sindresorhus" 1351 | } 1352 | }, 1353 | "node_modules/strip-outer": { 1354 | "version": "1.0.1", 1355 | "resolved": "https://registry.npmjs.org/strip-outer/-/strip-outer-1.0.1.tgz", 1356 | "integrity": "sha512-k55yxKHwaXnpYGsOzg4Vl8+tDrWylxDEpknGjhTiZB8dFRU5rTo9CAzeycivxV3s+zlTKwrs6WxMxR95n26kwg==", 1357 | "dependencies": { 1358 | "escape-string-regexp": "^1.0.2" 1359 | }, 1360 | "engines": { 1361 | "node": ">=0.10.0" 1362 | } 1363 | }, 1364 | "node_modules/tar-stream": { 1365 | "version": "1.6.2", 1366 | "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.2.tgz", 1367 | "integrity": "sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==", 1368 | "dependencies": { 1369 | "bl": "^1.0.0", 1370 | "buffer-alloc": "^1.2.0", 1371 | "end-of-stream": "^1.0.0", 1372 | "fs-constants": "^1.0.0", 1373 | "readable-stream": "^2.3.0", 1374 | "to-buffer": "^1.1.1", 1375 | "xtend": "^4.0.0" 1376 | }, 1377 | "engines": { 1378 | "node": ">= 0.8.0" 1379 | } 1380 | }, 1381 | "node_modules/tar-stream/node_modules/bl": { 1382 | "version": "1.2.3", 1383 | "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.3.tgz", 1384 | "integrity": "sha512-pvcNpa0UU69UT341rO6AYy4FVAIkUHuZXRIWbq+zHnsVcRzDDjIAhGuuYoi0d//cwIwtt4pkpKycWEfjdV+vww==", 1385 | "dependencies": { 1386 | "readable-stream": "^2.3.5", 1387 | "safe-buffer": "^5.1.1" 1388 | } 1389 | }, 1390 | "node_modules/through": { 1391 | "version": "2.3.8", 1392 | "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", 1393 | "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" 1394 | }, 1395 | "node_modules/timed-out": { 1396 | "version": "4.0.1", 1397 | "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", 1398 | "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", 1399 | "engines": { 1400 | "node": ">=0.10.0" 1401 | } 1402 | }, 1403 | "node_modules/to-buffer": { 1404 | "version": "1.1.1", 1405 | "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz", 1406 | "integrity": "sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==" 1407 | }, 1408 | "node_modules/trim-repeated": { 1409 | "version": "1.0.0", 1410 | "resolved": "https://registry.npmjs.org/trim-repeated/-/trim-repeated-1.0.0.tgz", 1411 | "integrity": "sha1-42RqLqTokTEr9+rObPsFOAvAHCE=", 1412 | "dependencies": { 1413 | "escape-string-regexp": "^1.0.2" 1414 | }, 1415 | "engines": { 1416 | "node": ">=0.10.0" 1417 | } 1418 | }, 1419 | "node_modules/unbzip2-stream": { 1420 | "version": "1.4.3", 1421 | "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz", 1422 | "integrity": "sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==", 1423 | "dependencies": { 1424 | "buffer": "^5.2.1", 1425 | "through": "^2.3.8" 1426 | } 1427 | }, 1428 | "node_modules/url-parse-lax": { 1429 | "version": "3.0.0", 1430 | "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", 1431 | "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", 1432 | "dependencies": { 1433 | "prepend-http": "^2.0.0" 1434 | }, 1435 | "engines": { 1436 | "node": ">=4" 1437 | } 1438 | }, 1439 | "node_modules/url-to-options": { 1440 | "version": "1.0.1", 1441 | "resolved": "https://registry.npmjs.org/url-to-options/-/url-to-options-1.0.1.tgz", 1442 | "integrity": "sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k=", 1443 | "engines": { 1444 | "node": ">= 4" 1445 | } 1446 | }, 1447 | "node_modules/util-deprecate": { 1448 | "version": "1.0.2", 1449 | "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", 1450 | "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" 1451 | }, 1452 | "node_modules/wcwidth": { 1453 | "version": "1.0.1", 1454 | "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", 1455 | "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=", 1456 | "dependencies": { 1457 | "defaults": "^1.0.3" 1458 | } 1459 | }, 1460 | "node_modules/which": { 1461 | "version": "2.0.2", 1462 | "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", 1463 | "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", 1464 | "dependencies": { 1465 | "isexe": "^2.0.0" 1466 | }, 1467 | "bin": { 1468 | "node-which": "bin/node-which" 1469 | }, 1470 | "engines": { 1471 | "node": ">= 8" 1472 | } 1473 | }, 1474 | "node_modules/wrappy": { 1475 | "version": "1.0.2", 1476 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 1477 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" 1478 | }, 1479 | "node_modules/xtend": { 1480 | "version": "4.0.2", 1481 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", 1482 | "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", 1483 | "engines": { 1484 | "node": ">=0.4" 1485 | } 1486 | }, 1487 | "node_modules/yauzl": { 1488 | "version": "2.10.0", 1489 | "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", 1490 | "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=", 1491 | "dependencies": { 1492 | "buffer-crc32": "~0.2.3", 1493 | "fd-slicer": "~1.1.0" 1494 | } 1495 | } 1496 | }, 1497 | "dependencies": { 1498 | "@sindresorhus/is": { 1499 | "version": "0.7.0", 1500 | "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.7.0.tgz", 1501 | "integrity": "sha512-ONhaKPIufzzrlNbqtWFFd+jlnemX6lJAgq9ZeiZtS7I1PIf/la7CW4m83rTXRnVnsMbW2k56pGYu7AUFJD9Pow==" 1502 | }, 1503 | "ansi-regex": { 1504 | "version": "6.0.1", 1505 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", 1506 | "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==" 1507 | }, 1508 | "archive-type": { 1509 | "version": "4.0.0", 1510 | "resolved": "https://registry.npmjs.org/archive-type/-/archive-type-4.0.0.tgz", 1511 | "integrity": "sha1-+S5yIzBW38aWlHJ0nCZ72wRrHXA=", 1512 | "requires": { 1513 | "file-type": "^4.2.0" 1514 | }, 1515 | "dependencies": { 1516 | "file-type": { 1517 | "version": "4.4.0", 1518 | "resolved": "https://registry.npmjs.org/file-type/-/file-type-4.4.0.tgz", 1519 | "integrity": "sha1-G2AOX8ofvcboDApwxxyNul95BsU=" 1520 | } 1521 | } 1522 | }, 1523 | "base64-js": { 1524 | "version": "1.5.1", 1525 | "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", 1526 | "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" 1527 | }, 1528 | "bl": { 1529 | "version": "5.0.0", 1530 | "resolved": "https://registry.npmjs.org/bl/-/bl-5.0.0.tgz", 1531 | "integrity": "sha512-8vxFNZ0pflFfi0WXA3WQXlj6CaMEwsmh63I1CNp0q+wWv8sD0ARx1KovSQd0l2GkwrMIOyedq0EF1FxI+RCZLQ==", 1532 | "requires": { 1533 | "buffer": "^6.0.3", 1534 | "inherits": "^2.0.4", 1535 | "readable-stream": "^3.4.0" 1536 | }, 1537 | "dependencies": { 1538 | "buffer": { 1539 | "version": "6.0.3", 1540 | "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", 1541 | "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", 1542 | "requires": { 1543 | "base64-js": "^1.3.1", 1544 | "ieee754": "^1.2.1" 1545 | } 1546 | }, 1547 | "readable-stream": { 1548 | "version": "3.6.0", 1549 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", 1550 | "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", 1551 | "requires": { 1552 | "inherits": "^2.0.3", 1553 | "string_decoder": "^1.1.1", 1554 | "util-deprecate": "^1.0.1" 1555 | } 1556 | } 1557 | } 1558 | }, 1559 | "buffer": { 1560 | "version": "5.7.1", 1561 | "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", 1562 | "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", 1563 | "requires": { 1564 | "base64-js": "^1.3.1", 1565 | "ieee754": "^1.1.13" 1566 | } 1567 | }, 1568 | "buffer-alloc": { 1569 | "version": "1.2.0", 1570 | "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", 1571 | "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", 1572 | "requires": { 1573 | "buffer-alloc-unsafe": "^1.1.0", 1574 | "buffer-fill": "^1.0.0" 1575 | } 1576 | }, 1577 | "buffer-alloc-unsafe": { 1578 | "version": "1.1.0", 1579 | "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", 1580 | "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==" 1581 | }, 1582 | "buffer-crc32": { 1583 | "version": "0.2.13", 1584 | "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", 1585 | "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=" 1586 | }, 1587 | "buffer-fill": { 1588 | "version": "1.0.0", 1589 | "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", 1590 | "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=" 1591 | }, 1592 | "cacheable-request": { 1593 | "version": "2.1.4", 1594 | "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-2.1.4.tgz", 1595 | "integrity": "sha1-DYCIAbY0KtM8kd+dC0TcCbkeXD0=", 1596 | "requires": { 1597 | "clone-response": "1.0.2", 1598 | "get-stream": "3.0.0", 1599 | "http-cache-semantics": "3.8.1", 1600 | "keyv": "3.0.0", 1601 | "lowercase-keys": "1.0.0", 1602 | "normalize-url": "2.0.1", 1603 | "responselike": "1.0.2" 1604 | }, 1605 | "dependencies": { 1606 | "get-stream": { 1607 | "version": "3.0.0", 1608 | "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", 1609 | "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=" 1610 | }, 1611 | "lowercase-keys": { 1612 | "version": "1.0.0", 1613 | "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.0.tgz", 1614 | "integrity": "sha1-TjNms55/VFfjXxMkvfb4jQv8cwY=" 1615 | } 1616 | } 1617 | }, 1618 | "chalk": { 1619 | "version": "5.2.0", 1620 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz", 1621 | "integrity": "sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==" 1622 | }, 1623 | "cli-cursor": { 1624 | "version": "4.0.0", 1625 | "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-4.0.0.tgz", 1626 | "integrity": "sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==", 1627 | "requires": { 1628 | "restore-cursor": "^4.0.0" 1629 | } 1630 | }, 1631 | "cli-spinners": { 1632 | "version": "2.6.1", 1633 | "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.1.tgz", 1634 | "integrity": "sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g==" 1635 | }, 1636 | "clone": { 1637 | "version": "1.0.4", 1638 | "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", 1639 | "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=" 1640 | }, 1641 | "clone-response": { 1642 | "version": "1.0.2", 1643 | "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", 1644 | "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", 1645 | "requires": { 1646 | "mimic-response": "^1.0.0" 1647 | } 1648 | }, 1649 | "commander": { 1650 | "version": "10.0.0", 1651 | "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.0.tgz", 1652 | "integrity": "sha512-zS5PnTI22FIRM6ylNW8G4Ap0IEOyk62fhLSD0+uHRT9McRCLGpkVNvao4bjimpK/GShynyQkFFxHhwMcETmduA==" 1653 | }, 1654 | "content-disposition": { 1655 | "version": "0.5.3", 1656 | "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", 1657 | "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", 1658 | "requires": { 1659 | "safe-buffer": "5.1.2" 1660 | } 1661 | }, 1662 | "core-util-is": { 1663 | "version": "1.0.2", 1664 | "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", 1665 | "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" 1666 | }, 1667 | "cross-spawn": { 1668 | "version": "7.0.3", 1669 | "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", 1670 | "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", 1671 | "requires": { 1672 | "path-key": "^3.1.0", 1673 | "shebang-command": "^2.0.0", 1674 | "which": "^2.0.1" 1675 | } 1676 | }, 1677 | "decode-uri-component": { 1678 | "version": "0.2.0", 1679 | "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", 1680 | "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" 1681 | }, 1682 | "decompress": { 1683 | "version": "4.2.1", 1684 | "resolved": "https://registry.npmjs.org/decompress/-/decompress-4.2.1.tgz", 1685 | "integrity": "sha512-e48kc2IjU+2Zw8cTb6VZcJQ3lgVbS4uuB1TfCHbiZIP/haNXm+SVyhu+87jts5/3ROpd82GSVCoNs/z8l4ZOaQ==", 1686 | "requires": { 1687 | "decompress-tar": "^4.0.0", 1688 | "decompress-tarbz2": "^4.0.0", 1689 | "decompress-targz": "^4.0.0", 1690 | "decompress-unzip": "^4.0.1", 1691 | "graceful-fs": "^4.1.10", 1692 | "make-dir": "^1.0.0", 1693 | "pify": "^2.3.0", 1694 | "strip-dirs": "^2.0.0" 1695 | }, 1696 | "dependencies": { 1697 | "make-dir": { 1698 | "version": "1.3.0", 1699 | "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", 1700 | "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", 1701 | "requires": { 1702 | "pify": "^3.0.0" 1703 | }, 1704 | "dependencies": { 1705 | "pify": { 1706 | "version": "3.0.0", 1707 | "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", 1708 | "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" 1709 | } 1710 | } 1711 | }, 1712 | "pify": { 1713 | "version": "2.3.0", 1714 | "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", 1715 | "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" 1716 | } 1717 | } 1718 | }, 1719 | "decompress-response": { 1720 | "version": "3.3.0", 1721 | "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", 1722 | "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", 1723 | "requires": { 1724 | "mimic-response": "^1.0.0" 1725 | } 1726 | }, 1727 | "decompress-tar": { 1728 | "version": "4.1.1", 1729 | "resolved": "https://registry.npmjs.org/decompress-tar/-/decompress-tar-4.1.1.tgz", 1730 | "integrity": "sha512-JdJMaCrGpB5fESVyxwpCx4Jdj2AagLmv3y58Qy4GE6HMVjWz1FeVQk1Ct4Kye7PftcdOo/7U7UKzYBJgqnGeUQ==", 1731 | "requires": { 1732 | "file-type": "^5.2.0", 1733 | "is-stream": "^1.1.0", 1734 | "tar-stream": "^1.5.2" 1735 | }, 1736 | "dependencies": { 1737 | "file-type": { 1738 | "version": "5.2.0", 1739 | "resolved": "https://registry.npmjs.org/file-type/-/file-type-5.2.0.tgz", 1740 | "integrity": "sha1-LdvqfHP/42No365J3DOMBYwritY=" 1741 | } 1742 | } 1743 | }, 1744 | "decompress-tarbz2": { 1745 | "version": "4.1.1", 1746 | "resolved": "https://registry.npmjs.org/decompress-tarbz2/-/decompress-tarbz2-4.1.1.tgz", 1747 | "integrity": "sha512-s88xLzf1r81ICXLAVQVzaN6ZmX4A6U4z2nMbOwobxkLoIIfjVMBg7TeguTUXkKeXni795B6y5rnvDw7rxhAq9A==", 1748 | "requires": { 1749 | "decompress-tar": "^4.1.0", 1750 | "file-type": "^6.1.0", 1751 | "is-stream": "^1.1.0", 1752 | "seek-bzip": "^1.0.5", 1753 | "unbzip2-stream": "^1.0.9" 1754 | }, 1755 | "dependencies": { 1756 | "file-type": { 1757 | "version": "6.2.0", 1758 | "resolved": "https://registry.npmjs.org/file-type/-/file-type-6.2.0.tgz", 1759 | "integrity": "sha512-YPcTBDV+2Tm0VqjybVd32MHdlEGAtuxS3VAYsumFokDSMG+ROT5wawGlnHDoz7bfMcMDt9hxuXvXwoKUx2fkOg==" 1760 | } 1761 | } 1762 | }, 1763 | "decompress-targz": { 1764 | "version": "4.1.1", 1765 | "resolved": "https://registry.npmjs.org/decompress-targz/-/decompress-targz-4.1.1.tgz", 1766 | "integrity": "sha512-4z81Znfr6chWnRDNfFNqLwPvm4db3WuZkqV+UgXQzSngG3CEKdBkw5jrv3axjjL96glyiiKjsxJG3X6WBZwX3w==", 1767 | "requires": { 1768 | "decompress-tar": "^4.1.1", 1769 | "file-type": "^5.2.0", 1770 | "is-stream": "^1.1.0" 1771 | }, 1772 | "dependencies": { 1773 | "file-type": { 1774 | "version": "5.2.0", 1775 | "resolved": "https://registry.npmjs.org/file-type/-/file-type-5.2.0.tgz", 1776 | "integrity": "sha1-LdvqfHP/42No365J3DOMBYwritY=" 1777 | } 1778 | } 1779 | }, 1780 | "decompress-unzip": { 1781 | "version": "4.0.1", 1782 | "resolved": "https://registry.npmjs.org/decompress-unzip/-/decompress-unzip-4.0.1.tgz", 1783 | "integrity": "sha1-3qrM39FK6vhVePczroIQ+bSEj2k=", 1784 | "requires": { 1785 | "file-type": "^3.8.0", 1786 | "get-stream": "^2.2.0", 1787 | "pify": "^2.3.0", 1788 | "yauzl": "^2.4.2" 1789 | }, 1790 | "dependencies": { 1791 | "file-type": { 1792 | "version": "3.9.0", 1793 | "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", 1794 | "integrity": "sha1-JXoHg4TR24CHvESdEH1SpSZyuek=" 1795 | }, 1796 | "get-stream": { 1797 | "version": "2.3.1", 1798 | "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-2.3.1.tgz", 1799 | "integrity": "sha1-Xzj5PzRgCWZu4BUKBUFn+Rvdld4=", 1800 | "requires": { 1801 | "object-assign": "^4.0.1", 1802 | "pinkie-promise": "^2.0.0" 1803 | } 1804 | }, 1805 | "pify": { 1806 | "version": "2.3.0", 1807 | "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", 1808 | "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" 1809 | } 1810 | } 1811 | }, 1812 | "defaults": { 1813 | "version": "1.0.3", 1814 | "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", 1815 | "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", 1816 | "requires": { 1817 | "clone": "^1.0.2" 1818 | } 1819 | }, 1820 | "download": { 1821 | "version": "8.0.0", 1822 | "resolved": "https://registry.npmjs.org/download/-/download-8.0.0.tgz", 1823 | "integrity": "sha512-ASRY5QhDk7FK+XrQtQyvhpDKanLluEEQtWl/J7Lxuf/b+i8RYh997QeXvL85xitrmRKVlx9c7eTrcRdq2GS4eA==", 1824 | "requires": { 1825 | "archive-type": "^4.0.0", 1826 | "content-disposition": "^0.5.2", 1827 | "decompress": "^4.2.1", 1828 | "ext-name": "^5.0.0", 1829 | "file-type": "^11.1.0", 1830 | "filenamify": "^3.0.0", 1831 | "get-stream": "^4.1.0", 1832 | "got": "^8.3.1", 1833 | "make-dir": "^2.1.0", 1834 | "p-event": "^2.1.0", 1835 | "pify": "^4.0.1" 1836 | } 1837 | }, 1838 | "duplexer3": { 1839 | "version": "0.1.4", 1840 | "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", 1841 | "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=" 1842 | }, 1843 | "end-of-stream": { 1844 | "version": "1.4.4", 1845 | "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", 1846 | "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", 1847 | "requires": { 1848 | "once": "^1.4.0" 1849 | } 1850 | }, 1851 | "escape-string-regexp": { 1852 | "version": "1.0.5", 1853 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", 1854 | "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" 1855 | }, 1856 | "execa": { 1857 | "version": "6.1.0", 1858 | "resolved": "https://registry.npmjs.org/execa/-/execa-6.1.0.tgz", 1859 | "integrity": "sha512-QVWlX2e50heYJcCPG0iWtf8r0xjEYfz/OYLGDYH+IyjWezzPNxz63qNFOu0l4YftGWuizFVZHHs8PrLU5p2IDA==", 1860 | "requires": { 1861 | "cross-spawn": "^7.0.3", 1862 | "get-stream": "^6.0.1", 1863 | "human-signals": "^3.0.1", 1864 | "is-stream": "^3.0.0", 1865 | "merge-stream": "^2.0.0", 1866 | "npm-run-path": "^5.1.0", 1867 | "onetime": "^6.0.0", 1868 | "signal-exit": "^3.0.7", 1869 | "strip-final-newline": "^3.0.0" 1870 | }, 1871 | "dependencies": { 1872 | "get-stream": { 1873 | "version": "6.0.1", 1874 | "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", 1875 | "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==" 1876 | }, 1877 | "is-stream": { 1878 | "version": "3.0.0", 1879 | "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", 1880 | "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==" 1881 | }, 1882 | "mimic-fn": { 1883 | "version": "4.0.0", 1884 | "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", 1885 | "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==" 1886 | }, 1887 | "onetime": { 1888 | "version": "6.0.0", 1889 | "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", 1890 | "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", 1891 | "requires": { 1892 | "mimic-fn": "^4.0.0" 1893 | } 1894 | } 1895 | } 1896 | }, 1897 | "ext-list": { 1898 | "version": "2.2.2", 1899 | "resolved": "https://registry.npmjs.org/ext-list/-/ext-list-2.2.2.tgz", 1900 | "integrity": "sha512-u+SQgsubraE6zItfVA0tBuCBhfU9ogSRnsvygI7wht9TS510oLkBRXBsqopeUG/GBOIQyKZO9wjTqIu/sf5zFA==", 1901 | "requires": { 1902 | "mime-db": "^1.28.0" 1903 | } 1904 | }, 1905 | "ext-name": { 1906 | "version": "5.0.0", 1907 | "resolved": "https://registry.npmjs.org/ext-name/-/ext-name-5.0.0.tgz", 1908 | "integrity": "sha512-yblEwXAbGv1VQDmow7s38W77hzAgJAO50ztBLMcUyUBfxv1HC+LGwtiEN+Co6LtlqT/5uwVOxsD4TNIilWhwdQ==", 1909 | "requires": { 1910 | "ext-list": "^2.0.0", 1911 | "sort-keys-length": "^1.0.0" 1912 | } 1913 | }, 1914 | "fd-slicer": { 1915 | "version": "1.1.0", 1916 | "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", 1917 | "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=", 1918 | "requires": { 1919 | "pend": "~1.2.0" 1920 | } 1921 | }, 1922 | "file-type": { 1923 | "version": "11.1.0", 1924 | "resolved": "https://registry.npmjs.org/file-type/-/file-type-11.1.0.tgz", 1925 | "integrity": "sha512-rM0UO7Qm9K7TWTtA6AShI/t7H5BPjDeGVDaNyg9BjHAj3PysKy7+8C8D137R88jnR3rFJZQB/tFgydl5sN5m7g==" 1926 | }, 1927 | "filename-reserved-regex": { 1928 | "version": "2.0.0", 1929 | "resolved": "https://registry.npmjs.org/filename-reserved-regex/-/filename-reserved-regex-2.0.0.tgz", 1930 | "integrity": "sha1-q/c9+rc10EVECr/qLZHzieu/oik=" 1931 | }, 1932 | "filenamify": { 1933 | "version": "3.0.0", 1934 | "resolved": "https://registry.npmjs.org/filenamify/-/filenamify-3.0.0.tgz", 1935 | "integrity": "sha512-5EFZ//MsvJgXjBAFJ+Bh2YaCTRF/VP1YOmGrgt+KJ4SFRLjI87EIdwLLuT6wQX0I4F9W41xutobzczjsOKlI/g==", 1936 | "requires": { 1937 | "filename-reserved-regex": "^2.0.0", 1938 | "strip-outer": "^1.0.0", 1939 | "trim-repeated": "^1.0.0" 1940 | } 1941 | }, 1942 | "from2": { 1943 | "version": "2.3.0", 1944 | "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", 1945 | "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", 1946 | "requires": { 1947 | "inherits": "^2.0.1", 1948 | "readable-stream": "^2.0.0" 1949 | } 1950 | }, 1951 | "fs-constants": { 1952 | "version": "1.0.0", 1953 | "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", 1954 | "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" 1955 | }, 1956 | "get-stream": { 1957 | "version": "4.1.0", 1958 | "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", 1959 | "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", 1960 | "requires": { 1961 | "pump": "^3.0.0" 1962 | } 1963 | }, 1964 | "got": { 1965 | "version": "8.3.2", 1966 | "resolved": "https://registry.npmjs.org/got/-/got-8.3.2.tgz", 1967 | "integrity": "sha512-qjUJ5U/hawxosMryILofZCkm3C84PLJS/0grRIpjAwu+Lkxxj5cxeCU25BG0/3mDSpXKTyZr8oh8wIgLaH0QCw==", 1968 | "requires": { 1969 | "@sindresorhus/is": "^0.7.0", 1970 | "cacheable-request": "^2.1.1", 1971 | "decompress-response": "^3.3.0", 1972 | "duplexer3": "^0.1.4", 1973 | "get-stream": "^3.0.0", 1974 | "into-stream": "^3.1.0", 1975 | "is-retry-allowed": "^1.1.0", 1976 | "isurl": "^1.0.0-alpha5", 1977 | "lowercase-keys": "^1.0.0", 1978 | "mimic-response": "^1.0.0", 1979 | "p-cancelable": "^0.4.0", 1980 | "p-timeout": "^2.0.1", 1981 | "pify": "^3.0.0", 1982 | "safe-buffer": "^5.1.1", 1983 | "timed-out": "^4.0.1", 1984 | "url-parse-lax": "^3.0.0", 1985 | "url-to-options": "^1.0.1" 1986 | }, 1987 | "dependencies": { 1988 | "get-stream": { 1989 | "version": "3.0.0", 1990 | "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", 1991 | "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=" 1992 | }, 1993 | "pify": { 1994 | "version": "3.0.0", 1995 | "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", 1996 | "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" 1997 | } 1998 | } 1999 | }, 2000 | "graceful-fs": { 2001 | "version": "4.2.6", 2002 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", 2003 | "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==" 2004 | }, 2005 | "has-symbol-support-x": { 2006 | "version": "1.4.2", 2007 | "resolved": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.2.tgz", 2008 | "integrity": "sha512-3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw==" 2009 | }, 2010 | "has-to-string-tag-x": { 2011 | "version": "1.4.1", 2012 | "resolved": "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz", 2013 | "integrity": "sha512-vdbKfmw+3LoOYVr+mtxHaX5a96+0f3DljYd8JOqvOLsf5mw2Otda2qCDT9qRqLAhrjyQ0h7ual5nOiASpsGNFw==", 2014 | "requires": { 2015 | "has-symbol-support-x": "^1.4.1" 2016 | } 2017 | }, 2018 | "http-cache-semantics": { 2019 | "version": "3.8.1", 2020 | "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz", 2021 | "integrity": "sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==" 2022 | }, 2023 | "human-signals": { 2024 | "version": "3.0.1", 2025 | "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-3.0.1.tgz", 2026 | "integrity": "sha512-rQLskxnM/5OCldHo+wNXbpVgDn5A17CUoKX+7Sokwaknlq7CdSnphy0W39GU8dw59XiCXmFXDg4fRuckQRKewQ==" 2027 | }, 2028 | "ieee754": { 2029 | "version": "1.2.1", 2030 | "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", 2031 | "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" 2032 | }, 2033 | "inherits": { 2034 | "version": "2.0.4", 2035 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", 2036 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" 2037 | }, 2038 | "into-stream": { 2039 | "version": "3.1.0", 2040 | "resolved": "https://registry.npmjs.org/into-stream/-/into-stream-3.1.0.tgz", 2041 | "integrity": "sha1-lvsKk2wSur1v8XUqF9BWFqvQlMY=", 2042 | "requires": { 2043 | "from2": "^2.1.1", 2044 | "p-is-promise": "^1.1.0" 2045 | } 2046 | }, 2047 | "is-interactive": { 2048 | "version": "2.0.0", 2049 | "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-2.0.0.tgz", 2050 | "integrity": "sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ==" 2051 | }, 2052 | "is-natural-number": { 2053 | "version": "4.0.1", 2054 | "resolved": "https://registry.npmjs.org/is-natural-number/-/is-natural-number-4.0.1.tgz", 2055 | "integrity": "sha1-q5124dtM7VHjXeDHLr7PCfc0zeg=" 2056 | }, 2057 | "is-object": { 2058 | "version": "1.0.2", 2059 | "resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.2.tgz", 2060 | "integrity": "sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA==" 2061 | }, 2062 | "is-plain-obj": { 2063 | "version": "1.1.0", 2064 | "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", 2065 | "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=" 2066 | }, 2067 | "is-retry-allowed": { 2068 | "version": "1.2.0", 2069 | "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz", 2070 | "integrity": "sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==" 2071 | }, 2072 | "is-stream": { 2073 | "version": "1.1.0", 2074 | "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", 2075 | "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" 2076 | }, 2077 | "is-unicode-supported": { 2078 | "version": "1.2.0", 2079 | "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.2.0.tgz", 2080 | "integrity": "sha512-wH+U77omcRzevfIG8dDhTS0V9zZyweakfD01FULl97+0EHiJTTZtJqxPSkIIo/SDPv/i07k/C9jAPY+jwLLeUQ==" 2081 | }, 2082 | "isarray": { 2083 | "version": "1.0.0", 2084 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", 2085 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" 2086 | }, 2087 | "isexe": { 2088 | "version": "2.0.0", 2089 | "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", 2090 | "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" 2091 | }, 2092 | "isurl": { 2093 | "version": "1.0.0", 2094 | "resolved": "https://registry.npmjs.org/isurl/-/isurl-1.0.0.tgz", 2095 | "integrity": "sha512-1P/yWsxPlDtn7QeRD+ULKQPaIaN6yF368GZ2vDfv0AL0NwpStafjWCDDdn0k8wgFMWpVAqG7oJhxHnlud42i9w==", 2096 | "requires": { 2097 | "has-to-string-tag-x": "^1.2.0", 2098 | "is-object": "^1.0.1" 2099 | } 2100 | }, 2101 | "json-buffer": { 2102 | "version": "3.0.0", 2103 | "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", 2104 | "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=" 2105 | }, 2106 | "keyv": { 2107 | "version": "3.0.0", 2108 | "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.0.0.tgz", 2109 | "integrity": "sha512-eguHnq22OE3uVoSYG0LVWNP+4ppamWr9+zWBe1bsNcovIMy6huUJFPgy4mGwCd/rnl3vOLGW1MTlu4c57CT1xA==", 2110 | "requires": { 2111 | "json-buffer": "3.0.0" 2112 | } 2113 | }, 2114 | "kleur": { 2115 | "version": "3.0.3", 2116 | "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", 2117 | "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==" 2118 | }, 2119 | "log-symbols": { 2120 | "version": "5.1.0", 2121 | "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-5.1.0.tgz", 2122 | "integrity": "sha512-l0x2DvrW294C9uDCoQe1VSU4gf529FkSZ6leBl4TiqZH/e+0R7hSfHQBNut2mNygDgHwvYHfFLn6Oxb3VWj2rA==", 2123 | "requires": { 2124 | "chalk": "^5.0.0", 2125 | "is-unicode-supported": "^1.1.0" 2126 | } 2127 | }, 2128 | "lowercase-keys": { 2129 | "version": "1.0.1", 2130 | "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", 2131 | "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==" 2132 | }, 2133 | "make-dir": { 2134 | "version": "2.1.0", 2135 | "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", 2136 | "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", 2137 | "requires": { 2138 | "pify": "^4.0.1", 2139 | "semver": "^5.6.0" 2140 | } 2141 | }, 2142 | "merge-stream": { 2143 | "version": "2.0.0", 2144 | "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", 2145 | "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" 2146 | }, 2147 | "mime-db": { 2148 | "version": "1.47.0", 2149 | "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.47.0.tgz", 2150 | "integrity": "sha512-QBmA/G2y+IfeS4oktet3qRZ+P5kPhCKRXxXnQEudYqUaEioAU1/Lq2us3D/t1Jfo4hE9REQPrbB7K5sOczJVIw==" 2151 | }, 2152 | "mimic-fn": { 2153 | "version": "2.1.0", 2154 | "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", 2155 | "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==" 2156 | }, 2157 | "mimic-response": { 2158 | "version": "1.0.1", 2159 | "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", 2160 | "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" 2161 | }, 2162 | "normalize-url": { 2163 | "version": "2.0.1", 2164 | "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-2.0.1.tgz", 2165 | "integrity": "sha512-D6MUW4K/VzoJ4rJ01JFKxDrtY1v9wrgzCX5f2qj/lzH1m/lW6MhUZFKerVsnyjOhOsYzI9Kqqak+10l4LvLpMw==", 2166 | "requires": { 2167 | "prepend-http": "^2.0.0", 2168 | "query-string": "^5.0.1", 2169 | "sort-keys": "^2.0.0" 2170 | } 2171 | }, 2172 | "npm-run-path": { 2173 | "version": "5.1.0", 2174 | "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", 2175 | "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", 2176 | "requires": { 2177 | "path-key": "^4.0.0" 2178 | }, 2179 | "dependencies": { 2180 | "path-key": { 2181 | "version": "4.0.0", 2182 | "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", 2183 | "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==" 2184 | } 2185 | } 2186 | }, 2187 | "object-assign": { 2188 | "version": "4.1.1", 2189 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", 2190 | "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" 2191 | }, 2192 | "once": { 2193 | "version": "1.4.0", 2194 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 2195 | "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", 2196 | "requires": { 2197 | "wrappy": "1" 2198 | } 2199 | }, 2200 | "onetime": { 2201 | "version": "5.1.2", 2202 | "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", 2203 | "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", 2204 | "requires": { 2205 | "mimic-fn": "^2.1.0" 2206 | } 2207 | }, 2208 | "ora": { 2209 | "version": "6.1.2", 2210 | "resolved": "https://registry.npmjs.org/ora/-/ora-6.1.2.tgz", 2211 | "integrity": "sha512-EJQ3NiP5Xo94wJXIzAyOtSb0QEIAUu7m8t6UZ9krbz0vAJqr92JpcK/lEXg91q6B9pEGqrykkd2EQplnifDSBw==", 2212 | "requires": { 2213 | "bl": "^5.0.0", 2214 | "chalk": "^5.0.0", 2215 | "cli-cursor": "^4.0.0", 2216 | "cli-spinners": "^2.6.1", 2217 | "is-interactive": "^2.0.0", 2218 | "is-unicode-supported": "^1.1.0", 2219 | "log-symbols": "^5.1.0", 2220 | "strip-ansi": "^7.0.1", 2221 | "wcwidth": "^1.0.1" 2222 | } 2223 | }, 2224 | "p-cancelable": { 2225 | "version": "0.4.1", 2226 | "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.4.1.tgz", 2227 | "integrity": "sha512-HNa1A8LvB1kie7cERyy21VNeHb2CWJJYqyyC2o3klWFfMGlFmWv2Z7sFgZH8ZiaYL95ydToKTFVXgMV/Os0bBQ==" 2228 | }, 2229 | "p-event": { 2230 | "version": "2.3.1", 2231 | "resolved": "https://registry.npmjs.org/p-event/-/p-event-2.3.1.tgz", 2232 | "integrity": "sha512-NQCqOFhbpVTMX4qMe8PF8lbGtzZ+LCiN7pcNrb/413Na7+TRoe1xkKUzuWa/YEJdGQ0FvKtj35EEbDoVPO2kbA==", 2233 | "requires": { 2234 | "p-timeout": "^2.0.1" 2235 | } 2236 | }, 2237 | "p-finally": { 2238 | "version": "1.0.0", 2239 | "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", 2240 | "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=" 2241 | }, 2242 | "p-is-promise": { 2243 | "version": "1.1.0", 2244 | "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-1.1.0.tgz", 2245 | "integrity": "sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4=" 2246 | }, 2247 | "p-timeout": { 2248 | "version": "2.0.1", 2249 | "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-2.0.1.tgz", 2250 | "integrity": "sha512-88em58dDVB/KzPEx1X0N3LwFfYZPyDc4B6eF38M1rk9VTZMbxXXgjugz8mmwpS9Ox4BDZ+t6t3QP5+/gazweIA==", 2251 | "requires": { 2252 | "p-finally": "^1.0.0" 2253 | } 2254 | }, 2255 | "path-key": { 2256 | "version": "3.1.1", 2257 | "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", 2258 | "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==" 2259 | }, 2260 | "pend": { 2261 | "version": "1.2.0", 2262 | "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", 2263 | "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=" 2264 | }, 2265 | "pify": { 2266 | "version": "4.0.1", 2267 | "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", 2268 | "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" 2269 | }, 2270 | "pinkie": { 2271 | "version": "2.0.4", 2272 | "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", 2273 | "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=" 2274 | }, 2275 | "pinkie-promise": { 2276 | "version": "2.0.1", 2277 | "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", 2278 | "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", 2279 | "requires": { 2280 | "pinkie": "^2.0.0" 2281 | } 2282 | }, 2283 | "prepend-http": { 2284 | "version": "2.0.0", 2285 | "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", 2286 | "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=" 2287 | }, 2288 | "process-nextick-args": { 2289 | "version": "2.0.1", 2290 | "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", 2291 | "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" 2292 | }, 2293 | "prompts": { 2294 | "version": "2.4.2", 2295 | "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", 2296 | "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", 2297 | "requires": { 2298 | "kleur": "^3.0.3", 2299 | "sisteransi": "^1.0.5" 2300 | } 2301 | }, 2302 | "pump": { 2303 | "version": "3.0.0", 2304 | "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", 2305 | "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", 2306 | "requires": { 2307 | "end-of-stream": "^1.1.0", 2308 | "once": "^1.3.1" 2309 | } 2310 | }, 2311 | "query-string": { 2312 | "version": "5.1.1", 2313 | "resolved": "https://registry.npmjs.org/query-string/-/query-string-5.1.1.tgz", 2314 | "integrity": "sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw==", 2315 | "requires": { 2316 | "decode-uri-component": "^0.2.0", 2317 | "object-assign": "^4.1.0", 2318 | "strict-uri-encode": "^1.0.0" 2319 | } 2320 | }, 2321 | "readable-stream": { 2322 | "version": "2.3.7", 2323 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", 2324 | "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", 2325 | "requires": { 2326 | "core-util-is": "~1.0.0", 2327 | "inherits": "~2.0.3", 2328 | "isarray": "~1.0.0", 2329 | "process-nextick-args": "~2.0.0", 2330 | "safe-buffer": "~5.1.1", 2331 | "string_decoder": "~1.1.1", 2332 | "util-deprecate": "~1.0.1" 2333 | } 2334 | }, 2335 | "responselike": { 2336 | "version": "1.0.2", 2337 | "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", 2338 | "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", 2339 | "requires": { 2340 | "lowercase-keys": "^1.0.0" 2341 | } 2342 | }, 2343 | "restore-cursor": { 2344 | "version": "4.0.0", 2345 | "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-4.0.0.tgz", 2346 | "integrity": "sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==", 2347 | "requires": { 2348 | "onetime": "^5.1.0", 2349 | "signal-exit": "^3.0.2" 2350 | } 2351 | }, 2352 | "safe-buffer": { 2353 | "version": "5.1.2", 2354 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", 2355 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" 2356 | }, 2357 | "seek-bzip": { 2358 | "version": "1.0.6", 2359 | "resolved": "https://registry.npmjs.org/seek-bzip/-/seek-bzip-1.0.6.tgz", 2360 | "integrity": "sha512-e1QtP3YL5tWww8uKaOCQ18UxIT2laNBXHjV/S2WYCiK4udiv8lkG89KRIoCjUagnAmCBurjF4zEVX2ByBbnCjQ==", 2361 | "requires": { 2362 | "commander": "^2.8.1" 2363 | }, 2364 | "dependencies": { 2365 | "commander": { 2366 | "version": "2.20.3", 2367 | "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", 2368 | "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" 2369 | } 2370 | } 2371 | }, 2372 | "semver": { 2373 | "version": "5.7.1", 2374 | "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", 2375 | "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" 2376 | }, 2377 | "shebang-command": { 2378 | "version": "2.0.0", 2379 | "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", 2380 | "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", 2381 | "requires": { 2382 | "shebang-regex": "^3.0.0" 2383 | } 2384 | }, 2385 | "shebang-regex": { 2386 | "version": "3.0.0", 2387 | "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", 2388 | "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==" 2389 | }, 2390 | "signal-exit": { 2391 | "version": "3.0.7", 2392 | "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", 2393 | "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" 2394 | }, 2395 | "sisteransi": { 2396 | "version": "1.0.5", 2397 | "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", 2398 | "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==" 2399 | }, 2400 | "sort-keys": { 2401 | "version": "2.0.0", 2402 | "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz", 2403 | "integrity": "sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=", 2404 | "requires": { 2405 | "is-plain-obj": "^1.0.0" 2406 | } 2407 | }, 2408 | "sort-keys-length": { 2409 | "version": "1.0.1", 2410 | "resolved": "https://registry.npmjs.org/sort-keys-length/-/sort-keys-length-1.0.1.tgz", 2411 | "integrity": "sha1-nLb09OnkgVWmqgZx7dM2/xR5oYg=", 2412 | "requires": { 2413 | "sort-keys": "^1.0.0" 2414 | }, 2415 | "dependencies": { 2416 | "sort-keys": { 2417 | "version": "1.1.2", 2418 | "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz", 2419 | "integrity": "sha1-RBttTTRnmPG05J6JIK37oOVD+a0=", 2420 | "requires": { 2421 | "is-plain-obj": "^1.0.0" 2422 | } 2423 | } 2424 | } 2425 | }, 2426 | "strict-uri-encode": { 2427 | "version": "1.1.0", 2428 | "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", 2429 | "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=" 2430 | }, 2431 | "string_decoder": { 2432 | "version": "1.1.1", 2433 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", 2434 | "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", 2435 | "requires": { 2436 | "safe-buffer": "~5.1.0" 2437 | } 2438 | }, 2439 | "strip-ansi": { 2440 | "version": "7.0.1", 2441 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", 2442 | "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", 2443 | "requires": { 2444 | "ansi-regex": "^6.0.1" 2445 | } 2446 | }, 2447 | "strip-dirs": { 2448 | "version": "2.1.0", 2449 | "resolved": "https://registry.npmjs.org/strip-dirs/-/strip-dirs-2.1.0.tgz", 2450 | "integrity": "sha512-JOCxOeKLm2CAS73y/U4ZeZPTkE+gNVCzKt7Eox84Iej1LT/2pTWYpZKJuxwQpvX1LiZb1xokNR7RLfuBAa7T3g==", 2451 | "requires": { 2452 | "is-natural-number": "^4.0.1" 2453 | } 2454 | }, 2455 | "strip-final-newline": { 2456 | "version": "3.0.0", 2457 | "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", 2458 | "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==" 2459 | }, 2460 | "strip-outer": { 2461 | "version": "1.0.1", 2462 | "resolved": "https://registry.npmjs.org/strip-outer/-/strip-outer-1.0.1.tgz", 2463 | "integrity": "sha512-k55yxKHwaXnpYGsOzg4Vl8+tDrWylxDEpknGjhTiZB8dFRU5rTo9CAzeycivxV3s+zlTKwrs6WxMxR95n26kwg==", 2464 | "requires": { 2465 | "escape-string-regexp": "^1.0.2" 2466 | } 2467 | }, 2468 | "tar-stream": { 2469 | "version": "1.6.2", 2470 | "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.2.tgz", 2471 | "integrity": "sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==", 2472 | "requires": { 2473 | "bl": "^1.0.0", 2474 | "buffer-alloc": "^1.2.0", 2475 | "end-of-stream": "^1.0.0", 2476 | "fs-constants": "^1.0.0", 2477 | "readable-stream": "^2.3.0", 2478 | "to-buffer": "^1.1.1", 2479 | "xtend": "^4.0.0" 2480 | }, 2481 | "dependencies": { 2482 | "bl": { 2483 | "version": "1.2.3", 2484 | "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.3.tgz", 2485 | "integrity": "sha512-pvcNpa0UU69UT341rO6AYy4FVAIkUHuZXRIWbq+zHnsVcRzDDjIAhGuuYoi0d//cwIwtt4pkpKycWEfjdV+vww==", 2486 | "requires": { 2487 | "readable-stream": "^2.3.5", 2488 | "safe-buffer": "^5.1.1" 2489 | } 2490 | } 2491 | } 2492 | }, 2493 | "through": { 2494 | "version": "2.3.8", 2495 | "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", 2496 | "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" 2497 | }, 2498 | "timed-out": { 2499 | "version": "4.0.1", 2500 | "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", 2501 | "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=" 2502 | }, 2503 | "to-buffer": { 2504 | "version": "1.1.1", 2505 | "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz", 2506 | "integrity": "sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==" 2507 | }, 2508 | "trim-repeated": { 2509 | "version": "1.0.0", 2510 | "resolved": "https://registry.npmjs.org/trim-repeated/-/trim-repeated-1.0.0.tgz", 2511 | "integrity": "sha1-42RqLqTokTEr9+rObPsFOAvAHCE=", 2512 | "requires": { 2513 | "escape-string-regexp": "^1.0.2" 2514 | } 2515 | }, 2516 | "unbzip2-stream": { 2517 | "version": "1.4.3", 2518 | "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz", 2519 | "integrity": "sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==", 2520 | "requires": { 2521 | "buffer": "^5.2.1", 2522 | "through": "^2.3.8" 2523 | } 2524 | }, 2525 | "url-parse-lax": { 2526 | "version": "3.0.0", 2527 | "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", 2528 | "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", 2529 | "requires": { 2530 | "prepend-http": "^2.0.0" 2531 | } 2532 | }, 2533 | "url-to-options": { 2534 | "version": "1.0.1", 2535 | "resolved": "https://registry.npmjs.org/url-to-options/-/url-to-options-1.0.1.tgz", 2536 | "integrity": "sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k=" 2537 | }, 2538 | "util-deprecate": { 2539 | "version": "1.0.2", 2540 | "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", 2541 | "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" 2542 | }, 2543 | "wcwidth": { 2544 | "version": "1.0.1", 2545 | "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", 2546 | "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=", 2547 | "requires": { 2548 | "defaults": "^1.0.3" 2549 | } 2550 | }, 2551 | "which": { 2552 | "version": "2.0.2", 2553 | "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", 2554 | "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", 2555 | "requires": { 2556 | "isexe": "^2.0.0" 2557 | } 2558 | }, 2559 | "wrappy": { 2560 | "version": "1.0.2", 2561 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 2562 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" 2563 | }, 2564 | "xtend": { 2565 | "version": "4.0.2", 2566 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", 2567 | "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" 2568 | }, 2569 | "yauzl": { 2570 | "version": "2.10.0", 2571 | "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", 2572 | "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=", 2573 | "requires": { 2574 | "buffer-crc32": "~0.2.3", 2575 | "fd-slicer": "~1.1.0" 2576 | } 2577 | } 2578 | } 2579 | } 2580 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "create-nextify-app", 3 | "version": "0.0.2-21", 4 | "description": "React apps using Next.js and Emotion.", 5 | "keywords": [ 6 | "nextjs", 7 | "next", 8 | "react", 9 | "javascript", 10 | "typescript", 11 | "ts", 12 | "framework", 13 | "emotion", 14 | "styles", 15 | "styling", 16 | "css", 17 | "css-in-js", 18 | "workflow" 19 | ], 20 | "homepage": "https://www.nextify.me", 21 | "repository": "https://github.com/luangjokaj/nextify", 22 | "exports": "./installer/index.js", 23 | "type": "module", 24 | "node": "^12.20.0 || ^14.13.1 || >=16.0.0", 25 | "bin": { 26 | "create-nextify-app": "./installer/index.js" 27 | }, 28 | "author": "Luan Gjokaj ", 29 | "license": "MIT", 30 | "dependencies": { 31 | "chalk": "^5.2.0", 32 | "commander": "^10.0.0", 33 | "download": "^8.0.0", 34 | "execa": "^6.1.0", 35 | "ora": "^6.1.2", 36 | "prompts": "^2.4.2" 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /public/robots.txt: -------------------------------------------------------------------------------- 1 | User-Agent: * 2 | Allow: * 3 | -------------------------------------------------------------------------------- /public/site.webmanifest: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Nextify", 3 | "short_name": "Nextify", 4 | "icons": [ 5 | { 6 | "src": "https://nextify.s3-eu-west-1.amazonaws.com/img/meta/192.png", 7 | "sizes": "192x192", 8 | "type": "image/png" 9 | }, 10 | { 11 | "src": "https://nextify.s3-eu-west-1.amazonaws.com/img/meta/512.png", 12 | "sizes": "512x512", 13 | "type": "image/png" 14 | } 15 | ], 16 | "theme_color": "#000000", 17 | "background_color": "#000000", 18 | "display": "standalone" 19 | } 20 | -------------------------------------------------------------------------------- /src/assets/styles/globalStyles.tsx: -------------------------------------------------------------------------------- 1 | import { Global, css } from "@emotion/react"; 2 | import { Breakpoints, mq } from "./mq"; 3 | 4 | const globalStyles = ( 5 | css` 7 | html, 8 | body { 9 | margin: 0; 10 | padding: 0; 11 | min-height: 100%; 12 | scroll-behavior: smooth; 13 | } 14 | 15 | body { 16 | -moz-osx-font-smoothing: grayscale; 17 | -webkit-text-size-adjust: 100%; 18 | -webkit-font-smoothing: antialiased; 19 | font-family: ${theme.fonts.text}; 20 | font-size: ${theme.sizes.text.size.mobile}; 21 | line-height: ${theme.sizes.text.lineheight.mobile}; 22 | padding-top: ${theme.spacing.paddingTopBody.mobile}; 23 | color: ${theme.colors.dark}; 24 | margin: 0; 25 | 26 | ${mq(Breakpoints.lg)} { 27 | font-size: ${theme.sizes.text.size.desktop}; 28 | line-height: ${theme.sizes.text.lineheight.desktop}; 29 | padding-top: ${theme.spacing.paddingTopBody.desktop}; 30 | } 31 | } 32 | 33 | * { 34 | box-sizing: border-box; 35 | 36 | &:before, 37 | &:after { 38 | box-sizing: border-box; 39 | } 40 | 41 | &::selection { 42 | background: ${theme.colors.primary}; 43 | color: ${theme.colors.light}; 44 | } 45 | } 46 | 47 | main { 48 | display: block; 49 | } 50 | 51 | hr { 52 | background: none; 53 | border: none; 54 | border-bottom: solid 1px ${theme.colors.grayLight}; 55 | box-sizing: content-box; 56 | height: 0; 57 | overflow: visible; 58 | margin: 10px 0; 59 | } 60 | 61 | pre, 62 | code, 63 | kbd, 64 | samp { 65 | font-family: monospace, monospace; 66 | } 67 | 68 | pre { 69 | border-radius: 12px; 70 | } 71 | 72 | small { 73 | font-size: ${theme.sizes.small.size.mobile}; 74 | line-height: ${theme.sizes.small.lineheight.mobile}; 75 | 76 | ${mq(Breakpoints.lg)} { 77 | font-size: ${theme.sizes.small.size.desktop}; 78 | line-height: ${theme.sizes.small.lineheight.desktop}; 79 | } 80 | } 81 | 82 | blockquote { 83 | margin: 10px 0; 84 | padding: 0; 85 | font-size: ${theme.sizes.blockquote.size.mobile}; 86 | line-height: ${theme.sizes.blockquote.lineheight.mobile}; 87 | 88 | ${mq(Breakpoints.lg)} { 89 | font-size: ${theme.sizes.blockquote.size.desktop}; 90 | line-height: ${theme.sizes.blockquote.lineheight.desktop}; 91 | } 92 | } 93 | 94 | sub, 95 | sup { 96 | font-size: 75%; 97 | line-height: 0; 98 | position: relative; 99 | vertical-align: baseline; 100 | } 101 | 102 | sub { 103 | bottom: -0.25em; 104 | } 105 | 106 | sup { 107 | top: -0.5em; 108 | } 109 | 110 | a, 111 | button { 112 | cursor: pointer; 113 | outline: none; 114 | text-decoration: none; 115 | transition: all 0.3s ease; 116 | } 117 | 118 | a { 119 | background-color: transparent; 120 | color: ${theme.colors.grayDark}; 121 | 122 | @media (hover: hover) { 123 | &:hover { 124 | color: ${theme.colors.primary}; 125 | } 126 | } 127 | } 128 | 129 | p { 130 | margin: 10px 0; 131 | 132 | & a { 133 | color: ${theme.colors.primary}; 134 | 135 | @media (hover: hover) { 136 | &:hover { 137 | color: ${theme.colors.primaryDark}; 138 | } 139 | } 140 | } 141 | } 142 | 143 | blockquote, 144 | p, 145 | ol, 146 | ul { 147 | color: ${theme.colors.gray}; 148 | } 149 | 150 | figure { 151 | margin: 0; 152 | } 153 | 154 | fieldset { 155 | appearance: none; 156 | border: none; 157 | } 158 | 159 | img, 160 | svg { 161 | transition: all 0.3s ease; 162 | 163 | & * { 164 | transition: all 0.3s ease; 165 | } 166 | } 167 | 168 | img { 169 | display: inline-block; 170 | max-width: 100%; 171 | width: auto; 172 | height: auto; 173 | border-style: none; 174 | object-fit: contain; 175 | } 176 | 177 | strong, 178 | b { 179 | font-weight: 700; 180 | color: ${theme.colors.dark}; 181 | } 182 | 183 | table { 184 | width: 100%; 185 | border-collapse: collapse; 186 | 187 | & th, 188 | & td { 189 | text-align: left; 190 | border-bottom: solid 1px ${theme.colors.grayLight}; 191 | padding: 5px 20px 5px 0; 192 | white-space: nowrap; 193 | } 194 | 195 | & th { 196 | font-size: ${theme.sizes.button.size.mobile}; 197 | 198 | ${mq(Breakpoints.lg)} { 199 | font-size: ${theme.sizes.button.size.desktop}; 200 | } 201 | } 202 | 203 | & td { 204 | font-size: ${theme.sizes.text.size.mobile}; 205 | color: ${theme.colors.gray}; 206 | 207 | ${mq(Breakpoints.lg)} { 208 | font-size: ${theme.sizes.text.size.desktop}; 209 | } 210 | 211 | &:first-of-type { 212 | font-weight: 600; 213 | color: ${theme.colors.dark}; 214 | } 215 | } 216 | } 217 | `} 218 | /> 219 | ); 220 | 221 | export { globalStyles }; 222 | -------------------------------------------------------------------------------- /src/assets/styles/mq.ts: -------------------------------------------------------------------------------- 1 | import { theme } from "./theme"; 2 | const breakpoints = theme.spacing.breakpoints; 3 | 4 | const Breakpoints = { 5 | xs: 0, 6 | sm: 1, 7 | md: 2, 8 | lg: 3, 9 | xl: 4, 10 | xxl: 5, 11 | xxxl: 6, 12 | }; 13 | 14 | function mq(minWidth) { 15 | return `@media screen and (min-width: ${breakpoints[minWidth]}px)`; 16 | } 17 | 18 | export { mq, Breakpoints }; 19 | -------------------------------------------------------------------------------- /src/assets/styles/theme.ts: -------------------------------------------------------------------------------- 1 | const theme = { 2 | spacing: { 3 | maxWidth: "1280px", 4 | maxWidthLimit: "1440px", 5 | paddingTopBody: { mobile: "0", desktop: "0" }, 6 | marginContainer: { mobile: "20px", desktop: "20px" }, 7 | marginRow: { default: "-10px", medium: "-30px", big: "-50px" }, 8 | gutterCol: { default: "10px", medium: "30px", big: "50px" }, 9 | breakpoints: [0, 576, 768, 992, 1200, 1440, 1920], 10 | }, 11 | colors: { 12 | primaryLight: "#98C7FF", 13 | primary: "#0370F3", 14 | primaryDark: "#003A80", 15 | 16 | secondaryLight: "#7DD3FC", 17 | secondary: "#0EA5E9", 18 | secondaryDark: "#075985", 19 | 20 | tertiaryLight: "#D8B4FE", 21 | tertiary: "#A855F7", 22 | tertiaryDark: "#6B21A8", 23 | 24 | dark: "#000", 25 | light: "#fff", 26 | 27 | grayLight: "#E5E7EB", 28 | gray: "#9CA3AF", 29 | grayDark: "#4B5563", 30 | 31 | success: "#28A745", 32 | error: "#DC3545", 33 | warning: "#FFC107", 34 | info: "#17A2B8", 35 | }, 36 | fonts: { 37 | text: "'Inter', sans-serif", 38 | head: "'Inter', sans-serif", 39 | special: "'Inter', sans-serif", 40 | mono: "'Inter', monospace", 41 | }, 42 | sizes: { 43 | hero1: { 44 | size: { 45 | mobile: "52px", 46 | desktop: "62px", 47 | }, 48 | lineheight: { 49 | mobile: "1.15", 50 | desktop: "1.15", 51 | }, 52 | }, 53 | hero2: { 54 | size: { 55 | mobile: "42px", 56 | desktop: "52px", 57 | }, 58 | lineheight: { 59 | mobile: "1.15", 60 | desktop: "1.15", 61 | }, 62 | }, 63 | hero3: { 64 | size: { 65 | mobile: "32px", 66 | desktop: "42px", 67 | }, 68 | lineheight: { 69 | mobile: "1.15", 70 | desktop: "1.15", 71 | }, 72 | }, 73 | h1: { 74 | size: { 75 | mobile: "38px", 76 | desktop: "40px", 77 | }, 78 | lineheight: { 79 | mobile: "1.2", 80 | desktop: "1.2", 81 | }, 82 | }, 83 | h2: { 84 | size: { 85 | mobile: "28px", 86 | desktop: "32px", 87 | }, 88 | lineheight: { 89 | mobile: "1.2", 90 | desktop: "1.2", 91 | }, 92 | }, 93 | h3: { 94 | size: { 95 | mobile: "24px", 96 | desktop: "28px", 97 | }, 98 | lineheight: { 99 | mobile: "1.2", 100 | desktop: "1.2", 101 | }, 102 | }, 103 | h4: { 104 | size: { 105 | mobile: "22px", 106 | desktop: "24px", 107 | }, 108 | lineheight: { 109 | mobile: "1.3", 110 | desktop: "1.3", 111 | }, 112 | }, 113 | h5: { 114 | size: { 115 | mobile: "18px", 116 | desktop: "20px", 117 | }, 118 | lineheight: { 119 | mobile: "1.4", 120 | desktop: "1.4", 121 | }, 122 | }, 123 | h6: { 124 | size: { 125 | mobile: "16px", 126 | desktop: "18px", 127 | }, 128 | lineheight: { 129 | mobile: "1.4", 130 | desktop: "1.4", 131 | }, 132 | }, 133 | eyebrow: { 134 | size: { 135 | mobile: "16px", 136 | desktop: "18px", 137 | }, 138 | lineheight: { 139 | mobile: "1.35", 140 | desktop: "1.15", 141 | }, 142 | }, 143 | subtitle: { 144 | size: { 145 | mobile: "18px", 146 | desktop: "20px", 147 | }, 148 | lineheight: { 149 | mobile: "1.35", 150 | desktop: "1.35", 151 | }, 152 | }, 153 | button: { 154 | size: { 155 | mobile: "12px", 156 | desktop: "14px", 157 | }, 158 | lineheight: { 159 | mobile: "1", 160 | desktop: "1", 161 | }, 162 | }, 163 | buttonBig: { 164 | size: { 165 | mobile: "16px", 166 | desktop: "18px", 167 | }, 168 | lineheight: { 169 | mobile: "1", 170 | desktop: "1", 171 | }, 172 | }, 173 | lead: { 174 | size: { 175 | mobile: "16px", 176 | desktop: "18px", 177 | }, 178 | lineheight: { 179 | mobile: "1.35", 180 | desktop: "1.35", 181 | }, 182 | }, 183 | input: { 184 | size: { 185 | mobile: "12px", 186 | desktop: "14px", 187 | }, 188 | lineheight: { 189 | mobile: "1", 190 | desktop: "1", 191 | }, 192 | }, 193 | inputBig: { 194 | size: { 195 | mobile: "16px", 196 | desktop: "18px", 197 | }, 198 | lineheight: { 199 | mobile: "1", 200 | desktop: "1", 201 | }, 202 | }, 203 | strong: { 204 | size: { 205 | mobile: "14px", 206 | desktop: "16px", 207 | }, 208 | lineheight: { 209 | mobile: "1.5", 210 | desktop: "1.5", 211 | }, 212 | }, 213 | text: { 214 | size: { 215 | mobile: "14px", 216 | desktop: "16px", 217 | }, 218 | lineheight: { 219 | mobile: "1.5", 220 | desktop: "1.5", 221 | }, 222 | }, 223 | small: { 224 | size: { 225 | mobile: "12px", 226 | desktop: "14px", 227 | }, 228 | lineheight: { 229 | mobile: "1.3", 230 | desktop: "1.3", 231 | }, 232 | }, 233 | blockquote: { 234 | size: { 235 | mobile: "16px", 236 | desktop: "18px", 237 | }, 238 | lineheight: { 239 | mobile: "1.5", 240 | desktop: "1.5", 241 | }, 242 | }, 243 | }, 244 | }; 245 | 246 | export { theme }; 247 | -------------------------------------------------------------------------------- /src/assets/styles/types.ts: -------------------------------------------------------------------------------- 1 | import { Theme as EmotionTheme } from "@emotion/react"; 2 | 3 | interface ResponsiveSize { 4 | mobile: TString; 5 | desktop: TString; 6 | } 7 | 8 | interface RowColSize { 9 | default: TString; 10 | medium: TString; 11 | big: TString; 12 | } 13 | 14 | export interface Breakpoints { 15 | xs: TNumber; 16 | sm: TNumber; 17 | md: TNumber; 18 | lg: TNumber; 19 | xl: TNumber; 20 | xxl: TNumber; 21 | xxxl: TNumber; 22 | } 23 | 24 | export interface Spacing { 25 | maxWidth: TString; 26 | maxWidthLimit: TString; 27 | paddingTopBody: ResponsiveSize; 28 | marginContainer: ResponsiveSize; 29 | marginRow: RowColSize; 30 | gutterCol: RowColSize; 31 | breakpoints: [number, number, number, number, number, number, number]; 32 | } 33 | 34 | export interface Colors { 35 | primaryLight: TString; 36 | primary: TString; 37 | primaryDark: TString; 38 | 39 | secondaryLight: TString; 40 | secondary: TString; 41 | secondaryDark: TString; 42 | 43 | tertiaryLight: TString; 44 | tertiary: TString; 45 | tertiaryDark: TString; 46 | 47 | dark: TString; 48 | light: TString; 49 | 50 | grayLight: TString; 51 | gray: TString; 52 | grayDark: TString; 53 | 54 | success: TString; 55 | error: TString; 56 | warning: TString; 57 | info: TString; 58 | } 59 | 60 | export interface Fonts { 61 | text: TString; 62 | head: TString; 63 | special: TString; 64 | mono: TString; 65 | } 66 | 67 | export interface FontSizes { 68 | hero1: { 69 | size: ResponsiveSize; 70 | lineheight: ResponsiveSize; 71 | }; 72 | hero2: { 73 | size: ResponsiveSize; 74 | lineheight: ResponsiveSize; 75 | }; 76 | hero3: { 77 | size: ResponsiveSize; 78 | lineheight: ResponsiveSize; 79 | }; 80 | h1: { 81 | size: ResponsiveSize; 82 | lineheight: ResponsiveSize; 83 | }; 84 | h2: { 85 | size: ResponsiveSize; 86 | lineheight: ResponsiveSize; 87 | }; 88 | h3: { 89 | size: ResponsiveSize; 90 | lineheight: ResponsiveSize; 91 | }; 92 | h4: { 93 | size: ResponsiveSize; 94 | lineheight: ResponsiveSize; 95 | }; 96 | h5: { 97 | size: ResponsiveSize; 98 | lineheight: ResponsiveSize; 99 | }; 100 | h6: { 101 | size: ResponsiveSize; 102 | lineheight: ResponsiveSize; 103 | }; 104 | eyebrow: { 105 | size: ResponsiveSize; 106 | lineheight: ResponsiveSize; 107 | }; 108 | subtitle: { 109 | size: ResponsiveSize; 110 | lineheight: ResponsiveSize; 111 | }; 112 | button: { 113 | size: ResponsiveSize; 114 | lineheight: ResponsiveSize; 115 | }; 116 | buttonBig: { 117 | size: ResponsiveSize; 118 | lineheight: ResponsiveSize; 119 | }; 120 | lead: { 121 | size: ResponsiveSize; 122 | lineheight: ResponsiveSize; 123 | }; 124 | input: { 125 | size: ResponsiveSize; 126 | lineheight: ResponsiveSize; 127 | }; 128 | inputBig: { 129 | size: ResponsiveSize; 130 | lineheight: ResponsiveSize; 131 | }; 132 | strong: { 133 | size: ResponsiveSize; 134 | lineheight: ResponsiveSize; 135 | }; 136 | text: { 137 | size: ResponsiveSize; 138 | lineheight: ResponsiveSize; 139 | }; 140 | small: { 141 | size: ResponsiveSize; 142 | lineheight: ResponsiveSize; 143 | }; 144 | blockquote: { 145 | size: ResponsiveSize; 146 | lineheight: ResponsiveSize; 147 | }; 148 | } 149 | 150 | export interface Theme extends EmotionTheme { 151 | isDark?: boolean; 152 | spacing?: Spacing; 153 | colors?: Colors; 154 | fonts?: Fonts; 155 | sizes?: FontSizes; 156 | } 157 | 158 | export interface ThemeProps { 159 | theme: Theme; 160 | } 161 | 162 | export interface ThemeProviderProps { 163 | children: React.ReactNode; 164 | theme: Theme; 165 | } 166 | -------------------------------------------------------------------------------- /src/assets/svg/Logo.tsx: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | 3 | function Logo() { 4 | return ( 5 | 12 | 16 | 20 | 24 | 28 | 34 | 38 | 42 | 48 | 52 | 56 | 60 | 61 | ); 62 | } 63 | 64 | export { Logo }; 65 | -------------------------------------------------------------------------------- /src/components/Page/Page.tsx: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import Head from "next/head"; 3 | 4 | export const appleTouchIcon = 5 | "https://nextify.s3-eu-west-1.amazonaws.com/img/meta/180.png"; 6 | export const favIcon32 = 7 | "https://nextify.s3-eu-west-1.amazonaws.com/img/meta/32.png"; 8 | export const favIcon16 = 9 | "https://nextify.s3-eu-west-1.amazonaws.com/img/meta/16.png"; 10 | export const favIcon = 11 | "https://nextify.s3-eu-west-1.amazonaws.com/img/meta/favicon.ico"; 12 | export const safariPinnedTab = 13 | "https://nextify.s3-eu-west-1.amazonaws.com/img/meta/512.svg"; 14 | export const preview = 15 | "https://nextify.s3-eu-west-1.amazonaws.com/img/meta/preview.jpg"; 16 | 17 | const Page = ({ 18 | title = "Nextify", 19 | description = "React apps using Next.js and Emotion.", 20 | image = preview, 21 | children, 22 | }) => ( 23 | 24 | 25 | 26 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 45 | 46 | 47 | 48 | 49 | {title + " - Nextify"} 50 | 51 | {children} 52 | 53 | ); 54 | 55 | export { Page }; 56 | -------------------------------------------------------------------------------- /src/components/Page/index.ts: -------------------------------------------------------------------------------- 1 | export { 2 | Page, 3 | appleTouchIcon, 4 | favIcon32, 5 | favIcon16, 6 | favIcon, 7 | safariPinnedTab, 8 | preview, 9 | } from "./Page"; 10 | -------------------------------------------------------------------------------- /src/pages/_app.tsx: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import { ThemeProvider } from "@emotion/react"; 3 | import { globalStyles } from "../assets/styles/globalStyles"; 4 | import { theme } from "../assets/styles/theme"; 5 | 6 | function App({ Component, pageProps }) { 7 | return ( 8 | <> 9 | 10 | {globalStyles} 11 | 12 | 13 | 14 | ); 15 | } 16 | 17 | export default App; 18 | -------------------------------------------------------------------------------- /src/pages/_document.tsx: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import { Html, Head, Main, NextScript } from "next/document"; 3 | 4 | function Document() { 5 | return ( 6 | 7 | 8 | 13 | 18 | 23 | 29 | 30 | 31 |
32 | 33 | 34 | 35 | ); 36 | } 37 | 38 | export default Document; 39 | -------------------------------------------------------------------------------- /src/pages/index.tsx: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import { css } from "@emotion/react"; 3 | import { Container, H1, Space } from "cherry-components"; 4 | import { Page } from "../components/Page"; 5 | import { Logo } from "../assets/svg/Logo"; 6 | 7 | function Index() { 8 | return ( 9 | 10 | 11 | 12 |

13 | 14 |

15 | 16 |
css` 18 | padding: 32px; 19 | background-color: ${theme.colors.primary}; 20 | color: ${theme.colors.light}; 21 | font-size: ${theme.sizes.h4.size.desktop}; 22 | border-radius: 12px; 23 | transition: all 0.3s ease; 24 | 25 | &:hover { 26 | background-color: ${theme.colors.primaryDark}; 27 | } 28 | `} 29 | > 30 | Hello world. 31 |
32 |
33 |
34 | ); 35 | } 36 | 37 | export default Index; 38 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "es5", 4 | "lib": ["dom", "dom.iterable", "esnext"], 5 | "allowJs": true, 6 | "skipLibCheck": true, 7 | "strict": false, 8 | "forceConsistentCasingInFileNames": true, 9 | "noEmit": true, 10 | "esModuleInterop": true, 11 | "module": "esnext", 12 | "moduleResolution": "node", 13 | "resolveJsonModule": true, 14 | "isolatedModules": true, 15 | "jsx": "preserve", 16 | "types": ["@emotion/react/types/css-prop"], 17 | "baseUrl": "./src", 18 | "incremental": true 19 | }, 20 | "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", "next.config.js"], 21 | "exclude": ["node_modules"] 22 | } 23 | --------------------------------------------------------------------------------