From 00ba996c0607e96a4c5df19b7a1fc7118855296c Mon Sep 17 00:00:00 2001 From: Tomasz Wegrzanowski Date: Sun, 1 Aug 2021 19:45:00 +0100 Subject: [PATCH] Episode 8 --- episode-08-terminal-app-styling/app.css | 50 + episode-08-terminal-app-styling/index.html | 32 + episode-08-terminal-app-styling/index.js | 13 + .../package-lock.json | 1633 +++++++++++++++++ episode-08-terminal-app-styling/package.json | 15 + .../electron-adventures-08-screenshot.png | Bin 0 -> 48012 bytes 6 files changed, 1743 insertions(+) create mode 100644 episode-08-terminal-app-styling/app.css create mode 100644 episode-08-terminal-app-styling/index.html create mode 100644 episode-08-terminal-app-styling/index.js create mode 100644 episode-08-terminal-app-styling/package-lock.json create mode 100644 episode-08-terminal-app-styling/package.json create mode 100644 screenshots/electron-adventures-08-screenshot.png diff --git a/episode-08-terminal-app-styling/app.css b/episode-08-terminal-app-styling/app.css new file mode 100644 index 0000000..1484fcf --- /dev/null +++ b/episode-08-terminal-app-styling/app.css @@ -0,0 +1,50 @@ +body { + background-color: #444; + color: #fff; +} + +h1 { + font-family: monospace; +} + +#terminal { + font-family: monospace; +} + +.input-line { + display: flex; +} + +.input-line > * { + flex: 1; +} + +.input-line > .prompt { + flex: 0; + padding-right: 0.5rem; +} + +.output { + padding-bottom: 0.5rem; +} + +.input { + color: #ffa; +} + +.output { + color: #afa; + white-space: pre; +} + +form { + display: flex; +} + +input { + flex: 1; + font-family: monospace; + background-color: #444; + color: #fff; + border: none; +} diff --git a/episode-08-terminal-app-styling/index.html b/episode-08-terminal-app-styling/index.html new file mode 100644 index 0000000..2f4c6fd --- /dev/null +++ b/episode-08-terminal-app-styling/index.html @@ -0,0 +1,32 @@ + + + + Episode 8 - Terminal App + + + +

Very amazing terminal app

+
+
+
+ $ + uname -a +
+
Darwin pallas 20.5.0 Darwin Kernel Version 20.5.0: Sat May 8 05:10:33 PDT 2021; root:xnu-7195.121.3~9/RELEASE_X86_64 x86_64
+ +
+ $ + date +
+
Sun 1 Aug 2021 15:53:55 BST
+
+ +
+ $ +
+ +
+
+
+ + diff --git a/episode-08-terminal-app-styling/index.js b/episode-08-terminal-app-styling/index.js new file mode 100644 index 0000000..dc94f1c --- /dev/null +++ b/episode-08-terminal-app-styling/index.js @@ -0,0 +1,13 @@ +let { app, BrowserWindow } = require("electron") + +function createWindow() { + let win = new BrowserWindow({}) + win.maximize() + win.loadFile("index.html") +} + +app.on("ready", createWindow) + +app.on("window-all-closed", () => { + app.quit() +}) diff --git a/episode-08-terminal-app-styling/package-lock.json b/episode-08-terminal-app-styling/package-lock.json new file mode 100644 index 0000000..db20e95 --- /dev/null +++ b/episode-08-terminal-app-styling/package-lock.json @@ -0,0 +1,1633 @@ +{ + "name": "episode-08-terminal-app-styling", + "version": "1.0.0", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "version": "1.0.0", + "license": "ISC", + "devDependencies": { + "electron": "^13.1.7" + } + }, + "node_modules/@electron/get": { + "version": "1.12.4", + "resolved": "https://registry.npmjs.org/@electron/get/-/get-1.12.4.tgz", + "integrity": "sha512-6nr9DbJPUR9Xujw6zD3y+rS95TyItEVM0NVjt1EehY2vUWfIgPiIPVHxCvaTS0xr2B+DRxovYVKbuOWqC35kjg==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "env-paths": "^2.2.0", + "fs-extra": "^8.1.0", + "got": "^9.6.0", + "progress": "^2.0.3", + "semver": "^6.2.0", + "sumchecker": "^3.0.1" + }, + "engines": { + "node": ">=8.6" + }, + "optionalDependencies": { + "global-agent": "^2.0.2", + "global-tunnel-ng": "^2.7.1" + } + }, + "node_modules/@sindresorhus/is": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", + "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@szmarczak/http-timer": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", + "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "dev": true, + "dependencies": { + "defer-to-connect": "^1.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@types/node": { + "version": "14.17.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.17.7.tgz", + "integrity": "sha512-SYTdMaW47se8499q8m0fYKZZRlmq0RaRv6oYmlVm6DUm31l0fhOl1D03X8hGxohCKTI2Bg6w7W0TiYB51aJzag==", + "dev": true + }, + "node_modules/boolean": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/boolean/-/boolean-3.1.2.tgz", + "integrity": "sha512-YN6UmV0FfLlBVvRvNPx3pz5W/mUoYB24J4WSXOKP/OOJpi+Oq6WYqPaNTHzjI0QzwWtnvEd5CGYyQPgp1jFxnw==", + "dev": true, + "optional": true + }, + "node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "node_modules/cacheable-request": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", + "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", + "dev": true, + "dependencies": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^3.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^4.1.0", + "responselike": "^1.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cacheable-request/node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dev": true, + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cacheable-request/node_modules/lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/clone-response": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", + "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", + "dev": true, + "dependencies": { + "mimic-response": "^1.0.0" + } + }, + "node_modules/concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "dev": true, + "engines": [ + "node >= 0.8" + ], + "dependencies": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "node_modules/config-chain": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz", + "integrity": "sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==", + "dev": true, + "optional": true, + "dependencies": { + "ini": "^1.3.4", + "proto-list": "~1.2.1" + } + }, + "node_modules/core-js": { + "version": "3.16.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.16.0.tgz", + "integrity": "sha512-5+5VxRFmSf97nM8Jr2wzOwLqRo6zphH2aX+7KsAUONObyzakDNq2G/bgbhinxB4PoV9L3aXQYhiDKyIKWd2c8g==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true + }, + "node_modules/debug": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "dev": true, + "dependencies": { + "mimic-response": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/defer-to-connect": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", + "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==", + "dev": true + }, + "node_modules/define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dev": true, + "optional": true, + "dependencies": { + "object-keys": "^1.0.12" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", + "dev": true, + "optional": true + }, + "node_modules/duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", + "dev": true + }, + "node_modules/electron": { + "version": "13.1.7", + "resolved": "https://registry.npmjs.org/electron/-/electron-13.1.7.tgz", + "integrity": "sha512-sVfpP/0s6a82FK32LMuEe9L+aWZw15u3uYn9xUJArPjy4OZHteE6yM5871YCNXNiDnoCLQ5eqQWipiVgHsf8nQ==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "@electron/get": "^1.0.1", + "@types/node": "^14.6.2", + "extract-zip": "^1.0.3" + }, + "bin": { + "electron": "cli.js" + }, + "engines": { + "node": ">= 8.6" + } + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "dev": true, + "optional": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dev": true, + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/es6-error": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", + "dev": true, + "optional": true + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "optional": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/extract-zip": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.7.0.tgz", + "integrity": "sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==", + "dev": true, + "dependencies": { + "concat-stream": "^1.6.2", + "debug": "^2.6.9", + "mkdirp": "^0.5.4", + "yauzl": "^2.10.0" + }, + "bin": { + "extract-zip": "cli.js" + } + }, + "node_modules/extract-zip/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/extract-zip/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "node_modules/fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=", + "dev": true, + "dependencies": { + "pend": "~1.2.0" + } + }, + "node_modules/fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" + } + }, + "node_modules/get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dev": true, + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/global-agent": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/global-agent/-/global-agent-2.2.0.tgz", + "integrity": "sha512-+20KpaW6DDLqhG7JDiJpD1JvNvb8ts+TNl7BPOYcURqCrXqnN1Vf+XVOrkKJAFPqfX+oEhsdzOj1hLWkBTdNJg==", + "dev": true, + "optional": true, + "dependencies": { + "boolean": "^3.0.1", + "core-js": "^3.6.5", + "es6-error": "^4.1.1", + "matcher": "^3.0.0", + "roarr": "^2.15.3", + "semver": "^7.3.2", + "serialize-error": "^7.0.1" + }, + "engines": { + "node": ">=10.0" + } + }, + "node_modules/global-agent/node_modules/semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dev": true, + "optional": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/global-tunnel-ng": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/global-tunnel-ng/-/global-tunnel-ng-2.7.1.tgz", + "integrity": "sha512-4s+DyciWBV0eK148wqXxcmVAbFVPqtc3sEtUE/GTQfuU80rySLcMhUmHKSHI7/LDj8q0gDYI1lIhRRB7ieRAqg==", + "dev": true, + "optional": true, + "dependencies": { + "encodeurl": "^1.0.2", + "lodash": "^4.17.10", + "npm-conf": "^1.1.3", + "tunnel": "^0.0.6" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/globalthis": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.2.tgz", + "integrity": "sha512-ZQnSFO1la8P7auIOQECnm0sSuoMeaSq0EEdXMBFF2QJO4uNcwbyhSgG3MruWNbFTqCLmxVwGOl7LZ9kASvHdeQ==", + "dev": true, + "optional": true, + "dependencies": { + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/got": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", + "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", + "dev": true, + "dependencies": { + "@sindresorhus/is": "^0.14.0", + "@szmarczak/http-timer": "^1.1.2", + "cacheable-request": "^6.0.0", + "decompress-response": "^3.3.0", + "duplexer3": "^0.1.4", + "get-stream": "^4.1.0", + "lowercase-keys": "^1.0.1", + "mimic-response": "^1.0.1", + "p-cancelable": "^1.0.0", + "to-readable-stream": "^1.0.0", + "url-parse-lax": "^3.0.0" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", + "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==", + "dev": true + }, + "node_modules/http-cache-semantics": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", + "dev": true + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "dev": true, + "optional": true + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "node_modules/json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=", + "dev": true + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "dev": true, + "optional": true + }, + "node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "dev": true, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/keyv": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", + "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "dev": true, + "dependencies": { + "json-buffer": "3.0.0" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true, + "optional": true + }, + "node_modules/lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "optional": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/matcher": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/matcher/-/matcher-3.0.0.tgz", + "integrity": "sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==", + "dev": true, + "optional": true, + "dependencies": { + "escape-string-regexp": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + }, + "node_modules/mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dev": true, + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/normalize-url": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", + "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm-conf": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/npm-conf/-/npm-conf-1.1.3.tgz", + "integrity": "sha512-Yic4bZHJOt9RCFbRP3GgpqhScOY4HH3V2P8yBj6CeYq118Qr+BLXqT2JvpJ00mryLESpgOxf5XlFv4ZjXxLScw==", + "dev": true, + "optional": true, + "dependencies": { + "config-chain": "^1.1.11", + "pify": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "optional": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/p-cancelable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", + "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=", + "dev": true + }, + "node_modules/pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true, + "optional": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/prepend-http": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true + }, + "node_modules/progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/proto-list": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz", + "integrity": "sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk=", + "dev": true, + "optional": true + }, + "node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", + "dev": true, + "dependencies": { + "lowercase-keys": "^1.0.0" + } + }, + "node_modules/roarr": { + "version": "2.15.4", + "resolved": "https://registry.npmjs.org/roarr/-/roarr-2.15.4.tgz", + "integrity": "sha512-CHhPh+UNHD2GTXNYhPWLnU8ONHdI+5DI+4EYIAOaiD63rHeYlZvyh8P+in5999TTSFgUYuKUAjzRI4mdh/p+2A==", + "dev": true, + "optional": true, + "dependencies": { + "boolean": "^3.0.1", + "detect-node": "^2.0.4", + "globalthis": "^1.0.1", + "json-stringify-safe": "^5.0.1", + "semver-compare": "^1.0.0", + "sprintf-js": "^1.1.2" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/semver-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", + "integrity": "sha1-De4hahyUGrN+nvsXiPavxf9VN/w=", + "dev": true, + "optional": true + }, + "node_modules/serialize-error": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz", + "integrity": "sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==", + "dev": true, + "optional": true, + "dependencies": { + "type-fest": "^0.13.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/sprintf-js": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", + "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==", + "dev": true, + "optional": true + }, + "node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/sumchecker": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/sumchecker/-/sumchecker-3.0.1.tgz", + "integrity": "sha512-MvjXzkz/BOfyVDkG0oFOtBxHX2u3gKbMHIF/dXblZsgD3BWOFLmHovIpZY7BykJdAjcqRCBi1WYBNdEC9yI7vg==", + "dev": true, + "dependencies": { + "debug": "^4.1.0" + }, + "engines": { + "node": ">= 8.0" + } + }, + "node_modules/to-readable-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", + "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/tunnel": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz", + "integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.6.11 <=0.7.0 || >=0.7.3" + } + }, + "node_modules/type-fest": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", + "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", + "dev": true, + "optional": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "dev": true + }, + "node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/url-parse-lax": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", + "dev": true, + "dependencies": { + "prepend-http": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true, + "optional": true + }, + "node_modules/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=", + "dev": true, + "dependencies": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + } + }, + "dependencies": { + "@electron/get": { + "version": "1.12.4", + "resolved": "https://registry.npmjs.org/@electron/get/-/get-1.12.4.tgz", + "integrity": "sha512-6nr9DbJPUR9Xujw6zD3y+rS95TyItEVM0NVjt1EehY2vUWfIgPiIPVHxCvaTS0xr2B+DRxovYVKbuOWqC35kjg==", + "dev": true, + "requires": { + "debug": "^4.1.1", + "env-paths": "^2.2.0", + "fs-extra": "^8.1.0", + "global-agent": "^2.0.2", + "global-tunnel-ng": "^2.7.1", + "got": "^9.6.0", + "progress": "^2.0.3", + "semver": "^6.2.0", + "sumchecker": "^3.0.1" + } + }, + "@sindresorhus/is": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", + "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", + "dev": true + }, + "@szmarczak/http-timer": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", + "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "dev": true, + "requires": { + "defer-to-connect": "^1.0.1" + } + }, + "@types/node": { + "version": "14.17.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.17.7.tgz", + "integrity": "sha512-SYTdMaW47se8499q8m0fYKZZRlmq0RaRv6oYmlVm6DUm31l0fhOl1D03X8hGxohCKTI2Bg6w7W0TiYB51aJzag==", + "dev": true + }, + "boolean": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/boolean/-/boolean-3.1.2.tgz", + "integrity": "sha512-YN6UmV0FfLlBVvRvNPx3pz5W/mUoYB24J4WSXOKP/OOJpi+Oq6WYqPaNTHzjI0QzwWtnvEd5CGYyQPgp1jFxnw==", + "dev": true, + "optional": true + }, + "buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", + "dev": true + }, + "buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "cacheable-request": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", + "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", + "dev": true, + "requires": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^3.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^4.1.0", + "responselike": "^1.0.2" + }, + "dependencies": { + "get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dev": true, + "requires": { + "pump": "^3.0.0" + } + }, + "lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "dev": true + } + } + }, + "clone-response": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", + "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", + "dev": true, + "requires": { + "mimic-response": "^1.0.0" + } + }, + "concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "config-chain": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz", + "integrity": "sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==", + "dev": true, + "optional": true, + "requires": { + "ini": "^1.3.4", + "proto-list": "~1.2.1" + } + }, + "core-js": { + "version": "3.16.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.16.0.tgz", + "integrity": "sha512-5+5VxRFmSf97nM8Jr2wzOwLqRo6zphH2aX+7KsAUONObyzakDNq2G/bgbhinxB4PoV9L3aXQYhiDKyIKWd2c8g==", + "dev": true, + "optional": true + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true + }, + "debug": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "dev": true, + "requires": { + "mimic-response": "^1.0.0" + } + }, + "defer-to-connect": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", + "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==", + "dev": true + }, + "define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dev": true, + "optional": true, + "requires": { + "object-keys": "^1.0.12" + } + }, + "detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", + "dev": true, + "optional": true + }, + "duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", + "dev": true + }, + "electron": { + "version": "13.1.7", + "resolved": "https://registry.npmjs.org/electron/-/electron-13.1.7.tgz", + "integrity": "sha512-sVfpP/0s6a82FK32LMuEe9L+aWZw15u3uYn9xUJArPjy4OZHteE6yM5871YCNXNiDnoCLQ5eqQWipiVgHsf8nQ==", + "dev": true, + "requires": { + "@electron/get": "^1.0.1", + "@types/node": "^14.6.2", + "extract-zip": "^1.0.3" + } + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "dev": true, + "optional": true + }, + "end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dev": true, + "requires": { + "once": "^1.4.0" + } + }, + "env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "dev": true + }, + "es6-error": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", + "dev": true, + "optional": true + }, + "escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "optional": true + }, + "extract-zip": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.7.0.tgz", + "integrity": "sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==", + "dev": true, + "requires": { + "concat-stream": "^1.6.2", + "debug": "^2.6.9", + "mkdirp": "^0.5.4", + "yauzl": "^2.10.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=", + "dev": true, + "requires": { + "pend": "~1.2.0" + } + }, + "fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dev": true, + "requires": { + "pump": "^3.0.0" + } + }, + "global-agent": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/global-agent/-/global-agent-2.2.0.tgz", + "integrity": "sha512-+20KpaW6DDLqhG7JDiJpD1JvNvb8ts+TNl7BPOYcURqCrXqnN1Vf+XVOrkKJAFPqfX+oEhsdzOj1hLWkBTdNJg==", + "dev": true, + "optional": true, + "requires": { + "boolean": "^3.0.1", + "core-js": "^3.6.5", + "es6-error": "^4.1.1", + "matcher": "^3.0.0", + "roarr": "^2.15.3", + "semver": "^7.3.2", + "serialize-error": "^7.0.1" + }, + "dependencies": { + "semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dev": true, + "optional": true, + "requires": { + "lru-cache": "^6.0.0" + } + } + } + }, + "global-tunnel-ng": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/global-tunnel-ng/-/global-tunnel-ng-2.7.1.tgz", + "integrity": "sha512-4s+DyciWBV0eK148wqXxcmVAbFVPqtc3sEtUE/GTQfuU80rySLcMhUmHKSHI7/LDj8q0gDYI1lIhRRB7ieRAqg==", + "dev": true, + "optional": true, + "requires": { + "encodeurl": "^1.0.2", + "lodash": "^4.17.10", + "npm-conf": "^1.1.3", + "tunnel": "^0.0.6" + } + }, + "globalthis": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.2.tgz", + "integrity": "sha512-ZQnSFO1la8P7auIOQECnm0sSuoMeaSq0EEdXMBFF2QJO4uNcwbyhSgG3MruWNbFTqCLmxVwGOl7LZ9kASvHdeQ==", + "dev": true, + "optional": true, + "requires": { + "define-properties": "^1.1.3" + } + }, + "got": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", + "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", + "dev": true, + "requires": { + "@sindresorhus/is": "^0.14.0", + "@szmarczak/http-timer": "^1.1.2", + "cacheable-request": "^6.0.0", + "decompress-response": "^3.3.0", + "duplexer3": "^0.1.4", + "get-stream": "^4.1.0", + "lowercase-keys": "^1.0.1", + "mimic-response": "^1.0.1", + "p-cancelable": "^1.0.0", + "to-readable-stream": "^1.0.0", + "url-parse-lax": "^3.0.0" + } + }, + "graceful-fs": { + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", + "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==", + "dev": true + }, + "http-cache-semantics": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", + "dev": true + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "dev": true, + "optional": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=", + "dev": true + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "dev": true, + "optional": true + }, + "jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6" + } + }, + "keyv": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", + "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "dev": true, + "requires": { + "json-buffer": "3.0.0" + } + }, + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true, + "optional": true + }, + "lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "dev": true + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "optional": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "matcher": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/matcher/-/matcher-3.0.0.tgz", + "integrity": "sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==", + "dev": true, + "optional": true, + "requires": { + "escape-string-regexp": "^4.0.0" + } + }, + "mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "dev": true + }, + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + }, + "mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dev": true, + "requires": { + "minimist": "^1.2.5" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "normalize-url": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", + "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", + "dev": true + }, + "npm-conf": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/npm-conf/-/npm-conf-1.1.3.tgz", + "integrity": "sha512-Yic4bZHJOt9RCFbRP3GgpqhScOY4HH3V2P8yBj6CeYq118Qr+BLXqT2JvpJ00mryLESpgOxf5XlFv4ZjXxLScw==", + "dev": true, + "optional": true, + "requires": { + "config-chain": "^1.1.11", + "pify": "^3.0.0" + } + }, + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "optional": true + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "p-cancelable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", + "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", + "dev": true + }, + "pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=", + "dev": true + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true, + "optional": true + }, + "prepend-http": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", + "dev": true + }, + "process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true + }, + "progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true + }, + "proto-list": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz", + "integrity": "sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk=", + "dev": true, + "optional": true + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", + "dev": true, + "requires": { + "lowercase-keys": "^1.0.0" + } + }, + "roarr": { + "version": "2.15.4", + "resolved": "https://registry.npmjs.org/roarr/-/roarr-2.15.4.tgz", + "integrity": "sha512-CHhPh+UNHD2GTXNYhPWLnU8ONHdI+5DI+4EYIAOaiD63rHeYlZvyh8P+in5999TTSFgUYuKUAjzRI4mdh/p+2A==", + "dev": true, + "optional": true, + "requires": { + "boolean": "^3.0.1", + "detect-node": "^2.0.4", + "globalthis": "^1.0.1", + "json-stringify-safe": "^5.0.1", + "semver-compare": "^1.0.0", + "sprintf-js": "^1.1.2" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + }, + "semver-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", + "integrity": "sha1-De4hahyUGrN+nvsXiPavxf9VN/w=", + "dev": true, + "optional": true + }, + "serialize-error": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz", + "integrity": "sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==", + "dev": true, + "optional": true, + "requires": { + "type-fest": "^0.13.1" + } + }, + "sprintf-js": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", + "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==", + "dev": true, + "optional": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "sumchecker": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/sumchecker/-/sumchecker-3.0.1.tgz", + "integrity": "sha512-MvjXzkz/BOfyVDkG0oFOtBxHX2u3gKbMHIF/dXblZsgD3BWOFLmHovIpZY7BykJdAjcqRCBi1WYBNdEC9yI7vg==", + "dev": true, + "requires": { + "debug": "^4.1.0" + } + }, + "to-readable-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", + "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", + "dev": true + }, + "tunnel": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz", + "integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==", + "dev": true, + "optional": true + }, + "type-fest": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", + "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", + "dev": true, + "optional": true + }, + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "dev": true + }, + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true + }, + "url-parse-lax": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", + "dev": true, + "requires": { + "prepend-http": "^2.0.0" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true, + "optional": true + }, + "yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=", + "dev": true, + "requires": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + } + } +} diff --git a/episode-08-terminal-app-styling/package.json b/episode-08-terminal-app-styling/package.json new file mode 100644 index 0000000..4029907 --- /dev/null +++ b/episode-08-terminal-app-styling/package.json @@ -0,0 +1,15 @@ +{ + "name": "episode-08-terminal-app-styling", + "version": "1.0.0", + "description": "", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "keywords": [], + "author": "", + "license": "ISC", + "devDependencies": { + "electron": "^13.1.7" + } +} diff --git a/screenshots/electron-adventures-08-screenshot.png b/screenshots/electron-adventures-08-screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..64b90748bd97003911076950affbb376ea79768e GIT binary patch literal 48012 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