From 596f6218e6fc5fcd1d09881329116dfba81b6c6f Mon Sep 17 00:00:00 2001 From: nothingismagick Date: Sun, 17 Nov 2019 22:30:14 +0100 Subject: [PATCH] feat(icons): add and test icon generation for tauri (#55) --- .editorconfig | 9 + .gitignore | 1 + README.md | 64 +- tauri-logo.png => app-icon.png | Bin jest.config.js | 5 +- mode/bin/tauri-dev.js | 3 +- mode/bin/tauri-icon.js | 61 ++ mode/bin/tauri-init.js | 7 +- mode/bin/tauri.js | 12 +- mode/helpers/app-paths.js | 3 +- mode/helpers/tauricon.config.js | 92 ++ mode/helpers/tauricon.js | 420 ++++++++ package.json | 8 + test/jest/__tests__/tauri.spec.js | 16 +- test/jest/__tests__/tauricon.spec.js | 56 + test/jest/fixtures/notAMeme.jpg | Bin 0 -> 53218 bytes test/jest/fixtures/tauri-logo.png | Bin 0 -> 125625 bytes test/jest/jest.setup.js | 3 +- yarn.lock | 1457 +++++++++++++++++++++++++- 19 files changed, 2132 insertions(+), 85 deletions(-) create mode 100644 .editorconfig rename tauri-logo.png => app-icon.png (100%) create mode 100644 mode/bin/tauri-icon.js create mode 100644 mode/helpers/tauricon.config.js create mode 100644 mode/helpers/tauricon.js create mode 100644 test/jest/__tests__/tauricon.spec.js create mode 100644 test/jest/fixtures/notAMeme.jpg create mode 100644 test/jest/fixtures/tauri-logo.png diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 000000000..9d08a1a82 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,9 @@ +root = true + +[*] +charset = utf-8 +indent_style = space +indent_size = 2 +end_of_line = lf +insert_final_newline = true +trim_trailing_whitespace = true diff --git a/.gitignore b/.gitignore index c53ebf364..3d3bc0503 100644 --- a/.gitignore +++ b/.gitignore @@ -62,3 +62,4 @@ package-lock.json src-tauri +test/jest/tmp \ No newline at end of file diff --git a/README.md b/README.md index 14469082f..614b7b91c 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # tauri [WIP] ## A fresh take on creating cross-platform apps. [![status](https://img.shields.io/badge/Status-Internal%20Review-yellow.svg)](https://github.com/quasarframework/quasar/tree/tauri) -[![version](https://img.shields.io/badge/Version-unreleased-yellow.svg)](https://github.com/tauri-apps/tauri/tree/dev) +[![version](https://img.shields.io/badge/Version-unreleased-yellow.svg)](https://github.com/tauri-apps/tauri/tree/dev) [![Chat Server](https://img.shields.io/badge/chat-on%20discord-7289da.svg)](https://discord.gg/SpmNs4S) [![devto](https://img.shields.io/badge/dev.to-blog-black.svg)](https://dev.to/tauri) @@ -10,64 +10,64 @@ [![support](https://img.shields.io/badge/Sponsor-Opencollective-blue.svg)](https://opencollective.com/tauri) -**Tauri** is a tool for building tiny, blazing fast binaries for all +**Tauri** is a tool for building tiny, blazing fast binaries for all major desktop platforms. It was incubated at Quasar Framework. -Whether you are just starting out making apps for your meetup or -regularly crunch terabyte datasets, we are absolutely confident that +Whether you are just starting out making apps for your meetup or +regularly crunch terabyte datasets, we are absolutely confident that you will love using Tauri as much as we love making and maintaining it. ## Who Tauri is For -Because of the way Tauri has been built and can be extended, developers -are able to interface not only with the entire Rust ecosystem, but also -with many other programming languages. Being freed of the heaviest thing -in the universe and the many shortcomings of server-side Javascript +Because of the way Tauri has been built and can be extended, developers +are able to interface not only with the entire Rust ecosystem, but also +with many other programming languages. Being freed of the heaviest thing +in the universe and the many shortcomings of server-side Javascript suddenly opens up whole new avenues for high-performance, security-focused -applications that need the purebred power, agility and community +applications that need the purebred power, agility and community acceptance of a low-level language. -We expect to witness an entire new class of applications being built with -Tauri. From a simple calender to locally crunching massive realtime +We expect to witness an entire new class of applications being built with +Tauri. From a simple calender to locally crunching massive realtime feeds at particle colliders or even mesh-network based distributed message- -passing ecosystems - the bar has been raised and gauntlet thrown. +passing ecosystems - the bar has been raised and gauntlet thrown. What will you make? ## 5 Reasons to consider Tauri - **BUNDLE SIZE** of a vanilla Tauri app is less than 3 MB - about 140 MB smaller than what you get with Electron. -- **MEMORY FOOTPRINT** is less than half of the size of an Electron app built from the same codebase. -- **SECURITY** is Tauri's biggest priority and we take it so seriously that we innovate to keep hackers out of your apps. +- **MEMORY FOOTPRINT** is less than half of the size of an Electron app built from the same codebase. +- **SECURITY** is Tauri's biggest priority and we take it so seriously that we innovate to keep hackers out of your apps. - **RELIABILITY** of the underlying code base is why critical libraries have been forked and will be perpetually maintained. - **FLOSS** licensing is regretfully impossible with downstream Chromium consumers, like Electron. Sources: [0](https://lists.gnu.org/archive/html/libreplanet-discuss/2017-01/msg00056.html) [1](https://lists.gnu.org/archive/html/directory-discuss/2017-12/msg00008.html) [2](https://lists.gnu.org/archive/html/libreplanet-discuss/2019-02/msg00001.html) ## Technical Details -The user interface in Tauri apps currently leverages Cocoa/WebKit on macOS, -gtk-webkit2 on Linux and MSHTML (IE10/11) or Webkit via Edge on Windows. -**Tauri** is based on the MIT licensed prior work known as +The user interface in Tauri apps currently leverages Cocoa/WebKit on macOS, +gtk-webkit2 on Linux and MSHTML (IE10/11) or Webkit via Edge on Windows. +**Tauri** is based on the MIT licensed prior work known as [webview](https://github.com/zserge/webview). The default binding to the underlying webview library currently uses Rust, -but other languages like Golang or Python (and many others) are possible +but other languages like Golang or Python (and many others) are possible (and only a PR away). -> Rust is blazingly fast and memory-efficient: with no runtime or garbage -collector, it can power performance-critical services, run on embedded +> Rust is blazingly fast and memory-efficient: with no runtime or garbage +collector, it can power performance-critical services, run on embedded devices, and easily integrate with other languages. Rust’s rich type system and ownership model guarantee memory-safety and thread-safety — and enable -you to eliminate many classes of bugs at compile-time. Rust has great +you to eliminate many classes of bugs at compile-time. Rust has great documentation, a friendly compiler with useful error messages, and top-notch tooling — an integrated package manager and build tool, smart multi-editor -support with auto-completion and type inspections, an auto-formatter, and +support with auto-completion and type inspections, an auto-formatter, and more. - [https://www.rust-lang.org/](https://www.rust-lang.org/) This combination of power, safety and usability are why we chose Rust to be the default binding for Tauri. It is our intention to provide the most safe -and performant native app experience (for devs and app consumers), out of -the box. +and performant native app experience (for devs and app consumers), out of +the box. -To this end, we have spent a great deal of time creating an especially secure -localhost-free backend for the security conscious application-artisans. This -means that your app does not use a localhost server, as is generally the case with +To this end, we have spent a great deal of time creating an especially secure +localhost-free backend for the security conscious application-artisans. This +means that your app does not use a localhost server, as is generally the case with cordova apps. This also has the positive side effect, that less code is needed and the final binaries are smaller. @@ -93,12 +93,12 @@ you through the process. Here is a bit of a status report. - [ ] Tray (coming soon) - [x] Copy Buffer -#### API +#### API - [ ] answer - enable rust to direct the UI - [ ] bridge - enable Quasar Bridge - [x] event - enable binding to message - [x] execute - STDOUT Passthrough with Command Invocation -- [x] listFiles - list files in a directory +- [x] listFiles - list files in a directory - [x] open - open link in a browser - [x] readBinaryFile - read binary file from local filesystem - [x] readTextFile - read text file from local filesystem @@ -161,20 +161,20 @@ projects here in this repository, in order to guarantee the security of the code and our ability to enhance it with features that may not be needed for other consumers. -We hope that this code is useful, but make no claims to suitability or +We hope that this code is useful, but make no claims to suitability or guarantees that it will work outside of the Quasar ecosystem. This has been done with our best attempt at due diligence and in respect of the original authors. Thankyou - this project would never have been possible without your amazing contribution to open-source and we are honoured to carry the torch further. Of special note: -- [zserge](https://github.com/zserge) for the original webview approach and +- [zserge](https://github.com/zserge) for the original webview approach and go bindings - [Boscop](https://github.com/Boscop) for the Rust Bindings - [Burtonago](https://github.com/burtonageo) for the Cargo Bundle prototype ## Contributing -Please make sure to read the [Contributing Guide](./.github/CONTRIBUTING.md) +Please make sure to read the [Contributing Guide](./.github/CONTRIBUTING.md) before making a pull request. Thank you to all the people who already contributed to Tauri! diff --git a/tauri-logo.png b/app-icon.png similarity index 100% rename from tauri-logo.png rename to app-icon.png diff --git a/jest.config.js b/jest.config.js index 96a55527a..b8434a2d1 100644 --- a/jest.config.js +++ b/jest.config.js @@ -11,7 +11,7 @@ module.exports = { collectCoverage: true, coverageDirectory: '/test/jest/coverage', collectCoverageFrom: [ - '/mode/**/*.js', + '/mode/**/*.js' ], coverageReporters: ['json-summary', 'text', 'lcov'], coverageThreshold: { @@ -29,7 +29,8 @@ module.exports = { moduleFileExtensions: ['js', 'json'], moduleNameMapper: { '^~/(.*)$': '/$1', - '^mode/(.*)$': '/mode/$1' + '^mode/(.*)$': '/mode/$1', + '^test/(.*)$': '/test/$1' }, transform: {} } diff --git a/mode/bin/tauri-dev.js b/mode/bin/tauri-dev.js index 6a04f3865..a1158c3f8 100644 --- a/mode/bin/tauri-dev.js +++ b/mode/bin/tauri-dev.js @@ -1,5 +1,4 @@ -const - parseArgs = require('minimist') +const parseArgs = require('minimist') const argv = parseArgs(process.argv.slice(2), { alias: { diff --git a/mode/bin/tauri-icon.js b/mode/bin/tauri-icon.js new file mode 100644 index 000000000..9ddc62736 --- /dev/null +++ b/mode/bin/tauri-icon.js @@ -0,0 +1,61 @@ +const parseArgs = require('minimist') +const { appDir, tauriDir } = require('../helpers/app-paths') +const logger = require('../helpers/logger') +const log = logger('app:tauri') +const warn = logger('app:tauri (icon)', 'red') +const { tauricon } = require('../helpers/tauricon') +const { resolve } = require('path') + +/** + * @type {object} + * @property {boolean} h + * @property {boolean} help + * @property {string|boolean} f + * @property {string|boolean} force + * @property {boolean} l + * @property {boolean} log + * @property {boolean} c + * @property {boolean} config + * @property {boolean} s + * @property {boolean} source + * @property {boolean} t + * @property {boolean} target + */ +const argv = parseArgs(process.argv.slice(2), { + alias: { + h: 'help', + l: 'log', + c: 'config', + s: 'source', + t: 'target' + }, + boolean: ['h', 'l'] +}) + +if (argv.help) { + console.log(` + Description + Create all the icons you need for your Tauri app. + + Usage + $ tauri icon + + Options + --help, -h Displays this message + --log, l Logging [boolean] + --icon, i Source icon (png, 1240x1240 with transparency) + --target, t Target folder (default: 'src-tauri/icons') + --compression, c Compression type [pngquant|optipng|zopfli] + `) + process.exit(0) +} + +tauricon.make( + argv.i || resolve(appDir, 'app-icon.png'), + argv.t || resolve(tauriDir, 'icons'), + argv.c || 'optipng' +).then(() => { + log('(tauricon) Completed') +}).catch(e => { + warn(e) +}) diff --git a/mode/bin/tauri-init.js b/mode/bin/tauri-init.js index 44a734096..355783d7d 100644 --- a/mode/bin/tauri-init.js +++ b/mode/bin/tauri-init.js @@ -1,5 +1,4 @@ -const - parseArgs = require('minimist') +const parseArgs = require('minimist') const appPaths = require('../helpers/app-paths') const logger = require('../helpers/logger') const log = logger('app:tauri') @@ -13,6 +12,8 @@ const warn = logger('app:tauri (init)', 'red') * @property {string|boolean} force * @property {boolean} l * @property {boolean} log + * @property {boolean} d + * @property {boolean} directory */ const argv = parseArgs(process.argv.slice(2), { alias: { @@ -44,7 +45,7 @@ const { inject } = require('../template') const target = appPaths.tauriDir -if (inject(target, 'all', argv.f, argv.l, argv.d)) { +if (inject(target, 'all', argv.f || null, argv.l || null, argv.d || null)) { log('tauri init successful') } else { warn('tauri init unsuccessful') diff --git a/mode/bin/tauri.js b/mode/bin/tauri.js index 44eb03f2c..7e497efdb 100755 --- a/mode/bin/tauri.js +++ b/mode/bin/tauri.js @@ -1,10 +1,18 @@ #!/usr/bin/env node -const cmds = ['init', 'dev', 'build', 'help'] +const cmds = ['init', 'dev', 'build', 'help', 'icon'] const cmd = process.argv[2] - +/** + * @description This is the bootstrapper that in turn calls subsequent + * Tauri Commands + * + * @param {string|array} command + */ const tauri = function (command) { + if (typeof command === 'object') { // technically we just care about an array + command = command[0] + } if (!command || command === '-h' || command === '--help' || command === 'help') { console.log(` Description diff --git a/mode/helpers/app-paths.js b/mode/helpers/app-paths.js index ffe616a95..a158cc398 100644 --- a/mode/helpers/app-paths.js +++ b/mode/helpers/app-paths.js @@ -1,5 +1,4 @@ -const - { existsSync } = require('fs') +const { existsSync } = require('fs') const { resolve, join, normalize, sep } = require('path') /** diff --git a/mode/helpers/tauricon.config.js b/mode/helpers/tauricon.config.js new file mode 100644 index 000000000..c5d7d1376 --- /dev/null +++ b/mode/helpers/tauricon.config.js @@ -0,0 +1,92 @@ +exports.options = { + // folder determines in which path to drop the generated file + // prefix is the first part of the generated file's name + // infix adds e.g. '44x44' based on the size in sizes to the generated file's name + // suffix adds a file-ending to the generated file's name + // sizes determines the pixel width and height to use + background_color: '#000074', + theme_color: '#02aa9b', + sharp: 'kernel: sharp.kernel.lanczos3', // one of [nearest|cubic|lanczos2|lanczos3] + minify: { + batch: false, + overwrite: true, + available: ['pngquant', 'optipng', 'zopfli'], + type: 'pngquant', + pngcrushOptions: { + reduce: true + }, + pngquantOptions: { + quality: [0.6, 0.8], + floyd: 0.1, // 0.1 - 1 + speed: 10 // 1 - 10 + }, + optipngOptions: { + optimizationLevel: 4, + bitDepthReduction: true, + colorTypeReduction: true, + paletteReduction: true + }, + zopfliOptions: { + transparent: true, + more: true + } + }, + splash_type: 'generate', + tauri: { + linux: { + folder: '.', + prefix: '', + infix: true, + suffix: '.png', + sizes: [ + 32, 128 + ] + }, + linux_2x: { + folder: '.', + prefix: '128x128@2x', + infix: false, + suffix: '.png', + sizes: [ + 256 + ] + }, + defaults: { + folder: '.', + prefix: 'icon', + infix: false, + suffix: '.png', + sizes: [ + 512 + ] + }, + appx_logo: { + folder: '.', + prefix: 'StoreLogo', + infix: false, + suffix: '.png', + sizes: [ + 50 + ] + }, + appx_square: { + folder: '.', + prefix: 'Square', + infix: true, + suffix: 'Logo.png', + sizes: [ + 30, + 44, + 71, + 89, + 107, + 142, + 150, + 284, + 310 + ] + } + // todo: look at capacitor and cordova for insight into what icons + // we need for those distribution targets + } +} diff --git a/mode/helpers/tauricon.js b/mode/helpers/tauricon.js new file mode 100644 index 000000000..5b23d9b07 --- /dev/null +++ b/mode/helpers/tauricon.js @@ -0,0 +1,420 @@ +'use strict' + +/** + * This is a module that takes an original image and resizes + * it to common icon sizes and will put them in a folder. + * It will retain transparency and can make special file + * types. You can control the settings. + * + * @module tauricon + * @exports tauricon + * @author Daniel Thompson-Yvetot + * @license MIT + */ + +const path = require('path') +const sharp = require('sharp') +const imagemin = require('imagemin') +const pngquant = require('imagemin-pngquant') +const optipng = require('imagemin-optipng') +const zopfli = require('imagemin-zopfli') +const png2icons = require('png2icons') +const readChunk = require('read-chunk') +const isPng = require('is-png') + +const settings = require('./tauricon.config') +let image = false + +const { + access, + writeFileSync, + ensureDir, + ensureFileSync +} = require('fs-extra') + +const exists = async function (file) { + try { + await access(file) + return true + } catch (err) { + return false + } +} + +/** + * This is the first call that attempts to memoize the sharp(src). + * If the source image cannot be found or if it is not a png, it + * is a failsafe that will exit or throw. + * + * @param {string} src - a folder to target + * @exits {error} if not a png, if not an image + */ +const checkSrc = async function (src) { + if (image !== false) { + return image + } else { + const srcExists = await exists(src) + if (!srcExists) { + image = false + throw new Error('[ERROR] Source image for tauricon not found') + } else { + const buffer = await readChunk(src, 0, 8) + if (isPng(buffer) === true) { + return (image = sharp(src)) + } else { + image = false + throw new Error('[ERROR] Source image for tauricon is not a png') + // exit because this is BAD! + // Developers should catch () { } this as it is + // the last chance to stop bad things happening. + } + } + } +} + +/** + * Sort the folders in the current job for unique folders. + * + * @param {object} options - a subset of the settings + * @returns {array} folders + */ +const uniqueFolders = function (options) { + let folders = [] + for (const type in options) { + if (options[type].folder) { + folders.push(options[type].folder) + } + } + folders = folders.sort().filter((x, i, a) => !i || x !== a[i - 1]) + return folders +} + +/** + * Turn a hex color (like #212342) into r,g,b values + * + * @param {string} hex - hex colour + * @returns {array} r,g,b + */ +const hexToRgb = function (hex) { + // https://stackoverflow.com/questions/5623838/rgb-to-hex-and-hex-to-rgb + // Expand shorthand form (e.g. "03F") to full form (e.g. "0033FF") + const shorthandRegex = /^#?([a-f\d])([a-f\d])([a-f\d])$/i + hex = hex.replace(shorthandRegex, function (m, r, g, b) { + return r + r + g + g + b + b + }) + + const result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex) + return result + ? { + r: parseInt(result[1], 16), + g: parseInt(result[2], 16), + b: parseInt(result[3], 16) + } + : null +} + +/** + * validate image and directory + * @param {string} src + * @param {string} target + * @returns {Promise} + */ +const validate = async function (src, target) { + if (target !== undefined) { + await ensureDir(target) + } + return checkSrc(src) +} + +/** + * Log progress in the command line + * + * @param {string} msg + * @param {boolean} end + */ +const progress = function (msg) { + console.log(msg) + // process.stdout.write(` ${msg} \r`) +} + +/** + * Create a spinner on the command line + * + * @example + * + * const spinnerInterval = spinner() + * // later + * clearInterval(spinnerInterval) + * @returns {function} - the interval object + */ +const spinner = function () { + return setInterval(() => { + process.stdout.write('/ \r') + setTimeout(() => { + process.stdout.write('- \r') + setTimeout(() => { + process.stdout.write('\\ \r') + setTimeout(() => { + process.stdout.write('| \r') + }, 100) + }, 100) + }, 100) + }, 500) +} + +const tauricon = exports.tauricon = { + validate: async function (src, target) { + await validate(src, target) + return typeof image === 'object' + }, + version: function () { + return require('../../package.json').version + }, + /** + * + * @param {string} src + * @param {string} target + * @param {string} strategy + * @param {object} options + */ + make: async function (src, target, strategy, options) { + const spinnerInterval = spinner() + options = options || settings.options.tauri + await this.validate(src, target) + progress('Building Tauri icns and ico') + await this.icns(src, target, options, strategy) + progress('Building Tauri png icons') + await this.build(src, target, options) + if (strategy) { + progress(`Minifying assets with ${strategy}`) + await this.minify(target, options, strategy, 'batch') + } else { + console.log('no minify strategy') + } + progress('Tauricon Finished') + clearInterval(spinnerInterval) + return true + }, + + /** + * Creates a set of images according to the subset of options it knows about. + * + * @param {string} src - image location + * @param {string} target - where to drop the images + * @param {object} options - js object that defines path and sizes + */ + build: async function (src, target, options) { + await this.validate(src, target) // creates the image object + const buildify2 = async function (pvar) { + try { + const pngImage = image.resize(pvar[1], pvar[1]) + if (pvar[2]) { + const rgb = hexToRgb(options.background_color) + pngImage.flatten({ + background: { r: rgb.r, g: rgb.g, b: rgb.b, alpha: 1 } + }) + } + pngImage.png() + await pngImage.toFile(pvar[0]) + } catch (err) { + console.log(err) + } + } + + let output + const folders = uniqueFolders(options) + for (const n in folders) { + // make the folders first + ensureDir(`${target}${path.sep}${folders[n]}`) + } + for (const optionKey in options) { + const option = options[optionKey] + // chain up the transforms + for (const sizeKey in option.sizes) { + const size = option.sizes[sizeKey] + if (!option.splash) { + const dest = `${target}/${option.folder}` + if (option.infix === true) { + output = `${dest}${path.sep}${option.prefix}${size}x${size}${option.suffix}` + } else { + output = `${dest}${path.sep}${option.prefix}${option.suffix}` + } + const pvar = [output, size, option.background] + await buildify2(pvar) + } + } + } + }, + /** + * Creates a set of splash images (COMING SOON!!!) + * + * @param {string} src - icon location + * @param {string} splashSrc - splashscreen location + * @param {string} target - where to drop the images + * @param {object} options - js object that defines path and sizes + */ + splash: async function (src, splashSrc, target, options) { + let output + let block = false + const rgb = hexToRgb(options.background_color) + + // three options + // options: splashscreen_type [generate | overlay | pure] + // - generate (icon + background color) DEFAULT + // - overlay (icon + splashscreen) + // - pure (only splashscreen) + + let sharpSrc + if (splashSrc === src) { + // prevent overlay or pure + block = true + } + if (block === true || options.splashscreen_type === 'generate') { + await this.validate(src, target) + if (!image) { + process.exit(1) + } + sharpSrc = sharp(src) + sharpSrc.extend({ + top: 726, + bottom: 726, + left: 726, + right: 726, + background: { + r: rgb.r, + g: rgb.g, + b: rgb.b, + alpha: 1 + } + }) + .flatten({ background: { r: rgb.r, g: rgb.g, b: rgb.b, alpha: 1 } }) + } else if (options.splashscreen_type === 'overlay') { + sharpSrc = sharp(splashSrc) + .flatten({ background: { r: rgb.r, g: rgb.g, b: rgb.b, alpha: 1 } }) + .composite([{ + input: src + // blend: 'multiply' <= future work, maybe just a gag + }]) + } else if (options.splashscreen_type === 'pure') { + sharpSrc = sharp(splashSrc) + .flatten({ background: { r: rgb.r, g: rgb.g, b: rgb.b, alpha: 1 } }) + } + + const data = await sharpSrc.toBuffer() + + for (const optionKey in options) { + const option = options[optionKey] + for (const sizeKey in option.sizes) { + const size = option.sizes[sizeKey] + if (option.splash) { + const dest = `${target}${path.sep}${option.folder}` + await ensureDir(dest) + + if (option.infix === true) { + output = `${dest}${path.sep}${option.prefix}${size}x${size}${option.suffix}` + } else { + output = `${dest}${path.sep}${option.prefix}${option.suffix}` + } + // console.log('p1', output, size) + const pvar = [output, size] + let sharpData = sharp(data) + sharpData = sharpData.resize(pvar[1][0], pvar[1][1]) + await sharpData.toFile(pvar[0]) + } + } + } + }, + + /** + * Minifies a set of images + * + * @param {string} target - image location + * @param {object} options - where to drop the images + * @param {string} strategy - which minify strategy to use + * @param {string} mode - singlefile or batch + */ + minify: async function (target, options, strategy, mode) { + let cmd + const minify = settings.options.minify + if (!minify.available.find(x => x === strategy)) { + strategy = minify.type + } + switch (strategy) { + case 'pngquant': + cmd = pngquant(minify.pngquantOptions) + break + case 'optipng': + cmd = optipng(minify.optipngOptions) + break + case 'zopfli': + cmd = zopfli(minify.zopfliOptions) + break + } + + const __minifier = async (pvar) => { + await imagemin([pvar[0]], { + destination: pvar[1], + plugins: [cmd] + }).catch(err => { + console.log(err) + }) + } + switch (mode) { + case 'singlefile': + await __minifier([target, path.dirname(target)], cmd) + break + case 'batch': + // eslint-disable-next-line no-case-declarations + const folders = uniqueFolders(options) + for (const n in folders) { + console.log('batch minify:', folders[n]) + await __minifier([ + `${target}${path.sep}${folders[n]}${path.sep}*.png`, + `${target}${path.sep}${folders[n]}` + ], cmd) + } + break + default: + console.error('* [ERROR] Minify mode must be one of [ singlefile | batch]') + process.exit(1) + } + return 'minified' + }, + + /** + * Creates special icns and ico filetypes + * + * @param {string} src - image location + * @param {string} target - where to drop the images + * @param {object} options + * @param {string} strategy + */ + icns: async function (src, target, options, strategy) { + try { + if (!image) { + process.exit(1) + } + await this.validate(src, target) + + const sharpSrc = sharp(src) + const buf = await sharpSrc.toBuffer() + + const out = await png2icons.createICNS(buf, png2icons.BICUBIC, 0) + ensureFileSync(path.join(target, '/icon.icns')) + writeFileSync(path.join(target, '/icon.icns'), out) + + const out2 = await png2icons.createICO(buf, png2icons.BICUBIC, 0, true) + ensureFileSync(path.join(target, '/icon.ico')) + writeFileSync(path.join(target, '/icon.ico'), out2) + } catch (err) { + console.error(err) + } + } +} + +if (typeof exports !== 'undefined') { + if (typeof module !== 'undefined' && module.exports) { + exports = module.exports = tauricon + } + exports.tauricon = tauricon +} diff --git a/package.json b/package.json index 7a8414a6e..130e01dec 100644 --- a/package.json +++ b/package.json @@ -36,10 +36,18 @@ "fast-glob": "^3.0.4", "fs-extra": "^8.1.0", "html-webpack-inline-source-plugin": "^0.0.10", + "imagemin": "^7.0.1", + "imagemin-optipng": "^7.1.0", + "imagemin-pngquant": "^8.0.0", + "imagemin-zopfli": "^6.0.0", + "is-png": "^2.0.0", "lodash.debounce": "^4.0.8", "lodash.template": "^4.5.0", "minimist": "^1.2.0", "ms": "^2.1.2", + "png2icons": "^2.0.1", + "read-chunk": "^3.2.0", + "sharp": "^0.23.2", "webpack-merge": "^4.2.1" }, "devDependencies": { diff --git a/test/jest/__tests__/tauri.spec.js b/test/jest/__tests__/tauri.spec.js index 572d325da..1af2b62e4 100644 --- a/test/jest/__tests__/tauri.spec.js +++ b/test/jest/__tests__/tauri.spec.js @@ -1,34 +1,32 @@ const { tauri } = require('mode/bin/tauri') -// const mockProcess = require('jest-mock-process') - describe('[CLI] tauri.js', () => { it('displays a help message', async () => { jest.spyOn(console, 'log') jest.spyOn(process, 'exit').mockImplementation(() => true) - let result = tauri('help') + tauri('help') console.log(process.exit.mock.calls[0][0]) expect(process.exit.mock.calls[0][0]).toBe(0) - // console.log(console.log.mock.calls[0][0]) expect(!!console.log.mock.calls[0][0]).toBe(true) - result = tauri('--help') - // console.log(console.log.mock.calls[2][0]) + tauri('--help') expect(!!console.log.mock.calls[2][0]).toBe(true) - result = tauri('-h') + tauri('-h') expect(!!console.log.mock.calls[3][0]).toBe(true) + tauri(['help']) + expect(!!console.log.mock.calls[4][0]).toBe(true) jest.clearAllMocks() }) it('will not run an unavailable command', async () => { jest.spyOn(console, 'log') - let result = tauri('foo') + tauri('foo') expect(console.log.mock.calls[0][0].split('.')[0]).toBe('Invalid command foo') jest.clearAllMocks() }) it('will pass on an available command', async () => { jest.spyOn(console, 'log') - let result = tauri('init') + tauri('init') expect(console.log.mock.calls[0][0].split('.')[0]).toBe('[tauri]: running init') jest.clearAllMocks() }) diff --git a/test/jest/__tests__/tauricon.spec.js b/test/jest/__tests__/tauricon.spec.js new file mode 100644 index 000000000..a87f507ae --- /dev/null +++ b/test/jest/__tests__/tauricon.spec.js @@ -0,0 +1,56 @@ +const { tauricon } = require('mode/helpers/tauricon') +const { tauri } = require('mode/bin/tauri') + +describe('[CLI] tauri-icon internals', () => { + it('tells you the version', () => { + const version = tauricon.version() + expect(!!version).toBe(true) + }) + it('gets you help', async () => { + jest.spyOn(console, 'log') + tauri(['icon', 'help']) + expect(!!console.log.mock.calls[0][0]).toBe(true) + jest.clearAllMocks() + }) + + it('will not validate a non-file', async () => { + try { + await tauricon.validate('test/jest/fixtures/doesnotexist.png', 'test/jest/fixtures/') + } catch (e) { + expect(e.message).toBe('[ERROR] Source image for tauricon not found') + } + }) + it('will not validate a non-png', async () => { + try { + await tauricon.validate('test/jest/fixtures/notAMeme.jpg', 'test/jest/fixtures/') + } catch (e) { + expect(e.message).toBe('[ERROR] Source image for tauricon is not a png') + } + }) + it('can validate an image as PNG', async () => { + const valid = await tauricon.validate('test/jest/fixtures/tauri-logo.png', 'test/jest/fixtures/') + expect(valid).toBe(true) + }) +}) + +/** + * This test suite takes A LOT of time. Maybe 5 minutes...? You may blame + * Zopfli, but don't blame us for trying to help you get the smallest + * possible binaries! + */ +describe('[CLI] tauri-icon builder', () => { + it('makes a set of icons with pngquant', async () => { + const valid = await tauricon.make('test/jest/fixtures/tauri-logo.png', 'test/jest/tmp/pngquant', 'pngquant') + expect(valid).toBe(true) + }) + + it('makes a set of icons with optipng', async () => { + const valid = await tauricon.make('test/jest/fixtures/tauri-logo.png', 'test/jest/tmp/optipng', 'optipng') + expect(valid).toBe(true) + }) + + it('makes a set of icons with zopfli', async () => { + const valid = await tauricon.make('test/jest/fixtures/tauri-logo.png', 'test/jest/tmp/zopfli', 'zopfli') + expect(valid).toBe(true) + }) +}) diff --git a/test/jest/fixtures/notAMeme.jpg b/test/jest/fixtures/notAMeme.jpg new file mode 100644 index 0000000000000000000000000000000000000000..73eef8efa38295a670f339babc91505e3195db71 GIT binary patch literal 53218 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 ~+y@yKc2W!1OFel;-J+yXsD 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 literal 0 HcmV?d00001 diff --git a/test/jest/fixtures/tauri-logo.png b/test/jest/fixtures/tauri-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..d11d62854f56fac824dc745a53b6226b01bbc6fa GIT binary patch literal 125625 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 z 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 { // do nothing }, 1) - require('dotenv').config({ path: '.env.jest' }) diff --git a/yarn.lock b/yarn.lock index 8f453b40e..ef12e13f1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -448,6 +448,11 @@ dependencies: any-observable "^0.3.0" +"@sindresorhus/is@^0.7.0": + version "0.7.0" + resolved "https://registry.npmjs.org/@sindresorhus/is/-/is-0.7.0.tgz#9a06f4f137ee84d7df0460c1fdb1135ffa6c50fd" + integrity sha512-ONhaKPIufzzrlNbqtWFFd+jlnemX6lJAgq9ZeiZtS7I1PIf/la7CW4m83rTXRnVnsMbW2k56pGYu7AUFJD9Pow== + "@types/babel__core@^7.1.0": version "7.1.3" resolved "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.3.tgz#e441ea7df63cd080dfcd02ab199e6d16a735fc30" @@ -673,6 +678,18 @@ aproba@^1.0.3: resolved "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== +arch@^2.1.0: + version "2.1.1" + resolved "https://registry.npmjs.org/arch/-/arch-2.1.1.tgz#8f5c2731aa35a30929221bb0640eed65175ec84e" + integrity sha512-BLM56aPo9vLLFVa8+/+pJLnrZ7QGGTVHWsCwieAWT9o9K8UeGaQbzZbGoabWLOo2ksBCztoXdqBZBplqLDDCSg== + +archive-type@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/archive-type/-/archive-type-4.0.0.tgz#f92e72233056dfc6969472749c267bdb046b1d70" + integrity sha1-+S5yIzBW38aWlHJ0nCZ72wRrHXA= + dependencies: + file-type "^4.2.0" + are-we-there-yet@~1.1.2: version "1.1.5" resolved "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz#4b35c2944f062a8bfcda66410760350fe9ddfc21" @@ -708,6 +725,11 @@ array-equal@^1.0.0: resolved "https://registry.npmjs.org/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93" integrity sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM= +array-find-index@^1.0.1: + version "1.0.2" + resolved "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" + integrity sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E= + array-includes@^3.0.3: version "3.0.3" resolved "https://registry.npmjs.org/array-includes/-/array-includes-3.0.3.tgz#184b48f62d92d7452bb31b323165c7f8bd02266d" @@ -721,6 +743,11 @@ array-union@^2.1.0: resolved "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== +array-uniq@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/array-uniq/-/array-uniq-2.1.0.tgz#46603d5e28e79bfd02b046fcc1d77c6820bd8e98" + integrity sha512-bdHxtev7FN6+MXI1YFW0Q8mQ8dTJc2S8AMfju+ZR77pbg2yAdVyDlwkaUI7Har0LyOMRFPHrJ9lYdyjZZswdlQ== + array-unique@^0.3.2: version "0.3.2" resolved "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" @@ -830,6 +857,11 @@ balanced-match@^1.0.0: resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= +base64-js@^1.0.2: + version "1.3.1" + resolved "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz#58ece8cb75dd07e71ed08c736abc5fac4dbf8df1" + integrity sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g== + base@^0.11.1: version "0.11.2" resolved "https://registry.npmjs.org/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" @@ -850,11 +882,74 @@ bcrypt-pbkdf@^1.0.0: dependencies: tweetnacl "^0.14.3" +bin-build@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/bin-build/-/bin-build-3.0.0.tgz#c5780a25a8a9f966d8244217e6c1f5082a143861" + integrity sha512-jcUOof71/TNAI2uM5uoUaDq2ePcVBQ3R/qhxAz1rX7UfvduAL/RXD3jXzvn8cVcDJdGVkiR1shal3OH0ImpuhA== + dependencies: + decompress "^4.0.0" + download "^6.2.2" + execa "^0.7.0" + p-map-series "^1.0.0" + tempfile "^2.0.0" + +bin-check@^4.1.0: + version "4.1.0" + resolved "https://registry.npmjs.org/bin-check/-/bin-check-4.1.0.tgz#fc495970bdc88bb1d5a35fc17e65c4a149fc4a49" + integrity sha512-b6weQyEUKsDGFlACWSIOfveEnImkJyK/FGW6FAG42loyoquvjdtOIqO6yBFzHyqyVVhNgNkQxxx09SFLK28YnA== + dependencies: + execa "^0.7.0" + executable "^4.1.0" + +bin-version-check@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/bin-version-check/-/bin-version-check-4.0.0.tgz#7d819c62496991f80d893e6e02a3032361608f71" + integrity sha512-sR631OrhC+1f8Cvs8WyVWOA33Y8tgwjETNPyyD/myRBXLkfS/vl74FmH/lFcRl9KY3zwGh7jFhvyk9vV3/3ilQ== + dependencies: + bin-version "^3.0.0" + semver "^5.6.0" + semver-truncate "^1.1.2" + +bin-version@^3.0.0: + version "3.1.0" + resolved "https://registry.npmjs.org/bin-version/-/bin-version-3.1.0.tgz#5b09eb280752b1bd28f0c9db3f96f2f43b6c0839" + integrity sha512-Mkfm4iE1VFt4xd4vH+gx+0/71esbfus2LsnCGe8Pi4mndSPyT+NGES/Eg99jx8/lUGWfu3z2yuB/bt5UB+iVbQ== + dependencies: + execa "^1.0.0" + find-versions "^3.0.0" + +bin-wrapper@^4.0.0, bin-wrapper@^4.0.1: + version "4.1.0" + resolved "https://registry.npmjs.org/bin-wrapper/-/bin-wrapper-4.1.0.tgz#99348f2cf85031e3ef7efce7e5300aeaae960605" + integrity sha512-hfRmo7hWIXPkbpi0ZltboCMVrU+0ClXR/JgbCKKjlDjQf6igXa7OwdqNcFWQZPZTgiY7ZpzE3+LjjkLiTN2T7Q== + dependencies: + bin-check "^4.1.0" + bin-version-check "^4.0.0" + download "^7.1.0" + import-lazy "^3.1.0" + os-filter-obj "^2.0.0" + pify "^4.0.1" + binary-extensions@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.0.0.tgz#23c0df14f6a88077f5f986c0d167ec03c3d5537c" integrity sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow== +bl@^1.0.0: + version "1.2.2" + resolved "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz#a160911717103c07410cef63ef51b397c025af9c" + integrity sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA== + dependencies: + readable-stream "^2.3.5" + safe-buffer "^5.1.1" + +bl@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/bl/-/bl-3.0.0.tgz#3611ec00579fd18561754360b21e9f784500ff88" + integrity sha512-EUAyP5UHU5hxF8BPT0LKW8gjYLhq1DQIcneOX/pL/m2Alo+OYDQAJlHq+yseMP50Os2nHXOSic6Ss3vSQeyf4A== + dependencies: + readable-stream "^3.0.1" + brace-expansion@^1.1.7: version "1.1.11" resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" @@ -905,11 +1000,42 @@ bser@^2.0.0: dependencies: node-int64 "^0.4.0" +buffer-alloc-unsafe@^1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz#bd7dc26ae2972d0eda253be061dba992349c19f0" + integrity sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg== + +buffer-alloc@^1.2.0: + version "1.2.0" + resolved "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz#890dd90d923a873e08e10e5fd51a57e5b7cce0ec" + integrity sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow== + dependencies: + buffer-alloc-unsafe "^1.1.0" + buffer-fill "^1.0.0" + +buffer-crc32@~0.2.3: + version "0.2.13" + resolved "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" + integrity sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI= + +buffer-fill@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz#f8f78b76789888ef39f205cd637f68e702122b2c" + integrity sha1-+PeLdniYiO858gXNY39o5wISKyw= + buffer-from@^1.0.0: version "1.1.1" resolved "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== +buffer@^5.2.1: + version "5.4.3" + resolved "https://registry.npmjs.org/buffer/-/buffer-5.4.3.tgz#3fbc9c69eb713d323e3fc1a895eee0710c072115" + integrity sha512-zvj65TkFeIt3i6aj5bIvJDzjjQQGs4o/sNoezg1F1kYap9Nu2jcUdpwzRSJTHMMzG0H7bZkn4rNQpImhuxWX2A== + dependencies: + base64-js "^1.0.2" + ieee754 "^1.1.4" + cache-base@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" @@ -925,6 +1051,19 @@ cache-base@^1.0.1: union-value "^1.0.0" unset-value "^1.0.0" +cacheable-request@^2.1.1: + version "2.1.4" + resolved "https://registry.npmjs.org/cacheable-request/-/cacheable-request-2.1.4.tgz#0d808801b6342ad33c91df9d0b44dc09b91e5c3d" + integrity sha1-DYCIAbY0KtM8kd+dC0TcCbkeXD0= + dependencies: + clone-response "1.0.2" + get-stream "3.0.0" + http-cache-semantics "3.8.1" + keyv "3.0.0" + lowercase-keys "1.0.0" + normalize-url "2.0.1" + responselike "1.0.2" + caller-callsite@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz#847e0fce0a223750a9a027c54b33731ad3154134" @@ -949,6 +1088,19 @@ callsites@^3.0.0: resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== +camelcase-keys@^2.0.0: + version "2.1.0" + resolved "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7" + integrity sha1-MIvur/3ygRkFHvodkyITyRuPkuc= + dependencies: + camelcase "^2.0.0" + map-obj "^1.0.0" + +camelcase@^2.0.0: + version "2.1.1" + resolved "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" + integrity sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8= + camelcase@^5.0.0, camelcase@^5.3.1: version "5.3.1" resolved "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" @@ -966,6 +1118,16 @@ caseless@~0.12.0: resolved "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= +caw@^2.0.0, caw@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/caw/-/caw-2.0.1.tgz#6c3ca071fc194720883c2dc5da9b074bfc7e9e95" + integrity sha512-Cg8/ZSBEa8ZVY9HspcGUYaK63d/bN7rqS3CYCzEGUxuYv6UlmcjzDUz2fCFFHyTvUW5Pk0I+3hkA3iXlIj6guA== + dependencies: + get-proxy "^2.0.0" + isurl "^1.0.0-alpha5" + tunnel-agent "^0.6.0" + url-to-options "^1.0.1" + chalk@^1.0.0, chalk@^1.1.3: version "1.1.3" resolved "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" @@ -1006,7 +1168,7 @@ chokidar@^3.0.2: optionalDependencies: fsevents "^2.0.6" -chownr@^1.1.1: +chownr@^1.1.1, chownr@^1.1.3: version "1.1.3" resolved "https://registry.npmjs.org/chownr/-/chownr-1.1.3.tgz#42d837d5239688d55f303003a508230fa6727142" integrity sha512-i70fVHhmV3DtTl6nqvZOnIjbY0Pe4kAUjwHj8z0zAdgBtYrJyYwLKCCuRBQ5ppkyL0AkN7HKRnETdmdp1zqNXw== @@ -1072,6 +1234,13 @@ cliui@^5.0.0: strip-ansi "^5.2.0" wrap-ansi "^5.1.0" +clone-response@1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz#d1dc973920314df67fbeb94223b4ee350239e96b" + integrity sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws= + dependencies: + mimic-response "^1.0.0" + co@^4.6.0: version "4.6.0" resolved "https://registry.npmjs.org/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" @@ -1090,7 +1259,7 @@ collection-visit@^1.0.0: map-visit "^1.0.0" object-visit "^1.0.0" -color-convert@^1.9.0: +color-convert@^1.9.0, color-convert@^1.9.1: version "1.9.3" resolved "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== @@ -1102,6 +1271,27 @@ color-name@1.1.3: resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= +color-name@^1.0.0: + version "1.1.4" + resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== + +color-string@^1.5.2: + version "1.5.3" + resolved "https://registry.npmjs.org/color-string/-/color-string-1.5.3.tgz#c9bbc5f01b58b5492f3d6857459cb6590ce204cc" + integrity sha512-dC2C5qeWoYkxki5UAXapdjqO672AM4vZuPGRQfO8b5HKuKGBbKWpITyDYN7TOFKvRW7kOgAn3746clDBMDJyQw== + dependencies: + color-name "^1.0.0" + simple-swizzle "^0.2.2" + +color@^3.1.2: + version "3.1.2" + resolved "https://registry.npmjs.org/color/-/color-3.1.2.tgz#68148e7f85d41ad7649c5fa8c8106f098d229e10" + integrity sha512-vXTJhHebByxZn3lDvDJYw4lR5+uB3vuoHsuYA5AKuxRVn5wzzIfQKGLBmgdVRHKTJYeK5rvJcHnrd0Li49CFpg== + dependencies: + color-convert "^1.9.1" + color-string "^1.5.2" + combined-stream@^1.0.6, combined-stream@~1.0.6: version "1.0.8" resolved "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" @@ -1114,6 +1304,13 @@ commander@^2.20.0, commander@~2.20.3: resolved "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== +commander@~2.8.1: + version "2.8.1" + resolved "https://registry.npmjs.org/commander/-/commander-2.8.1.tgz#06be367febfda0c330aa1e2a072d3dc9762425d4" + integrity sha1-Br42f+v9oMMwqh4qBy09yXYkJdQ= + dependencies: + graceful-readlink ">= 1.0.0" + component-emitter@^1.2.1: version "1.3.0" resolved "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" @@ -1124,16 +1321,36 @@ concat-map@0.0.1: resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= +config-chain@^1.1.11: + version "1.1.12" + resolved "https://registry.npmjs.org/config-chain/-/config-chain-1.1.12.tgz#0fde8d091200eb5e808caf25fe618c02f48e4efa" + integrity sha512-a1eOIcu8+7lUInge4Rpf/n4Krkf3Dd9lqhljRzII1/Zno/kRtUWnznPO3jOKBmTEktkt3fkxisUcivoj0ebzoA== + dependencies: + ini "^1.3.4" + proto-list "~1.2.1" + console-control-strings@^1.0.0, console-control-strings@~1.1.0: version "1.1.0" resolved "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= +console-stream@^0.1.1: + version "0.1.1" + resolved "https://registry.npmjs.org/console-stream/-/console-stream-0.1.1.tgz#a095fe07b20465955f2fafd28b5d72bccd949d44" + integrity sha1-oJX+B7IEZZVfL6/Si11yvM2UnUQ= + contains-path@^0.1.0: version "0.1.0" resolved "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a" integrity sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo= +content-disposition@^0.5.2: + version "0.5.3" + resolved "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz#e130caf7e7279087c5616c2007d0485698984fbd" + integrity sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g== + dependencies: + safe-buffer "5.1.2" + convert-source-map@^1.1.0: version "1.6.0" resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.6.0.tgz#51b537a8c43e0f04dec1993bffcdd504e758ac20" @@ -1168,6 +1385,15 @@ cosmiconfig@^5.0.6, cosmiconfig@^5.2.1: js-yaml "^3.13.1" parse-json "^4.0.0" +cross-spawn@^5.0.1: + version "5.1.0" + resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" + integrity sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk= + dependencies: + lru-cache "^4.0.1" + shebang-command "^1.2.0" + which "^1.2.9" + cross-spawn@^6.0.0, cross-spawn@^6.0.5: version "6.0.5" resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" @@ -1200,6 +1426,13 @@ cssstyle@^1.0.0: dependencies: cssom "0.3.x" +currently-unhandled@^0.4.1: + version "0.4.1" + resolved "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" + integrity sha1-mI3zP+qxke95mmE2nddsF635V+o= + dependencies: + array-find-index "^1.0.1" + dashdash@^1.12.0: version "1.14.1" resolved "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" @@ -1242,7 +1475,7 @@ debug@^4.0.1, debug@^4.1.0, debug@^4.1.1: dependencies: ms "^2.1.1" -decamelize@^1.2.0: +decamelize@^1.1.2, decamelize@^1.2.0: version "1.2.0" resolved "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= @@ -1252,6 +1485,73 @@ decode-uri-component@^0.2.0: resolved "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= +decompress-response@^3.2.0, decompress-response@^3.3.0: + version "3.3.0" + resolved "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz#80a4dd323748384bfa248083622aedec982adff3" + integrity sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M= + dependencies: + mimic-response "^1.0.0" + +decompress-response@^4.2.0: + version "4.2.1" + resolved "https://registry.npmjs.org/decompress-response/-/decompress-response-4.2.1.tgz#414023cc7a302da25ce2ec82d0d5238ccafd8986" + integrity sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw== + dependencies: + mimic-response "^2.0.0" + +decompress-tar@^4.0.0, decompress-tar@^4.1.0, decompress-tar@^4.1.1: + version "4.1.1" + resolved "https://registry.npmjs.org/decompress-tar/-/decompress-tar-4.1.1.tgz#718cbd3fcb16209716e70a26b84e7ba4592e5af1" + integrity sha512-JdJMaCrGpB5fESVyxwpCx4Jdj2AagLmv3y58Qy4GE6HMVjWz1FeVQk1Ct4Kye7PftcdOo/7U7UKzYBJgqnGeUQ== + dependencies: + file-type "^5.2.0" + is-stream "^1.1.0" + tar-stream "^1.5.2" + +decompress-tarbz2@^4.0.0: + version "4.1.1" + resolved "https://registry.npmjs.org/decompress-tarbz2/-/decompress-tarbz2-4.1.1.tgz#3082a5b880ea4043816349f378b56c516be1a39b" + integrity sha512-s88xLzf1r81ICXLAVQVzaN6ZmX4A6U4z2nMbOwobxkLoIIfjVMBg7TeguTUXkKeXni795B6y5rnvDw7rxhAq9A== + dependencies: + decompress-tar "^4.1.0" + file-type "^6.1.0" + is-stream "^1.1.0" + seek-bzip "^1.0.5" + unbzip2-stream "^1.0.9" + +decompress-targz@^4.0.0: + version "4.1.1" + resolved "https://registry.npmjs.org/decompress-targz/-/decompress-targz-4.1.1.tgz#c09bc35c4d11f3de09f2d2da53e9de23e7ce1eee" + integrity sha512-4z81Znfr6chWnRDNfFNqLwPvm4db3WuZkqV+UgXQzSngG3CEKdBkw5jrv3axjjL96glyiiKjsxJG3X6WBZwX3w== + dependencies: + decompress-tar "^4.1.1" + file-type "^5.2.0" + is-stream "^1.1.0" + +decompress-unzip@^4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/decompress-unzip/-/decompress-unzip-4.0.1.tgz#deaaccdfd14aeaf85578f733ae8210f9b4848f69" + integrity sha1-3qrM39FK6vhVePczroIQ+bSEj2k= + dependencies: + file-type "^3.8.0" + get-stream "^2.2.0" + pify "^2.3.0" + yauzl "^2.4.2" + +decompress@^4.0.0, decompress@^4.2.0: + version "4.2.0" + resolved "https://registry.npmjs.org/decompress/-/decompress-4.2.0.tgz#7aedd85427e5a92dacfe55674a7c505e96d01f9d" + integrity sha1-eu3YVCflqS2s/lVnSnxQXpbQH50= + dependencies: + decompress-tar "^4.0.0" + decompress-tarbz2 "^4.0.0" + decompress-targz "^4.0.0" + decompress-unzip "^4.0.1" + graceful-fs "^4.1.10" + make-dir "^1.0.0" + pify "^2.3.0" + strip-dirs "^2.0.0" + dedent@^0.7.0: version "0.7.0" resolved "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" @@ -1320,7 +1620,7 @@ delegates@^1.0.0: resolved "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= -detect-libc@^1.0.2: +detect-libc@^1.0.2, detect-libc@^1.0.3: version "1.0.3" resolved "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= @@ -1369,6 +1669,46 @@ dotenv@^8.2.0: resolved "https://registry.npmjs.org/dotenv/-/dotenv-8.2.0.tgz#97e619259ada750eea3e4ea3e26bceea5424b16a" integrity sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw== +download@^6.2.2: + version "6.2.5" + resolved "https://registry.npmjs.org/download/-/download-6.2.5.tgz#acd6a542e4cd0bb42ca70cfc98c9e43b07039714" + integrity sha512-DpO9K1sXAST8Cpzb7kmEhogJxymyVUd5qz/vCOSyvwtp2Klj2XcDt5YUuasgxka44SxF0q5RriKIwJmQHG2AuA== + dependencies: + caw "^2.0.0" + content-disposition "^0.5.2" + decompress "^4.0.0" + ext-name "^5.0.0" + file-type "5.2.0" + filenamify "^2.0.0" + get-stream "^3.0.0" + got "^7.0.0" + make-dir "^1.0.0" + p-event "^1.0.0" + pify "^3.0.0" + +download@^7.1.0: + version "7.1.0" + resolved "https://registry.npmjs.org/download/-/download-7.1.0.tgz#9059aa9d70b503ee76a132897be6dec8e5587233" + integrity sha512-xqnBTVd/E+GxJVrX5/eUJiLYjCGPwMpdL+jGhGU57BvtcA7wwhtHVbXBeUk51kOpW3S7Jn3BQbN9Q1R1Km2qDQ== + dependencies: + archive-type "^4.0.0" + caw "^2.0.1" + content-disposition "^0.5.2" + decompress "^4.2.0" + ext-name "^5.0.0" + file-type "^8.1.0" + filenamify "^2.0.0" + get-stream "^3.0.0" + got "^8.3.1" + make-dir "^1.2.0" + p-event "^2.1.0" + pify "^3.0.0" + +duplexer3@^0.1.4: + version "0.1.4" + resolved "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" + integrity sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI= + ecc-jsbn@~0.1.1: version "0.1.2" resolved "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" @@ -1392,7 +1732,7 @@ emoji-regex@^8.0.0: resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== -end-of-stream@^1.1.0: +end-of-stream@^1.0.0, end-of-stream@^1.1.0, end-of-stream@^1.4.1: version "1.4.4" resolved "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== @@ -1622,11 +1962,48 @@ esutils@^2.0.2: resolved "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== +exec-buffer@^3.0.0: + version "3.2.0" + resolved "https://registry.npmjs.org/exec-buffer/-/exec-buffer-3.2.0.tgz#b1686dbd904c7cf982e652c1f5a79b1e5573082b" + integrity sha512-wsiD+2Tp6BWHoVv3B+5Dcx6E7u5zky+hUwOHjuH2hKSLR3dvRmX8fk8UD8uqQixHs4Wk6eDmiegVrMPjKj7wpA== + dependencies: + execa "^0.7.0" + p-finally "^1.0.0" + pify "^3.0.0" + rimraf "^2.5.4" + tempfile "^2.0.0" + exec-sh@^0.3.2: version "0.3.4" resolved "https://registry.npmjs.org/exec-sh/-/exec-sh-0.3.4.tgz#3a018ceb526cc6f6df2bb504b2bfe8e3a4934ec5" integrity sha512-sEFIkc61v75sWeOe72qyrqg2Qg0OuLESziUDk/O/z2qgS15y2gWVFrI6f2Qn/qw/0/NCfCEsmNA4zOjkwEZT1A== +execa@^0.10.0: + version "0.10.0" + resolved "https://registry.npmjs.org/execa/-/execa-0.10.0.tgz#ff456a8f53f90f8eccc71a96d11bdfc7f082cb50" + integrity sha512-7XOMnz8Ynx1gGo/3hyV9loYNPWM94jG3+3T3Y8tsfSstFmETmENCMU/A/zj8Lyaj1lkgEepKepvd6240tBRvlw== + dependencies: + cross-spawn "^6.0.0" + get-stream "^3.0.0" + is-stream "^1.1.0" + npm-run-path "^2.0.0" + p-finally "^1.0.0" + signal-exit "^3.0.0" + strip-eof "^1.0.0" + +execa@^0.7.0: + version "0.7.0" + resolved "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz#944becd34cc41ee32a63a9faf27ad5a65fc59777" + integrity sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c= + dependencies: + cross-spawn "^5.0.1" + get-stream "^3.0.0" + is-stream "^1.1.0" + npm-run-path "^2.0.0" + p-finally "^1.0.0" + signal-exit "^3.0.0" + strip-eof "^1.0.0" + execa@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" @@ -1655,6 +2032,13 @@ execa@^2.0.3: signal-exit "^3.0.2" strip-final-newline "^2.0.0" +executable@^4.1.0: + version "4.1.1" + resolved "https://registry.npmjs.org/executable/-/executable-4.1.1.tgz#41532bff361d3e57af4d763b70582db18f5d133c" + integrity sha512-8iA79xD3uAch729dUG8xaaBBFGaEa0wdD2VkYLFHwlqosEj/jT66AzcreRDSgV7ehnNLBW2WR5jIXwGKjVdTLg== + dependencies: + pify "^2.2.0" + exit@^0.1.2: version "0.1.2" resolved "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" @@ -1673,6 +2057,11 @@ expand-brackets@^2.1.4: snapdragon "^0.8.1" to-regex "^3.0.1" +expand-template@^2.0.3: + version "2.0.3" + resolved "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz#6e14b3fcee0f3a6340ecb57d2e8918692052a47c" + integrity sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg== + expect@^24.9.0: version "24.9.0" resolved "https://registry.npmjs.org/expect/-/expect-24.9.0.tgz#b75165b4817074fa4a157794f46fe9f1ba15b6ca" @@ -1685,6 +2074,21 @@ expect@^24.9.0: jest-message-util "^24.9.0" jest-regex-util "^24.9.0" +ext-list@^2.0.0: + version "2.2.2" + resolved "https://registry.npmjs.org/ext-list/-/ext-list-2.2.2.tgz#0b98e64ed82f5acf0f2931babf69212ef52ddd37" + integrity sha512-u+SQgsubraE6zItfVA0tBuCBhfU9ogSRnsvygI7wht9TS510oLkBRXBsqopeUG/GBOIQyKZO9wjTqIu/sf5zFA== + dependencies: + mime-db "^1.28.0" + +ext-name@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/ext-name/-/ext-name-5.0.0.tgz#70781981d183ee15d13993c8822045c506c8f0a6" + integrity sha512-yblEwXAbGv1VQDmow7s38W77hzAgJAO50ztBLMcUyUBfxv1HC+LGwtiEN+Co6LtlqT/5uwVOxsD4TNIilWhwdQ== + dependencies: + ext-list "^2.0.0" + sort-keys-length "^1.0.0" + extend-shallow@^2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" @@ -1790,7 +2194,14 @@ fb-watchman@^2.0.0: dependencies: bser "^2.0.0" -figures@^1.7.0: +fd-slicer@~1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz#25c7c89cb1f9077f8891bbe61d8f390eae256f1e" + integrity sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4= + dependencies: + pend "~1.2.0" + +figures@^1.3.5, figures@^1.7.0: version "1.7.0" resolved "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e" integrity sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4= @@ -1819,6 +2230,50 @@ file-entry-cache@^5.0.1: dependencies: flat-cache "^2.0.1" +file-type@5.2.0, file-type@^5.2.0: + version "5.2.0" + resolved "https://registry.npmjs.org/file-type/-/file-type-5.2.0.tgz#2ddbea7c73ffe36368dfae49dc338c058c2b8ad6" + integrity sha1-LdvqfHP/42No365J3DOMBYwritY= + +file-type@^12.0.0: + version "12.4.0" + resolved "https://registry.npmjs.org/file-type/-/file-type-12.4.0.tgz#a9a399459e1940d9f34b3973039958f1f36a565e" + integrity sha512-WTvyKq8yjtNmUtVAD8LGcTkvtCdJglM6ks2HTqEClm6+65XTqM6MoZYA1Vtra50DLRWLiM38fEs1y56f5VhnUA== + +file-type@^3.8.0: + version "3.9.0" + resolved "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz#257a078384d1db8087bc449d107d52a52672b9e9" + integrity sha1-JXoHg4TR24CHvESdEH1SpSZyuek= + +file-type@^4.2.0: + version "4.4.0" + resolved "https://registry.npmjs.org/file-type/-/file-type-4.4.0.tgz#1b600e5fca1fbdc6e80c0a70c71c8dba5f7906c5" + integrity sha1-G2AOX8ofvcboDApwxxyNul95BsU= + +file-type@^6.1.0: + version "6.2.0" + resolved "https://registry.npmjs.org/file-type/-/file-type-6.2.0.tgz#e50cd75d356ffed4e306dc4f5bcf52a79903a919" + integrity sha512-YPcTBDV+2Tm0VqjybVd32MHdlEGAtuxS3VAYsumFokDSMG+ROT5wawGlnHDoz7bfMcMDt9hxuXvXwoKUx2fkOg== + +file-type@^8.1.0: + version "8.1.0" + resolved "https://registry.npmjs.org/file-type/-/file-type-8.1.0.tgz#244f3b7ef641bbe0cca196c7276e4b332399f68c" + integrity sha512-qyQ0pzAy78gVoJsmYeNgl8uH8yKhr1lVhW7JbzJmnlRi0I4R2eEDEJZVKG8agpDnLpacwNbDhLNG/LMdxHD2YQ== + +filename-reserved-regex@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/filename-reserved-regex/-/filename-reserved-regex-2.0.0.tgz#abf73dfab735d045440abfea2d91f389ebbfa229" + integrity sha1-q/c9+rc10EVECr/qLZHzieu/oik= + +filenamify@^2.0.0: + version "2.1.0" + resolved "https://registry.npmjs.org/filenamify/-/filenamify-2.1.0.tgz#88faf495fb1b47abfd612300002a16228c677ee9" + integrity sha512-ICw7NTT6RsDp2rnYKVd8Fu4cr6ITzGy3+u4vUujPkabyaz+03F24NWEX7fs5fp+kBonlaqPH8fAO2NM+SXt/JA== + dependencies: + filename-reserved-regex "^2.0.0" + strip-outer "^1.0.0" + trim-repeated "^1.0.0" + fill-range@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" @@ -1836,6 +2291,14 @@ fill-range@^7.0.1: dependencies: to-regex-range "^5.0.1" +find-up@^1.0.0: + version "1.1.2" + resolved "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" + integrity sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8= + dependencies: + path-exists "^2.0.0" + pinkie-promise "^2.0.0" + find-up@^2.0.0, find-up@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" @@ -1850,6 +2313,14 @@ find-up@^3.0.0: dependencies: locate-path "^3.0.0" +find-versions@^3.0.0: + version "3.1.0" + resolved "https://registry.npmjs.org/find-versions/-/find-versions-3.1.0.tgz#10161f29cf3eb4350dec10a29bdde75bff0df32d" + integrity sha512-NCTfNiVzeE/xL+roNDffGuRbrWI6atI18lTJ22vKp7rs2OhYzMK3W1dIdO2TUndH/QMcacM4d1uWwgcZcHK69Q== + dependencies: + array-uniq "^2.1.0" + semver-regex "^2.0.0" + flat-cache@^2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz#5d296d6f04bda44a4630a301413bdbc2ec085ec0" @@ -1890,6 +2361,19 @@ fragment-cache@^0.2.1: dependencies: map-cache "^0.2.2" +from2@^2.1.1: + version "2.3.0" + resolved "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" + integrity sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8= + dependencies: + inherits "^2.0.1" + readable-stream "^2.0.0" + +fs-constants@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad" + integrity sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow== + fs-extra@^8.1.0: version "8.1.0" resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" @@ -1906,6 +2390,13 @@ fs-minipass@^1.2.5: dependencies: minipass "^2.6.0" +fs-minipass@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.0.0.tgz#a6415edab02fae4b9e9230bc87ee2e4472003cd1" + integrity sha512-40Qz+LFXmd9tzYVnnBmZvFfvAADfUA14TXPK1s7IfElJTIZ97rA8w4Kin7Wt5JBrC3ShnnFJO/5vPjPEeJIq9A== + dependencies: + minipass "^3.0.0" + fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" @@ -1958,11 +2449,36 @@ get-own-enumerable-property-symbols@^3.0.0: resolved "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.1.tgz#6f7764f88ea11e0b514bd9bd860a132259992ca4" integrity sha512-09/VS4iek66Dh2bctjRkowueRJbY1JDGR1L/zRxO1Qk8Uxs6PnqaNSqalpizPT+CDjre3hnEsuzvhgomz9qYrA== +get-proxy@^2.0.0: + version "2.1.0" + resolved "https://registry.npmjs.org/get-proxy/-/get-proxy-2.1.0.tgz#349f2b4d91d44c4d4d4e9cba2ad90143fac5ef93" + integrity sha512-zmZIaQTWnNQb4R4fJUEp/FC51eZsc6EkErspy3xtIYStaq8EB/hDIWipxsal+E8rz0qD7f2sL/NA9Xee4RInJw== + dependencies: + npm-conf "^1.1.0" + +get-stdin@^4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" + integrity sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4= + get-stdin@^6.0.0: version "6.0.0" resolved "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz#9e09bf712b360ab9225e812048f71fde9c89657b" integrity sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g== +get-stream@3.0.0, get-stream@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" + integrity sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ= + +get-stream@^2.2.0: + version "2.3.1" + resolved "https://registry.npmjs.org/get-stream/-/get-stream-2.3.1.tgz#5f38f93f346009666ee0150a054167f91bdd95de" + integrity sha1-Xzj5PzRgCWZu4BUKBUFn+Rvdld4= + dependencies: + object-assign "^4.0.1" + pinkie-promise "^2.0.0" + get-stream@^4.0.0: version "4.1.0" resolved "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" @@ -1989,6 +2505,11 @@ getpass@^0.1.1: dependencies: assert-plus "^1.0.0" +github-from-package@0.0.0: + version "0.0.0" + resolved "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz#97fb5d96bfde8973313f20e8288ef9a167fa64ce" + integrity sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4= + glob-parent@^5.0.0: version "5.0.0" resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.0.0.tgz#1dc99f0f39b006d3e92c2c284068382f0c20e954" @@ -2020,7 +2541,7 @@ globals@^11.1.0, globals@^11.7.0: resolved "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== -globby@^10.0.1: +globby@^10.0.0, globby@^10.0.1: version "10.0.1" resolved "https://registry.npmjs.org/globby/-/globby-10.0.1.tgz#4782c34cb75dd683351335c5829cc3420e606b22" integrity sha512-sSs4inE1FB2YQiymcmTv6NWENryABjUNPeWhOvmn4SjtKybglsyPZxFB3U1/+L1bYi0rNZDqCLlHyLYDl1Pq5A== @@ -2034,7 +2555,50 @@ globby@^10.0.1: merge2 "^1.2.3" slash "^3.0.0" -graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.2.2: +got@^7.0.0: + version "7.1.0" + resolved "https://registry.npmjs.org/got/-/got-7.1.0.tgz#05450fd84094e6bbea56f451a43a9c289166385a" + integrity sha512-Y5WMo7xKKq1muPsxD+KmrR8DH5auG7fBdDVueZwETwV6VytKyU9OX/ddpq2/1hp1vIPvVb4T81dKQz3BivkNLw== + dependencies: + decompress-response "^3.2.0" + duplexer3 "^0.1.4" + get-stream "^3.0.0" + is-plain-obj "^1.1.0" + is-retry-allowed "^1.0.0" + is-stream "^1.0.0" + isurl "^1.0.0-alpha5" + lowercase-keys "^1.0.0" + p-cancelable "^0.3.0" + p-timeout "^1.1.1" + safe-buffer "^5.0.1" + timed-out "^4.0.0" + url-parse-lax "^1.0.0" + url-to-options "^1.0.1" + +got@^8.3.1: + version "8.3.2" + resolved "https://registry.npmjs.org/got/-/got-8.3.2.tgz#1d23f64390e97f776cac52e5b936e5f514d2e937" + integrity sha512-qjUJ5U/hawxosMryILofZCkm3C84PLJS/0grRIpjAwu+Lkxxj5cxeCU25BG0/3mDSpXKTyZr8oh8wIgLaH0QCw== + dependencies: + "@sindresorhus/is" "^0.7.0" + cacheable-request "^2.1.1" + decompress-response "^3.3.0" + duplexer3 "^0.1.4" + get-stream "^3.0.0" + into-stream "^3.1.0" + is-retry-allowed "^1.1.0" + isurl "^1.0.0-alpha5" + lowercase-keys "^1.0.0" + mimic-response "^1.0.0" + p-cancelable "^0.4.0" + p-timeout "^2.0.1" + pify "^3.0.0" + safe-buffer "^5.1.1" + timed-out "^4.0.1" + url-parse-lax "^3.0.0" + url-to-options "^1.0.1" + +graceful-fs@^4.1.10, graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.2.2: version "4.2.3" resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz#4a12ff1b60376ef09862c2093edd908328be8423" integrity sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ== @@ -2044,6 +2608,11 @@ graceful-fs@^4.1.6, graceful-fs@^4.2.0: resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.2.tgz#6f0952605d0140c1cfdb138ed005775b92d67b02" integrity sha512-IItsdsea19BoLC7ELy13q1iJFNmd7ofZH5+X/pJr90/nRoPEX0DJo1dHDbgtYWOhJhcCgMDTOw84RZ72q6lB+Q== +"graceful-readlink@>= 1.0.0": + version "1.0.1" + resolved "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725" + integrity sha1-TK+tdrxi8C+gObL5Tpo906ORpyU= + growly@^1.3.0: version "1.3.0" resolved "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" @@ -2085,11 +2654,23 @@ has-flag@^3.0.0: resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= +has-symbol-support-x@^1.4.1: + version "1.4.2" + resolved "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.2.tgz#1409f98bc00247da45da67cee0a36f282ff26455" + integrity sha512-3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw== + has-symbols@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44" integrity sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q= +has-to-string-tag-x@^1.2.0: + version "1.4.1" + resolved "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz#a045ab383d7b4b2012a00148ab0aa5f290044d4d" + integrity sha512-vdbKfmw+3LoOYVr+mtxHaX5a96+0f3DljYd8JOqvOLsf5mw2Otda2qCDT9qRqLAhrjyQ0h7ual5nOiASpsGNFw== + dependencies: + has-symbol-support-x "^1.4.1" + has-unicode@^2.0.0: version "2.0.1" resolved "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" @@ -2154,6 +2735,11 @@ html-webpack-inline-source-plugin@^0.0.10: slash "^1.0.0" source-map-url "^0.4.0" +http-cache-semantics@3.8.1: + version "3.8.1" + resolved "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz#39b0e16add9b605bf0a9ef3d9daaf4843b4cacd2" + integrity sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w== + http-signature@~1.2.0: version "1.2.0" resolved "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" @@ -2186,6 +2772,11 @@ iconv-lite@0.4.24, iconv-lite@^0.4.24, iconv-lite@^0.4.4: dependencies: safer-buffer ">= 2.1.2 < 3" +ieee754@^1.1.4: + version "1.1.13" + resolved "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz#ec168558e95aa181fd87d37f55c32bbcb6708b84" + integrity sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg== + ignore-walk@^3.0.1: version "3.0.3" resolved "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.3.tgz#017e2447184bfeade7c238e4aefdd1e8f95b1e37" @@ -2203,6 +2794,48 @@ ignore@^5.0.2, ignore@^5.1.1: resolved "https://registry.npmjs.org/ignore/-/ignore-5.1.4.tgz#84b7b3dbe64552b6ef0eca99f6743dbec6d97adf" integrity sha512-MzbUSahkTW1u7JpKKjY7LCARd1fU5W2rLdxlM4kdkayuCwZImjkpluF9CM1aLewYJguPDqewLam18Y6AU69A8A== +imagemin-optipng@^7.1.0: + version "7.1.0" + resolved "https://registry.npmjs.org/imagemin-optipng/-/imagemin-optipng-7.1.0.tgz#2225c82c35e5c29b7fa98d4f9ecee1161a68e888" + integrity sha512-JNORTZ6j6untH7e5gF4aWdhDCxe3ODsSLKs/f7Grewy3ebZpl1ZsU+VUTPY4rzeHgaFA8GSWOoA8V2M3OixWZQ== + dependencies: + exec-buffer "^3.0.0" + is-png "^2.0.0" + optipng-bin "^6.0.0" + +imagemin-pngquant@^8.0.0: + version "8.0.0" + resolved "https://registry.npmjs.org/imagemin-pngquant/-/imagemin-pngquant-8.0.0.tgz#bf7a41d850c6998f2475c54058ab1db9c516385d" + integrity sha512-PVq0diOxO+Zyq/zlMCz2Pfu6mVLHgiT1GpW702OwVlnej+NhS6ZQegYi3OFEDW8d7GxouyR5e8R+t53SMciOeg== + dependencies: + execa "^1.0.0" + is-png "^2.0.0" + is-stream "^2.0.0" + ow "^0.13.2" + pngquant-bin "^5.0.0" + +imagemin-zopfli@^6.0.0: + version "6.0.0" + resolved "https://registry.npmjs.org/imagemin-zopfli/-/imagemin-zopfli-6.0.0.tgz#2070a966da7288b347da37786b3afee60df62ee1" + integrity sha512-vmhMzV7m5o6QxgHpIDaBbKx/exWdIylwxV0hrxKECnPmt072A2qPtM8HCHu9EbrQctFk3KR8kN+cWFnk6EwzKQ== + dependencies: + exec-buffer "^3.0.0" + is-png "^1.0.0" + zopflipng-bin "^5.0.0" + +imagemin@^7.0.1: + version "7.0.1" + resolved "https://registry.npmjs.org/imagemin/-/imagemin-7.0.1.tgz#f6441ca647197632e23db7d971fffbd530c87dbf" + integrity sha512-33AmZ+xjZhg2JMCe+vDf6a9mzWukE7l+wAtesjE7KyteqqKjzxv7aVQeWnul1Ve26mWvEQqyPwl0OctNBfSR9w== + dependencies: + file-type "^12.0.0" + globby "^10.0.0" + graceful-fs "^4.2.2" + junk "^3.1.0" + make-dir "^3.0.0" + p-pipe "^3.0.0" + replace-ext "^1.0.0" + import-fresh@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz#d81355c15612d386c61f9ddd3922d4304822a546" @@ -2219,6 +2852,11 @@ import-fresh@^3.0.0: parent-module "^1.0.0" resolve-from "^4.0.0" +import-lazy@^3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/import-lazy/-/import-lazy-3.1.0.tgz#891279202c8a2280fdbd6674dbd8da1a1dfc67cc" + integrity sha512-8/gvXvX2JMn0F+CDlSC4l6kOmVaLOO3XLkksI7CI3Ud95KDYJuYur2b9P/PUt/i/pDAMd/DulQsNbbbmRRsDIQ== + import-local@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz#55070be38a5993cf18ef6db7e961f5bee5c5a09d" @@ -2232,6 +2870,13 @@ imurmurhash@^0.1.4: resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= +indent-string@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80" + integrity sha1-ji1INIdCEhtKghi3oTfppSBJ3IA= + dependencies: + repeating "^2.0.0" + indent-string@^3.0.0: version "3.2.0" resolved "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz#4a5fd6d27cc332f37e5419a504dbb837105c9289" @@ -2250,12 +2895,12 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@~2.0.3: +inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.3: version "2.0.4" resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== -ini@~1.3.0: +ini@^1.3.4, ini@~1.3.0: version "1.3.5" resolved "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw== @@ -2279,6 +2924,14 @@ inquirer@^7.0.0: strip-ansi "^5.1.0" through "^2.3.6" +into-stream@^3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/into-stream/-/into-stream-3.1.0.tgz#96fb0a936c12babd6ff1752a17d05616abd094c6" + integrity sha1-lvsKk2wSur1v8XUqF9BWFqvQlMY= + dependencies: + from2 "^2.1.1" + p-is-promise "^1.1.0" + invariant@^2.2.4: version "2.2.4" resolved "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" @@ -2305,6 +2958,11 @@ is-arrayish@^0.2.1: resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= +is-arrayish@^0.3.1: + version "0.3.2" + resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz#4574a2ae56f7ab206896fb431eaeed066fdf8f03" + integrity sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ== + is-binary-path@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" @@ -2395,6 +3053,13 @@ is-extglob@^2.1.1: resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= +is-finite@^1.0.0: + version "1.0.2" + resolved "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa" + integrity sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko= + dependencies: + number-is-nan "^1.0.0" + is-fullwidth-code-point@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" @@ -2424,6 +3089,11 @@ is-glob@^4.0.0, is-glob@^4.0.1: dependencies: is-extglob "^2.1.1" +is-natural-number@^4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/is-natural-number/-/is-natural-number-4.0.1.tgz#ab9d76e1db4ced51e35de0c72ebecf09f734cde8" + integrity sha1-q5124dtM7VHjXeDHLr7PCfc0zeg= + is-number@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" @@ -2441,6 +3111,11 @@ is-obj@^1.0.1: resolved "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" integrity sha1-PkcprB9f3gJc19g6iW2rn09n2w8= +is-object@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/is-object/-/is-object-1.0.1.tgz#8952688c5ec2ffd6b03ecc85e769e02903083470" + integrity sha1-iVJojF7C/9awPsyF52ngKQMINHA= + is-observable@^1.1.0: version "1.1.0" resolved "https://registry.npmjs.org/is-observable/-/is-observable-1.1.0.tgz#b3e986c8f44de950867cab5403f5a3465005975e" @@ -2458,6 +3133,11 @@ is-path-inside@^3.0.1: resolved "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.2.tgz#f5220fc82a3e233757291dddc9c5877f2a1f3017" integrity sha512-/2UGPSgmtqwo1ktx8NDHjuPwZWmHhO+gj0f93EkhLB5RgW9RZevWYYlIkS6zePc6U2WpOdQYIwHe9YC4DWEBVg== +is-plain-obj@^1.0.0, is-plain-obj@^1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" + integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= + is-plain-object@^2.0.3, is-plain-object@^2.0.4: version "2.0.4" resolved "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" @@ -2465,6 +3145,16 @@ is-plain-object@^2.0.3, is-plain-object@^2.0.4: dependencies: isobject "^3.0.1" +is-png@^1.0.0: + version "1.1.0" + resolved "https://registry.npmjs.org/is-png/-/is-png-1.1.0.tgz#d574b12bf275c0350455570b0e5b57ab062077ce" + integrity sha1-1XSxK/J1wDUEVVcLDltXqwYgd84= + +is-png@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/is-png/-/is-png-2.0.0.tgz#ee8cbc9e9b050425cedeeb4a6fb74a649b0a4a8d" + integrity sha512-4KPGizaVGj2LK7xwJIz8o5B2ubu1D/vcQsgOGFEDlpcvgZHto4gBnyd0ig7Ws+67ixmwKoNmu0hYnpo6AaKb5g== + is-promise@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" @@ -2482,7 +3172,12 @@ is-regexp@^1.0.0: resolved "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz#fd2d883545c46bac5a633e7b9a09e87fa2cb5069" integrity sha1-/S2INUXEa6xaYz57mgnof6LLUGk= -is-stream@^1.1.0: +is-retry-allowed@^1.0.0, is-retry-allowed@^1.1.0: + version "1.2.0" + resolved "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz#d778488bd0a4666a3be8a1482b9f2baafedea8b4" + integrity sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg== + +is-stream@^1.0.0, is-stream@^1.1.0: version "1.1.0" resolved "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= @@ -2504,6 +3199,11 @@ is-typedarray@~1.0.0: resolved "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= +is-utf8@^0.2.0: + version "0.2.1" + resolved "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" + integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI= + is-windows@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" @@ -2586,6 +3286,14 @@ istanbul-reports@^2.2.6: dependencies: handlebars "^4.1.2" +isurl@^1.0.0-alpha5: + version "1.0.0" + resolved "https://registry.npmjs.org/isurl/-/isurl-1.0.0.tgz#b27f4f49f3cdaa3ea44a0a5b7f3462e6edc39d67" + integrity sha512-1P/yWsxPlDtn7QeRD+ULKQPaIaN6yF368GZ2vDfv0AL0NwpStafjWCDDdn0k8wgFMWpVAqG7oJhxHnlud42i9w== + dependencies: + has-to-string-tag-x "^1.2.0" + is-object "^1.0.1" + jest-changed-files@^24.9.0: version "24.9.0" resolved "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-24.9.0.tgz#08d8c15eb79a7fa3fc98269bc14b451ee82f8039" @@ -3000,6 +3708,11 @@ jsesc@^2.5.1: resolved "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== +json-buffer@3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898" + integrity sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg= + json-parse-better-errors@^1.0.1: version "1.0.2" resolved "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" @@ -3049,6 +3762,18 @@ jsprim@^1.2.2: json-schema "0.2.3" verror "1.10.0" +junk@^3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/junk/-/junk-3.1.0.tgz#31499098d902b7e98c5d9b9c80f43457a88abfa1" + integrity sha512-pBxcB3LFc8QVgdggvZWyeys+hnrNWg4OcZIU/1X59k5jQdLBlCsYGRQaz234SqoRLTCgMH00fY0xRJH+F9METQ== + +keyv@3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/keyv/-/keyv-3.0.0.tgz#44923ba39e68b12a7cec7df6c3268c031f2ef373" + integrity sha512-eguHnq22OE3uVoSYG0LVWNP+4ppamWr9+zWBe1bsNcovIMy6huUJFPgy4mGwCd/rnl3vOLGW1MTlu4c57CT1xA== + dependencies: + json-buffer "3.0.0" + kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: version "3.2.2" resolved "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" @@ -3160,6 +3885,17 @@ listr@^0.14.3: p-map "^2.0.0" rxjs "^6.3.3" +load-json-file@^1.0.0: + version "1.1.0" + resolved "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" + integrity sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA= + dependencies: + graceful-fs "^4.1.2" + parse-json "^2.2.0" + pify "^2.0.0" + pinkie-promise "^2.0.0" + strip-bom "^2.0.0" + load-json-file@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8" @@ -3254,6 +3990,19 @@ log-update@^2.3.0: cli-cursor "^2.0.0" wrap-ansi "^3.0.1" +logalot@^2.0.0, logalot@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/logalot/-/logalot-2.1.0.tgz#5f8e8c90d304edf12530951a5554abb8c5e3f552" + integrity sha1-X46MkNME7fElMJUaVVSruMXj9VI= + dependencies: + figures "^1.3.5" + squeak "^1.0.0" + +longest@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz#30a0b2da38f73770e8294a0d22e6625ed77d0097" + integrity sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc= + loose-envify@^1.0.0: version "1.4.0" resolved "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" @@ -3261,6 +4010,49 @@ loose-envify@^1.0.0: dependencies: js-tokens "^3.0.0 || ^4.0.0" +loud-rejection@^1.0.0: + version "1.6.0" + resolved "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f" + integrity sha1-W0b4AUft7leIcPCG0Eghz5mOVR8= + dependencies: + currently-unhandled "^0.4.1" + signal-exit "^3.0.0" + +lowercase-keys@1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.0.tgz#4e3366b39e7f5457e35f1324bdf6f88d0bfc7306" + integrity sha1-TjNms55/VFfjXxMkvfb4jQv8cwY= + +lowercase-keys@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz#6f9e30b47084d971a7c820ff15a6c5167b74c26f" + integrity sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA== + +lpad-align@^1.0.1: + version "1.1.2" + resolved "https://registry.npmjs.org/lpad-align/-/lpad-align-1.1.2.tgz#21f600ac1c3095c3c6e497ee67271ee08481fe9e" + integrity sha1-IfYArBwwlcPG5JfuZyce4ISB/p4= + dependencies: + get-stdin "^4.0.1" + indent-string "^2.1.0" + longest "^1.0.0" + meow "^3.3.0" + +lru-cache@^4.0.1: + version "4.1.5" + resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd" + integrity sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g== + dependencies: + pseudomap "^1.0.2" + yallist "^2.1.2" + +make-dir@^1.0.0, make-dir@^1.2.0: + version "1.3.0" + resolved "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz#79c1033b80515bd6d24ec9933e860ca75ee27f0c" + integrity sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ== + dependencies: + pify "^3.0.0" + make-dir@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" @@ -3269,6 +4061,13 @@ make-dir@^2.1.0: pify "^4.0.1" semver "^5.6.0" +make-dir@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/make-dir/-/make-dir-3.0.0.tgz#1b5f39f6b9270ed33f9f054c5c0f84304989f801" + integrity sha512-grNJDhb8b1Jm1qeqW5R/O63wUo4UXo2v2HMic6YT9i/HBlF93S8jkMgH7yugvY9ABDShH4VZMn8I+U8+fCNegw== + dependencies: + semver "^6.0.0" + makeerror@1.0.x: version "1.0.11" resolved "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c" @@ -3281,6 +4080,11 @@ map-cache@^0.2.2: resolved "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8= +map-obj@^1.0.0, map-obj@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" + integrity sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0= + map-visit@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" @@ -3288,6 +4092,22 @@ map-visit@^1.0.0: dependencies: object-visit "^1.0.0" +meow@^3.3.0: + version "3.7.0" + resolved "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" + integrity sha1-cstmi0JSKCkKu/qFaJJYcwioAfs= + dependencies: + camelcase-keys "^2.0.0" + decamelize "^1.1.2" + loud-rejection "^1.0.0" + map-obj "^1.0.1" + minimist "^1.1.3" + normalize-package-data "^2.3.4" + object-assign "^4.0.1" + read-pkg-up "^1.0.1" + redent "^1.0.0" + trim-newlines "^1.0.0" + merge-stream@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" @@ -3330,7 +4150,7 @@ micromatch@^4.0.2: braces "^3.0.1" picomatch "^2.0.5" -mime-db@1.42.0: +mime-db@1.42.0, mime-db@^1.28.0: version "1.42.0" resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.42.0.tgz#3e252907b4c7adb906597b4b65636272cf9e7bac" integrity sha512-UbfJCR4UAVRNgMpfImz05smAXK7+c+ZntjaA26ANtkXLlOe947Aag5zdIcKQULAiF9Cq4WxBi9jUs5zkA84bYQ== @@ -3352,6 +4172,16 @@ mimic-fn@^2.1.0: resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== +mimic-response@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b" + integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ== + +mimic-response@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/mimic-response/-/mimic-response-2.0.0.tgz#996a51c60adf12cb8a87d7fb8ef24c2f3d5ebb46" + integrity sha512-8ilDoEapqA4uQ3TwS0jakGONKXVJqpy+RpM+3b7pLdOjghCrEiGp9SRkFbUHAmZW9vdnrENWHjaweIoTIJExSQ== + minimatch@^3.0.4: version "3.0.4" resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" @@ -3364,7 +4194,7 @@ minimist@0.0.8: resolved "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= -minimist@^1.1.1, minimist@^1.2.0: +minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0: version "1.2.0" resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ= @@ -3382,6 +4212,13 @@ minipass@^2.6.0, minipass@^2.8.6, minipass@^2.9.0: safe-buffer "^5.1.2" yallist "^3.0.0" +minipass@^3.0.0: + version "3.1.1" + resolved "https://registry.npmjs.org/minipass/-/minipass-3.1.1.tgz#7607ce778472a185ad6d89082aa2070f79cedcd5" + integrity sha512-UFqVihv6PQgwj8/yTGvl9kPz7xIAY+R5z6XYjRInD3Gk3qx6QGSD6zEcpeG4Dy/lQnv1J6zv8ejV90hyYIKf3w== + dependencies: + yallist "^4.0.0" + minizlib@^1.2.1: version "1.3.3" resolved "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d" @@ -3389,6 +4226,14 @@ minizlib@^1.2.1: dependencies: minipass "^2.9.0" +minizlib@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/minizlib/-/minizlib-2.1.0.tgz#fd52c645301ef09a63a2c209697c294c6ce02cf3" + integrity sha512-EzTZN/fjSvifSX0SlqUERCN39o6T40AMarPbv0MrarSFtIITCBh7bi+dU8nxGFHuqs9jdIAeoYoKuQAAASsPPA== + dependencies: + minipass "^3.0.0" + yallist "^4.0.0" + mixin-deep@^1.2.0: version "1.3.2" resolved "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" @@ -3419,7 +4264,7 @@ mute-stream@0.0.8: resolved "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== -nan@^2.12.1: +nan@^2.12.1, nan@^2.14.0: version "2.14.0" resolved "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz#7818f722027b2459a86f0295d434d1fc2336c52c" integrity sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg== @@ -3441,6 +4286,11 @@ nanomatch@^1.2.9: snapdragon "^0.8.1" to-regex "^3.0.1" +napi-build-utils@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.1.tgz#1381a0f92c39d66bf19852e7873432fc2123e508" + integrity sha512-boQj1WFgQH3v4clhu3mTNfP+vOBxorDlE8EKiMjUlLG3C4qAESnn9AxIOkFgTR2c9LtzNjPrjS60cT27ZKBhaA== + natural-compare@^1.4.0: version "1.4.0" resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" @@ -3465,6 +4315,13 @@ nice-try@^1.0.4: resolved "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== +node-abi@^2.7.0: + version "2.12.0" + resolved "https://registry.npmjs.org/node-abi/-/node-abi-2.12.0.tgz#40e9cfabdda1837863fa825e7dfa0b15686adf6f" + integrity sha512-VhPBXCIcvmo/5K8HPmnWJyyhvgKxnHTUMXR/XwGHV68+wrgkzST4UmQrY/XszSWA5dtnXpNp528zkcyJ/pzVcw== + dependencies: + semver "^5.4.1" + node-int64@^0.4.0: version "0.4.0" resolved "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" @@ -3502,6 +4359,11 @@ node-pre-gyp@^0.12.0: semver "^5.3.0" tar "^4" +noop-logger@^0.1.1: + version "0.1.1" + resolved "https://registry.npmjs.org/noop-logger/-/noop-logger-0.1.1.tgz#94a2b1633c4f1317553007d8966fd0e841b6a4c2" + integrity sha1-lKKxYzxPExdVMAfYlm/Q6EG2pMI= + nopt@^4.0.1: version "4.0.1" resolved "https://registry.npmjs.org/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" @@ -3510,7 +4372,7 @@ nopt@^4.0.1: abbrev "1" osenv "^0.1.4" -normalize-package-data@^2.3.2: +normalize-package-data@^2.3.2, normalize-package-data@^2.3.4: version "2.5.0" resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== @@ -3532,11 +4394,28 @@ normalize-path@^3.0.0: resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== +normalize-url@2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/normalize-url/-/normalize-url-2.0.1.tgz#835a9da1551fa26f70e92329069a23aa6574d7e6" + integrity sha512-D6MUW4K/VzoJ4rJ01JFKxDrtY1v9wrgzCX5f2qj/lzH1m/lW6MhUZFKerVsnyjOhOsYzI9Kqqak+10l4LvLpMw== + dependencies: + prepend-http "^2.0.0" + query-string "^5.0.1" + sort-keys "^2.0.0" + npm-bundled@^1.0.1: version "1.0.6" resolved "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.0.6.tgz#e7ba9aadcef962bb61248f91721cd932b3fe6bdd" integrity sha512-8/JCaftHwbd//k6y2rEWp6k1wxVfpFzB6t1p825+cUb7Ym2XQfhwIC5KwhrvzZRJu+LtDE585zVaS32+CGtf0g== +npm-conf@^1.1.0: + version "1.1.3" + resolved "https://registry.npmjs.org/npm-conf/-/npm-conf-1.1.3.tgz#256cc47bd0e218c259c4e9550bf413bc2192aff9" + integrity sha512-Yic4bZHJOt9RCFbRP3GgpqhScOY4HH3V2P8yBj6CeYq118Qr+BLXqT2JvpJ00mryLESpgOxf5XlFv4ZjXxLScw== + dependencies: + config-chain "^1.1.11" + pify "^3.0.0" + npm-packlist@^1.1.6: version "1.4.6" resolved "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.4.6.tgz#53ba3ed11f8523079f1457376dd379ee4ea42ff4" @@ -3559,7 +4438,7 @@ npm-run-path@^3.0.0: dependencies: path-key "^3.0.0" -npmlog@^4.0.2: +npmlog@^4.0.1, npmlog@^4.0.2, npmlog@^4.1.2: version "4.1.2" resolved "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== @@ -3584,7 +4463,7 @@ oauth-sign@~0.9.0: resolved "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== -object-assign@^4.1.0: +object-assign@^4.0.1, object-assign@^4.1.0: version "4.1.1" resolved "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= @@ -3681,6 +4560,22 @@ optionator@^0.8.1, optionator@^0.8.2: type-check "~0.3.2" word-wrap "~1.2.3" +optipng-bin@^6.0.0: + version "6.0.0" + resolved "https://registry.npmjs.org/optipng-bin/-/optipng-bin-6.0.0.tgz#376120fa79d5e71eee2f524176efdd3a5eabd316" + integrity sha512-95bB4y8IaTsa/8x6QH4bLUuyvyOoGBCLDA7wOgDL8UFqJpSUh1Hob8JRJhit+wC1ZLN3tQ7mFt7KuBj0x8F2Wg== + dependencies: + bin-build "^3.0.0" + bin-wrapper "^4.0.0" + logalot "^2.0.0" + +os-filter-obj@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/os-filter-obj/-/os-filter-obj-2.0.0.tgz#1c0b62d5f3a2442749a2d139e6dddee6e81d8d16" + integrity sha512-uksVLsqG3pVdzzPvmAHpBK0wKxYItuzZr7SziusRPoz67tGV8rL1szZ6IdeUrbqLjGDwApBtN29eEE3IqGHOjg== + dependencies: + arch "^2.1.0" + os-homedir@^1.0.0: version "1.0.2" resolved "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" @@ -3699,6 +4594,23 @@ osenv@^0.1.4: os-homedir "^1.0.0" os-tmpdir "^1.0.0" +ow@^0.13.2: + version "0.13.2" + resolved "https://registry.npmjs.org/ow/-/ow-0.13.2.tgz#375e76d3d3f928a8dfcf0cd0b9c921cb62e469a0" + integrity sha512-9wvr+q+ZTDRvXDjL6eDOdFe5WUl/wa5sntf9kAolxqSpkBqaIObwLgFCGXSJASFw+YciXnOVtDWpxXa9cqV94A== + dependencies: + type-fest "^0.5.1" + +p-cancelable@^0.3.0: + version "0.3.0" + resolved "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.3.0.tgz#b9e123800bcebb7ac13a479be195b507b98d30fa" + integrity sha512-RVbZPLso8+jFeq1MfNvgXtCRED2raz/dKpacfTNxsx6pLEpEomM7gah6VeHSYV3+vo0OAi4MkArtQcWWXuQoyw== + +p-cancelable@^0.4.0: + version "0.4.1" + resolved "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.4.1.tgz#35f363d67d52081c8d9585e37bcceb7e0bbcb2a0" + integrity sha512-HNa1A8LvB1kie7cERyy21VNeHb2CWJJYqyyC2o3klWFfMGlFmWv2Z7sFgZH8ZiaYL95ydToKTFVXgMV/Os0bBQ== + p-each-series@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/p-each-series/-/p-each-series-1.0.0.tgz#930f3d12dd1f50e7434457a22cd6f04ac6ad7f71" @@ -3706,6 +4618,20 @@ p-each-series@^1.0.0: dependencies: p-reduce "^1.0.0" +p-event@^1.0.0: + version "1.3.0" + resolved "https://registry.npmjs.org/p-event/-/p-event-1.3.0.tgz#8e6b4f4f65c72bc5b6fe28b75eda874f96a4a085" + integrity sha1-jmtPT2XHK8W2/ii3XtqHT5akoIU= + dependencies: + p-timeout "^1.1.1" + +p-event@^2.1.0: + version "2.3.1" + resolved "https://registry.npmjs.org/p-event/-/p-event-2.3.1.tgz#596279ef169ab2c3e0cae88c1cfbb08079993ef6" + integrity sha512-NQCqOFhbpVTMX4qMe8PF8lbGtzZ+LCiN7pcNrb/413Na7+TRoe1xkKUzuWa/YEJdGQ0FvKtj35EEbDoVPO2kbA== + dependencies: + p-timeout "^2.0.1" + p-finally@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" @@ -3716,6 +4642,11 @@ p-finally@^2.0.0: resolved "https://registry.npmjs.org/p-finally/-/p-finally-2.0.1.tgz#bd6fcaa9c559a096b680806f4d657b3f0f240561" integrity sha512-vpm09aKwq6H9phqRQzecoDpD8TmVyGw70qmWlyq5onxY7tqyTTFVvxMykxQSQKILBSFlbXpypIw2T1Ml7+DDtw== +p-is-promise@^1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/p-is-promise/-/p-is-promise-1.1.0.tgz#9c9456989e9f6588017b0434d56097675c3da05e" + integrity sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4= + p-limit@^1.1.0: version "1.3.0" resolved "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" @@ -3744,6 +4675,13 @@ p-locate@^3.0.0: dependencies: p-limit "^2.0.0" +p-map-series@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/p-map-series/-/p-map-series-1.0.0.tgz#bf98fe575705658a9e1351befb85ae4c1f07bdca" + integrity sha1-v5j+V1cFZYqeE1G++4WuTB8Hvco= + dependencies: + p-reduce "^1.0.0" + p-map@^2.0.0: version "2.1.0" resolved "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz#310928feef9c9ecc65b68b17693018a665cea175" @@ -3756,17 +4694,36 @@ p-map@^3.0.0: dependencies: aggregate-error "^3.0.0" +p-pipe@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/p-pipe/-/p-pipe-3.0.0.tgz#ab1fb87c0b8dd79b3bb03a8a23680fc9d054e132" + integrity sha512-gwwdRFmaxsT3IU+Tl3vYKVRdjfhg8Bbdjw7B+E0y6F7Yz6l+eaQLn0BRmGMXIhcPDONPtOkMoNwx1etZh4zPJA== + p-reduce@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/p-reduce/-/p-reduce-1.0.0.tgz#18c2b0dd936a4690a529f8231f58a0fdb6a47dfa" integrity sha1-GMKw3ZNqRpClKfgjH1ig/bakffo= +p-timeout@^1.1.1: + version "1.2.1" + resolved "https://registry.npmjs.org/p-timeout/-/p-timeout-1.2.1.tgz#5eb3b353b7fce99f101a1038880bb054ebbea386" + integrity sha1-XrOzU7f86Z8QGhA4iAuwVOu+o4Y= + dependencies: + p-finally "^1.0.0" + +p-timeout@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/p-timeout/-/p-timeout-2.0.1.tgz#d8dd1979595d2dc0139e1fe46b8b646cb3cdf038" + integrity sha512-88em58dDVB/KzPEx1X0N3LwFfYZPyDc4B6eF38M1rk9VTZMbxXXgjugz8mmwpS9Ox4BDZ+t6t3QP5+/gazweIA== + dependencies: + p-finally "^1.0.0" + p-try@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M= -p-try@^2.0.0: +p-try@^2.0.0, p-try@^2.1.0: version "2.2.0" resolved "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== @@ -3803,6 +4760,13 @@ pascalcase@^0.1.1: resolved "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ= +path-exists@^2.0.0: + version "2.1.0" + resolved "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" + integrity sha1-D+tsZPD8UY2adU3V77YscCJ2H0s= + dependencies: + pinkie-promise "^2.0.0" + path-exists@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" @@ -3828,6 +4792,15 @@ path-parse@^1.0.6: resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw== +path-type@^1.0.0: + version "1.1.0" + resolved "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" + integrity sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE= + dependencies: + graceful-fs "^4.1.2" + pify "^2.0.0" + pinkie-promise "^2.0.0" + path-type@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73" @@ -3847,6 +4820,11 @@ path-type@^4.0.0: resolved "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== +pend@~1.2.0: + version "1.2.0" + resolved "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50" + integrity sha1-elfrVQpng/kRUzH89GY9XI4AelA= + performance-now@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" @@ -3857,7 +4835,7 @@ picomatch@^2.0.4, picomatch@^2.0.5: resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.0.7.tgz#514169d8c7cd0bdbeecc8a2609e34a7163de69f6" integrity sha512-oLHIdio3tZ0qH76NybpeneBhYVj0QFTfXEFTc/B3zKQspYfYYkWYgFsmzo+4kvId/bQRcNkVeguI3y+CD22BtA== -pify@^2.0.0: +pify@^2.0.0, pify@^2.2.0, pify@^2.3.0: version "2.3.0" resolved "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw= @@ -3872,6 +4850,18 @@ pify@^4.0.1: resolved "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== +pinkie-promise@^2.0.0: + version "2.0.1" + resolved "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" + integrity sha1-ITXW36ejWMBprJsXh3YogihFD/o= + dependencies: + pinkie "^2.0.0" + +pinkie@^2.0.0: + version "2.0.4" + resolved "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" + integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA= + pirates@^4.0.1: version "4.0.1" resolved "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz#643a92caf894566f91b2b986d2c66950a8e2fb87" @@ -3905,16 +4895,62 @@ pn@^1.1.0: resolved "https://registry.npmjs.org/pn/-/pn-1.1.0.tgz#e2f4cef0e219f463c179ab37463e4e1ecdccbafb" integrity sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA== +png2icons@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/png2icons/-/png2icons-2.0.1.tgz#09d8f10b71302e98ca178d3324bc4deff9b90124" + integrity sha512-GDEQJr8OG4e6JMp7mABtXFSEpgJa1CCpbQiAR+EjhkHJHnUL9zPPtbOrjsMD8gUbikgv3j7x404b0YJsV3aVFA== + +pngquant-bin@^5.0.0: + version "5.0.2" + resolved "https://registry.npmjs.org/pngquant-bin/-/pngquant-bin-5.0.2.tgz#6f34f3e89c9722a72bbc509062b40f1b17cda460" + integrity sha512-OLdT+4JZx5BqE1CFJkrvomYV0aSsv6x2Bba+aWaVc0PMfWlE+ZByNKYAdKeIqsM4uvW1HOSEHnf8KcOnykPNxA== + dependencies: + bin-build "^3.0.0" + bin-wrapper "^4.0.1" + execa "^0.10.0" + logalot "^2.0.0" + posix-character-classes@^0.1.0: version "0.1.1" resolved "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= +prebuild-install@^5.3.2: + version "5.3.3" + resolved "https://registry.npmjs.org/prebuild-install/-/prebuild-install-5.3.3.tgz#ef4052baac60d465f5ba6bf003c9c1de79b9da8e" + integrity sha512-GV+nsUXuPW2p8Zy7SarF/2W/oiK8bFQgJcncoJ0d7kRpekEA0ftChjfEaF9/Y+QJEc/wFR7RAEa8lYByuUIe2g== + dependencies: + detect-libc "^1.0.3" + expand-template "^2.0.3" + github-from-package "0.0.0" + minimist "^1.2.0" + mkdirp "^0.5.1" + napi-build-utils "^1.0.1" + node-abi "^2.7.0" + noop-logger "^0.1.1" + npmlog "^4.0.1" + pump "^3.0.0" + rc "^1.2.7" + simple-get "^3.0.3" + tar-fs "^2.0.0" + tunnel-agent "^0.6.0" + which-pm-runs "^1.0.0" + prelude-ls@~1.1.2: version "1.1.2" resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= +prepend-http@^1.0.1: + version "1.0.4" + resolved "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" + integrity sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw= + +prepend-http@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897" + integrity sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc= + pretty-format@^24.9.0: version "24.9.0" resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-24.9.0.tgz#12fac31b37019a4eea3c11aa9a959eb7628aa7c9" @@ -3950,6 +4986,16 @@ prompts@^2.0.1: kleur "^3.0.3" sisteransi "^1.0.3" +proto-list@~1.2.1: + version "1.2.4" + resolved "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" + integrity sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk= + +pseudomap@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" + integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= + psl@^1.1.24, psl@^1.1.28: version "1.4.0" resolved "https://registry.npmjs.org/psl/-/psl-1.4.0.tgz#5dd26156cdb69fa1fdb8ab1991667d3f80ced7c2" @@ -3978,6 +5024,15 @@ qs@~6.5.2: resolved "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== +query-string@^5.0.1: + version "5.1.1" + resolved "https://registry.npmjs.org/query-string/-/query-string-5.1.1.tgz#a78c012b71c17e05f2e3fa2319dd330682efb3cb" + integrity sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw== + dependencies: + decode-uri-component "^0.2.0" + object-assign "^4.1.0" + strict-uri-encode "^1.0.0" + rc@^1.2.7: version "1.2.8" resolved "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" @@ -3993,6 +5048,22 @@ react-is@^16.8.4: resolved "https://registry.npmjs.org/react-is/-/react-is-16.12.0.tgz#2cc0fe0fba742d97fd527c42a13bec4eeb06241c" integrity sha512-rPCkf/mWBtKc97aLL9/txD8DZdemK0vkA3JMLShjlJB3Pj3s+lpf1KaBzMfQrAmhMQB0n1cU/SUGgKKBCe837Q== +read-chunk@^3.2.0: + version "3.2.0" + resolved "https://registry.npmjs.org/read-chunk/-/read-chunk-3.2.0.tgz#2984afe78ca9bfbbdb74b19387bf9e86289c16ca" + integrity sha512-CEjy9LCzhmD7nUpJ1oVOE6s/hBkejlcJEgLQHVnQznOSilOPb+kpKktlLfFDK3/WP43+F80xkUTM2VOkYoSYvQ== + dependencies: + pify "^4.0.1" + with-open-file "^0.1.6" + +read-pkg-up@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" + integrity sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI= + dependencies: + find-up "^1.0.0" + read-pkg "^1.0.0" + read-pkg-up@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be" @@ -4009,6 +5080,15 @@ read-pkg-up@^4.0.0: find-up "^3.0.0" read-pkg "^3.0.0" +read-pkg@^1.0.0: + version "1.1.0" + resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" + integrity sha1-9f+qXs0pyzHAR0vKfXVra7KePyg= + dependencies: + load-json-file "^1.0.0" + normalize-package-data "^2.3.2" + path-type "^1.0.0" + read-pkg@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8" @@ -4036,7 +5116,7 @@ read-pkg@^4.0.1: parse-json "^4.0.0" pify "^3.0.0" -readable-stream@^2.0.6: +readable-stream@^2.0.0, readable-stream@^2.0.6, readable-stream@^2.3.0, readable-stream@^2.3.5: version "2.3.6" resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf" integrity sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw== @@ -4049,6 +5129,15 @@ readable-stream@^2.0.6: string_decoder "~1.1.1" util-deprecate "~1.0.1" +readable-stream@^3.0.1, readable-stream@^3.1.1: + version "3.4.0" + resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-3.4.0.tgz#a51c26754658e0a3c21dbf59163bd45ba6f447fc" + integrity sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ== + dependencies: + inherits "^2.0.3" + string_decoder "^1.1.1" + util-deprecate "^1.0.1" + readdirp@^3.1.1: version "3.1.2" resolved "https://registry.npmjs.org/readdirp/-/readdirp-3.1.2.tgz#fa85d2d14d4289920e4671dead96431add2ee78a" @@ -4063,6 +5152,14 @@ realpath-native@^1.1.0: dependencies: util.promisify "^1.0.0" +redent@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde" + integrity sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94= + dependencies: + indent-string "^2.1.0" + strip-indent "^1.0.1" + regex-not@^1.0.0, regex-not@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" @@ -4091,6 +5188,18 @@ repeat-string@^1.6.1: resolved "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= +repeating@^2.0.0: + version "2.0.1" + resolved "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" + integrity sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo= + dependencies: + is-finite "^1.0.0" + +replace-ext@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.0.tgz#de63128373fcbf7c3ccfa4de5a480c45a67958eb" + integrity sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs= + request-promise-core@1.1.3: version "1.1.3" resolved "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.3.tgz#e9a3c081b51380dfea677336061fea879a829ee9" @@ -4177,6 +5286,13 @@ resolve@^1.10.0, resolve@^1.11.0, resolve@^1.3.2, resolve@^1.5.0, resolve@^1.8.1 dependencies: path-parse "^1.0.6" +responselike@1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz#918720ef3b631c5642be068f15ade5a46f4ba1e7" + integrity sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec= + dependencies: + lowercase-keys "^1.0.0" + restore-cursor@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" @@ -4253,16 +5369,16 @@ rxjs@^6.3.3, rxjs@^6.4.0: dependencies: tslib "^1.9.0" -safe-buffer@^5.0.1, safe-buffer@^5.1.2: - version "5.2.0" - resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.0.tgz#b74daec49b1148f88c64b68d49b1e815c1f2f519" - integrity sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg== - -safe-buffer@~5.1.0, safe-buffer@~5.1.1: +safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.2" resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== +safe-buffer@^5.0.1, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@~5.2.0: + version "5.2.0" + resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.0.tgz#b74daec49b1148f88c64b68d49b1e815c1f2f519" + integrity sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg== + safe-regex@^1.1.0: version "1.1.0" resolved "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" @@ -4295,17 +5411,36 @@ sax@^1.2.4: resolved "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== +seek-bzip@^1.0.5: + version "1.0.5" + resolved "https://registry.npmjs.org/seek-bzip/-/seek-bzip-1.0.5.tgz#cfe917cb3d274bcffac792758af53173eb1fabdc" + integrity sha1-z+kXyz0nS8/6x5J1ivUxc+sfq9w= + dependencies: + commander "~2.8.1" + semver-compare@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz#0dee216a1c941ab37e9efb1788f6afc5ff5537fc" integrity sha1-De4hahyUGrN+nvsXiPavxf9VN/w= +semver-regex@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/semver-regex/-/semver-regex-2.0.0.tgz#a93c2c5844539a770233379107b38c7b4ac9d338" + integrity sha512-mUdIBBvdn0PLOeP3TEkMH7HHeUP3GjsXCwKarjv/kGmUFOYg1VqEemKhoQpWMu6X2I8kHeuVdGibLGkVK+/5Qw== + +semver-truncate@^1.1.2: + version "1.1.2" + resolved "https://registry.npmjs.org/semver-truncate/-/semver-truncate-1.1.2.tgz#57f41de69707a62709a7e0104ba2117109ea47e8" + integrity sha1-V/Qd5pcHpicJp+AQS6IRcQnqR+g= + dependencies: + semver "^5.3.0" + "semver@2 || 3 || 4 || 5", semver@^5.3.0, semver@^5.4.1, semver@^5.5.0, semver@^5.6.0: version "5.7.1" resolved "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== -semver@^6.0.0, semver@^6.1.2, semver@^6.2.0: +semver@^6.0.0, semver@^6.1.2, semver@^6.2.0, semver@^6.3.0: version "6.3.0" resolved "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== @@ -4325,6 +5460,21 @@ set-value@^2.0.0, set-value@^2.0.1: is-plain-object "^2.0.3" split-string "^3.0.1" +sharp@^0.23.2: + version "0.23.2" + resolved "https://registry.npmjs.org/sharp/-/sharp-0.23.2.tgz#5f8b77513aa1f7e4d0dd969a3904ced75486c1d7" + integrity sha512-BSo0tq6Jtzwa6GDKvVMNNPCP/HLczrFLGVcorYv7OtxlKx4UPHy7x9DdfT8F+PK7FCFDemVRwtsjWpvaJI9v6w== + dependencies: + color "^3.1.2" + detect-libc "^1.0.3" + nan "^2.14.0" + npmlog "^4.1.2" + prebuild-install "^5.3.2" + semver "^6.3.0" + simple-get "^3.1.0" + tar "^5.0.5" + tunnel-agent "^0.6.0" + shebang-command@^1.2.0: version "1.2.0" resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" @@ -4359,6 +5509,27 @@ signal-exit@^3.0.0, signal-exit@^3.0.2: resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0= +simple-concat@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.0.tgz#7344cbb8b6e26fb27d66b2fc86f9f6d5997521c6" + integrity sha1-c0TLuLbib7J9ZrL8hvn21Zl1IcY= + +simple-get@^3.0.3, simple-get@^3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/simple-get/-/simple-get-3.1.0.tgz#b45be062435e50d159540b576202ceec40b9c6b3" + integrity sha512-bCR6cP+aTdScaQCnQKbPKtJOKDp/hj9EDLJo3Nw4y1QksqaovlW/bnptB6/c1e+qmNIDHRK+oXFDdEqBT8WzUA== + dependencies: + decompress-response "^4.2.0" + once "^1.3.1" + simple-concat "^1.0.0" + +simple-swizzle@^0.2.2: + version "0.2.2" + resolved "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz#a4da6b635ffcccca33f70d17cb92592de95e557a" + integrity sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo= + dependencies: + is-arrayish "^0.3.1" + sisteransi@^1.0.3: version "1.0.4" resolved "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.4.tgz#386713f1ef688c7c0304dc4c0632898941cad2e3" @@ -4423,6 +5594,27 @@ snapdragon@^0.8.1: source-map-resolve "^0.5.0" use "^3.1.0" +sort-keys-length@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/sort-keys-length/-/sort-keys-length-1.0.1.tgz#9cb6f4f4e9e48155a6aa0671edd336ff1479a188" + integrity sha1-nLb09OnkgVWmqgZx7dM2/xR5oYg= + dependencies: + sort-keys "^1.0.0" + +sort-keys@^1.0.0: + version "1.1.2" + resolved "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz#441b6d4d346798f1b4e49e8920adfba0e543f9ad" + integrity sha1-RBttTTRnmPG05J6JIK37oOVD+a0= + dependencies: + is-plain-obj "^1.0.0" + +sort-keys@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz#658535584861ec97d730d6cf41822e1f56684128" + integrity sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg= + dependencies: + is-plain-obj "^1.0.0" + source-map-resolve@^0.5.0: version "0.5.2" resolved "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz#72e2cc34095543e43b2c62b2c4c10d4a9054f259" @@ -4495,6 +5687,15 @@ sprintf-js@~1.0.2: resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= +squeak@^1.0.0: + version "1.3.0" + resolved "https://registry.npmjs.org/squeak/-/squeak-1.3.0.tgz#33045037b64388b567674b84322a6521073916c3" + integrity sha1-MwRQN7ZDiLVnZ0uEMiplIQc5FsM= + dependencies: + chalk "^1.0.0" + console-stream "^0.1.1" + lpad-align "^1.0.1" + sshpk@^1.7.0: version "1.16.1" resolved "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz#fb661c0bef29b39db40769ee39fa70093d6f6877" @@ -4528,6 +5729,11 @@ stealthy-require@^1.1.1: resolved "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz#35b09875b4ff49f26a777e509b3090a3226bf24b" integrity sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks= +strict-uri-encode@^1.0.0: + version "1.1.0" + resolved "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713" + integrity sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM= + string-argv@^0.3.0: version "0.3.1" resolved "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz#95e2fbec0427ae19184935f816d74aaa4c5c19da" @@ -4592,6 +5798,13 @@ string.prototype.trimright@^2.1.0: define-properties "^1.1.3" function-bind "^1.1.1" +string_decoder@^1.1.1: + version "1.3.0" + resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" + integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== + dependencies: + safe-buffer "~5.2.0" + string_decoder@~1.1.1: version "1.1.1" resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" @@ -4636,11 +5849,25 @@ strip-ansi@^6.0.0: dependencies: ansi-regex "^5.0.0" +strip-bom@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" + integrity sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4= + dependencies: + is-utf8 "^0.2.0" + strip-bom@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= +strip-dirs@^2.0.0: + version "2.1.0" + resolved "https://registry.npmjs.org/strip-dirs/-/strip-dirs-2.1.0.tgz#4987736264fc344cf20f6c34aca9d13d1d4ed6c5" + integrity sha512-JOCxOeKLm2CAS73y/U4ZeZPTkE+gNVCzKt7Eox84Iej1LT/2pTWYpZKJuxwQpvX1LiZb1xokNR7RLfuBAa7T3g== + dependencies: + is-natural-number "^4.0.1" + strip-eof@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" @@ -4651,6 +5878,13 @@ strip-final-newline@^2.0.0: resolved "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== +strip-indent@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" + integrity sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI= + dependencies: + get-stdin "^4.0.1" + strip-json-comments@^3.0.1: version "3.0.1" resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz#85713975a91fb87bf1b305cca77395e40d2a64a7" @@ -4661,6 +5895,13 @@ strip-json-comments@~2.0.1: resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= +strip-outer@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/strip-outer/-/strip-outer-1.0.1.tgz#b2fd2abf6604b9d1e6013057195df836b8a9d631" + integrity sha512-k55yxKHwaXnpYGsOzg4Vl8+tDrWylxDEpknGjhTiZB8dFRU5rTo9CAzeycivxV3s+zlTKwrs6WxMxR95n26kwg== + dependencies: + escape-string-regexp "^1.0.2" + supports-color@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" @@ -4700,6 +5941,40 @@ table@^5.2.3: slice-ansi "^2.1.0" string-width "^3.0.0" +tar-fs@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/tar-fs/-/tar-fs-2.0.0.tgz#677700fc0c8b337a78bee3623fdc235f21d7afad" + integrity sha512-vaY0obB6Om/fso8a8vakQBzwholQ7v5+uy+tF3Ozvxv1KNezmVQAiWtcNmMHFSFPqL3dJA8ha6gdtFbfX9mcxA== + dependencies: + chownr "^1.1.1" + mkdirp "^0.5.1" + pump "^3.0.0" + tar-stream "^2.0.0" + +tar-stream@^1.5.2: + version "1.6.2" + resolved "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.2.tgz#8ea55dab37972253d9a9af90fdcd559ae435c555" + integrity sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A== + dependencies: + bl "^1.0.0" + buffer-alloc "^1.2.0" + end-of-stream "^1.0.0" + fs-constants "^1.0.0" + readable-stream "^2.3.0" + to-buffer "^1.1.1" + xtend "^4.0.0" + +tar-stream@^2.0.0: + version "2.1.0" + resolved "https://registry.npmjs.org/tar-stream/-/tar-stream-2.1.0.tgz#d1aaa3661f05b38b5acc9b7020efdca5179a2cc3" + integrity sha512-+DAn4Nb4+gz6WZigRzKEZl1QuJVOLtAwwF+WUxy1fJ6X63CaGaUAxJRD2KEn1OMfcbCjySTYpNC6WmfQoIEOdw== + dependencies: + bl "^3.0.0" + end-of-stream "^1.4.1" + fs-constants "^1.0.0" + inherits "^2.0.3" + readable-stream "^3.1.1" + tar@^4: version "4.4.13" resolved "https://registry.npmjs.org/tar/-/tar-4.4.13.tgz#43b364bc52888d555298637b10d60790254ab525" @@ -4713,6 +5988,31 @@ tar@^4: safe-buffer "^5.1.2" yallist "^3.0.3" +tar@^5.0.5: + version "5.0.5" + resolved "https://registry.npmjs.org/tar/-/tar-5.0.5.tgz#03fcdb7105bc8ea3ce6c86642b9c942495b04f93" + integrity sha512-MNIgJddrV2TkuwChwcSNds/5E9VijOiw7kAc1y5hTNJoLDSuIyid2QtLYiCYNnICebpuvjhPQZsXwUL0O3l7OQ== + dependencies: + chownr "^1.1.3" + fs-minipass "^2.0.0" + minipass "^3.0.0" + minizlib "^2.1.0" + mkdirp "^0.5.0" + yallist "^4.0.0" + +temp-dir@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz#0a7c0ea26d3a39afa7e0ebea9c1fc0bc4daa011d" + integrity sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0= + +tempfile@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/tempfile/-/tempfile-2.0.0.tgz#6b0446856a9b1114d1856ffcbe509cccb0977265" + integrity sha1-awRGhWqbERTRhW/8vlCczLCXcmU= + dependencies: + temp-dir "^1.0.0" + uuid "^3.0.1" + test-exclude@^5.2.3: version "5.2.3" resolved "https://registry.npmjs.org/test-exclude/-/test-exclude-5.2.3.tgz#c3d3e1e311eb7ee405e092dac10aefd09091eac0" @@ -4733,11 +6033,16 @@ throat@^4.0.0: resolved "https://registry.npmjs.org/throat/-/throat-4.1.0.tgz#89037cbc92c56ab18926e6ba4cbb200e15672a6a" integrity sha1-iQN8vJLFarGJJua6TLsgDhVnKmo= -through@^2.3.6: +through@^2.3.6, through@^2.3.8: version "2.3.8" resolved "https://registry.npmjs.org/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= +timed-out@^4.0.0, timed-out@^4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz#f32eacac5a175bea25d7fab565ab3ed8741ef56f" + integrity sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8= + tmp@^0.0.33: version "0.0.33" resolved "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" @@ -4750,6 +6055,11 @@ tmpl@1.0.x: resolved "https://registry.npmjs.org/tmpl/-/tmpl-1.0.4.tgz#23640dd7b42d00433911140820e5cf440e521dd1" integrity sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE= +to-buffer@^1.1.1: + version "1.1.1" + resolved "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz#493bd48f62d7c43fcded313a03dcadb2e1213a80" + integrity sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg== + to-fast-properties@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" @@ -4810,6 +6120,18 @@ tr46@^1.0.1: dependencies: punycode "^2.1.0" +trim-newlines@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" + integrity sha1-WIeWa7WCpFA6QetST301ARgVphM= + +trim-repeated@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/trim-repeated/-/trim-repeated-1.0.0.tgz#e3646a2ea4e891312bf7eace6cfb05380bc01c21" + integrity sha1-42RqLqTokTEr9+rObPsFOAvAHCE= + dependencies: + escape-string-regexp "^1.0.2" + trim-right@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" @@ -4839,7 +6161,7 @@ type-check@~0.3.2: dependencies: prelude-ls "~1.1.2" -type-fest@^0.5.2: +type-fest@^0.5.1, type-fest@^0.5.2: version "0.5.2" resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.5.2.tgz#d6ef42a0356c6cd45f49485c3b6281fc148e48a2" integrity sha512-DWkS49EQKVX//Tbupb9TFa19c7+MK1XmzkrZUR8TAktmE/DizXoaoJV6TZ/tSIPXipqNiRI6CyAe7x69Jb6RSw== @@ -4852,6 +6174,14 @@ uglify-js@^3.1.4: commander "~2.20.3" source-map "~0.6.1" +unbzip2-stream@^1.0.9: + version "1.3.3" + resolved "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.3.3.tgz#d156d205e670d8d8c393e1c02ebd506422873f6a" + integrity sha512-fUlAF7U9Ah1Q6EieQ4x4zLNejrRvDWUYmxXUpN3uziFYCHapjWFaCAnreY9bGgxzaMCFAPPpYNng57CypwJVhg== + dependencies: + buffer "^5.2.1" + through "^2.3.8" + union-value@^1.0.0: version "1.0.1" resolved "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" @@ -4887,12 +6217,31 @@ urix@^0.1.0: resolved "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= +url-parse-lax@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz#7af8f303645e9bd79a272e7a14ac68bc0609da73" + integrity sha1-evjzA2Rem9eaJy56FKxovAYJ2nM= + dependencies: + prepend-http "^1.0.1" + +url-parse-lax@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz#16b5cafc07dbe3676c1b1999177823d6503acb0c" + integrity sha1-FrXK/Afb42dsGxmZF3gj1lA6yww= + dependencies: + prepend-http "^2.0.0" + +url-to-options@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/url-to-options/-/url-to-options-1.0.1.tgz#1505a03a289a48cbd7a434efbaeec5055f5633a9" + integrity sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k= + use@^3.1.0: version "3.1.1" resolved "https://registry.npmjs.org/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== -util-deprecate@~1.0.1: +util-deprecate@^1.0.1, util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= @@ -4905,7 +6254,7 @@ util.promisify@^1.0.0: define-properties "^1.1.2" object.getownpropertydescriptors "^2.0.3" -uuid@^3.3.2: +uuid@^3.0.1, uuid@^3.3.2: version "3.3.3" resolved "https://registry.npmjs.org/uuid/-/uuid-3.3.3.tgz#4568f0216e78760ee1dbf3a4d2cf53e224112866" integrity sha512-pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ== @@ -4993,6 +6342,11 @@ which-module@^2.0.0: resolved "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= +which-pm-runs@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/which-pm-runs/-/which-pm-runs-1.0.0.tgz#670b3afbc552e0b55df6b7780ca74615f23ad1cb" + integrity sha1-Zws6+8VS4LVd9rd4DKdGFfI60cs= + which@^1.2.9, which@^1.3.0: version "1.3.1" resolved "https://registry.npmjs.org/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" @@ -5014,6 +6368,15 @@ wide-align@^1.1.0: dependencies: string-width "^1.0.2 || 2" +with-open-file@^0.1.6: + version "0.1.7" + resolved "https://registry.npmjs.org/with-open-file/-/with-open-file-0.1.7.tgz#e2de8d974e8a8ae6e58886be4fe8e7465b58a729" + integrity sha512-ecJS2/oHtESJ1t3ZfMI3B7KIDKyfN0O16miWxdn30zdh66Yd3LsRFebXZXq6GU4xfxLf6nVxp9kIqElb5fqczA== + dependencies: + p-finally "^1.0.0" + p-try "^2.1.0" + pify "^4.0.1" + word-wrap@~1.2.3: version "1.2.3" resolved "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" @@ -5074,16 +6437,31 @@ xml-name-validator@^3.0.0: resolved "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== +xtend@^4.0.0: + version "4.0.2" + resolved "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" + integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== + y18n@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w== +yallist@^2.1.2: + version "2.1.2" + resolved "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" + integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= + yallist@^3.0.0, yallist@^3.0.3: version "3.1.1" resolved "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== +yallist@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" + integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== + yargs-parser@^13.1.1: version "13.1.1" resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.1.tgz#d26058532aa06d365fe091f6a1fc06b2f7e5eca0" @@ -5107,3 +6485,20 @@ yargs@^13.3.0: which-module "^2.0.0" y18n "^4.0.0" yargs-parser "^13.1.1" + +yauzl@^2.4.2: + version "2.10.0" + resolved "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz#c7eb17c93e112cb1086fa6d8e51fb0667b79a5f9" + integrity sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk= + dependencies: + buffer-crc32 "~0.2.3" + fd-slicer "~1.1.0" + +zopflipng-bin@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/zopflipng-bin/-/zopflipng-bin-5.0.0.tgz#e5f1ce3486032a5348cc099293f083fb4c061fa5" + integrity sha512-8AWRT/CPkIBEup96LSiVdhLT4n7b4bpzY0BcQ26OjdRnjODa+JWNK55Ii63CiOEyqObPSwjLifuUI5ooFmjiGQ== + dependencies: + bin-build "^3.0.0" + bin-wrapper "^4.0.1" + logalot "^2.1.0"