diff options
Diffstat (limited to '')
| -rw-r--r-- | .gitignore | 3 | ||||
| -rw-r--r-- | config.json.template | 8 | ||||
| -rw-r--r-- | flash/README.txt | 3 | ||||
| -rw-r--r-- | flash/darwin/PepperFlashPlayer.plugin/Contents/Info.plist | 50 | ||||
| -rw-r--r-- | flash/darwin/PepperFlashPlayer.plugin/Contents/MacOS/PepperFlashPlayer | bin | 0 -> 51803104 bytes | |||
| -rw-r--r-- | flash/darwin/PepperFlashPlayer.plugin/Contents/_CodeSignature/CodeResources | 115 | ||||
| -rw-r--r-- | flash/linux/libpepflashplayer.so | bin | 0 -> 18912224 bytes | |||
| -rw-r--r-- | flash/win32/pepflashplayer.dll | bin | 0 -> 31342136 bytes | |||
| -rw-r--r-- | main.js | 86 | ||||
| -rw-r--r-- | package-lock.json | 775 | ||||
| -rw-r--r-- | package.json | 15 | 
11 files changed, 1055 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e827ea6 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +node_modules
 +.DS_Store
 +config.json
\ No newline at end of file diff --git a/config.json.template b/config.json.template new file mode 100644 index 0000000..35127b3 --- /dev/null +++ b/config.json.template @@ -0,0 +1,8 @@ +{ +	"urls": { +		"Link 1": "https://...", +		"Link 2": "https://..." +	}, +	"username": "basic auth", +	"password": "basic auth" +}
\ No newline at end of file diff --git a/flash/README.txt b/flash/README.txt new file mode 100644 index 0000000..93c20a0 --- /dev/null +++ b/flash/README.txt @@ -0,0 +1,3 @@ +Taken from fp_32.0.0.371_archive.zip + +Only extracted 64-bit editions, as Electron really only supports it.
\ No newline at end of file diff --git a/flash/darwin/PepperFlashPlayer.plugin/Contents/Info.plist b/flash/darwin/PepperFlashPlayer.plugin/Contents/Info.plist new file mode 100644 index 0000000..f4555e8 --- /dev/null +++ b/flash/darwin/PepperFlashPlayer.plugin/Contents/Info.plist @@ -0,0 +1,50 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> +<plist version="1.0"> +<dict> +	<key>BuildMachineOSBuild</key> +	<string>16G2136</string> +	<key>CFBundleDevelopmentRegion</key> +	<string>en_US</string> +	<key>CFBundleExecutable</key> +	<string>PepperFlashPlayer</string> +	<key>CFBundleGetInfoString</key> +	<string>Adobe Flash Player 32.0 r0 Copyright (c) 1996-2020 Adobe. All rights reserved</string> +	<key>CFBundleIdentifier</key> +	<string>com.macromedia.PepperFlashPlayer.pepper</string> +	<key>CFBundleInfoDictionaryVersion</key> +	<string>6.0</string> +	<key>CFBundleName</key> +	<string>PepperFlashPlayer</string> +	<key>CFBundlePackageType</key> +	<string>BRPL</string> +	<key>CFBundleShortVersionString</key> +	<string>32.0.0.371</string> +	<key>CFBundleSignature</key> +	<string>????</string> +	<key>CFBundleSupportedPlatforms</key> +	<array> +		<string>MacOSX</string> +	</array> +	<key>CFBundleVersion</key> +	<string>32.0.0.371</string> +	<key>CFPlugInDynamicRegisterFunction</key> +	<string></string> +	<key>CFPlugInDynamicRegistration</key> +	<string>NO</string> +	<key>DTCompiler</key> +	<string>com.apple.compilers.llvm.clang.1_0</string> +	<key>DTPlatformBuild</key> +	<string>8B62</string> +	<key>DTPlatformVersion</key> +	<string>GM</string> +	<key>DTSDKBuild</key> +	<string>16B2649</string> +	<key>DTSDKName</key> +	<string>macosx10.12</string> +	<key>DTXcode</key> +	<string>0810</string> +	<key>DTXcodeBuild</key> +	<string>8B62</string> +</dict> +</plist> diff --git a/flash/darwin/PepperFlashPlayer.plugin/Contents/MacOS/PepperFlashPlayer b/flash/darwin/PepperFlashPlayer.plugin/Contents/MacOS/PepperFlashPlayer Binary files differnew file mode 100644 index 0000000..710773c --- /dev/null +++ b/flash/darwin/PepperFlashPlayer.plugin/Contents/MacOS/PepperFlashPlayer diff --git a/flash/darwin/PepperFlashPlayer.plugin/Contents/_CodeSignature/CodeResources b/flash/darwin/PepperFlashPlayer.plugin/Contents/_CodeSignature/CodeResources new file mode 100644 index 0000000..d5d0fd7 --- /dev/null +++ b/flash/darwin/PepperFlashPlayer.plugin/Contents/_CodeSignature/CodeResources @@ -0,0 +1,115 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> +<plist version="1.0"> +<dict> +	<key>files</key> +	<dict/> +	<key>files2</key> +	<dict/> +	<key>rules</key> +	<dict> +		<key>^Resources/</key> +		<true/> +		<key>^Resources/.*\.lproj/</key> +		<dict> +			<key>optional</key> +			<true/> +			<key>weight</key> +			<real>1000</real> +		</dict> +		<key>^Resources/.*\.lproj/locversion.plist$</key> +		<dict> +			<key>omit</key> +			<true/> +			<key>weight</key> +			<real>1100</real> +		</dict> +		<key>^Resources/Base\.lproj/</key> +		<dict> +			<key>weight</key> +			<real>1010</real> +		</dict> +		<key>^version.plist$</key> +		<true/> +	</dict> +	<key>rules2</key> +	<dict> +		<key>.*\.dSYM($|/)</key> +		<dict> +			<key>weight</key> +			<real>11</real> +		</dict> +		<key>^(.*/)?\.DS_Store$</key> +		<dict> +			<key>omit</key> +			<true/> +			<key>weight</key> +			<real>2000</real> +		</dict> +		<key>^(Frameworks|SharedFrameworks|PlugIns|Plug-ins|XPCServices|Helpers|MacOS|Library/(Automator|Spotlight|LoginItems))/</key> +		<dict> +			<key>nested</key> +			<true/> +			<key>weight</key> +			<real>10</real> +		</dict> +		<key>^.*</key> +		<true/> +		<key>^Info\.plist$</key> +		<dict> +			<key>omit</key> +			<true/> +			<key>weight</key> +			<real>20</real> +		</dict> +		<key>^PkgInfo$</key> +		<dict> +			<key>omit</key> +			<true/> +			<key>weight</key> +			<real>20</real> +		</dict> +		<key>^Resources/</key> +		<dict> +			<key>weight</key> +			<real>20</real> +		</dict> +		<key>^Resources/.*\.lproj/</key> +		<dict> +			<key>optional</key> +			<true/> +			<key>weight</key> +			<real>1000</real> +		</dict> +		<key>^Resources/.*\.lproj/locversion.plist$</key> +		<dict> +			<key>omit</key> +			<true/> +			<key>weight</key> +			<real>1100</real> +		</dict> +		<key>^Resources/Base\.lproj/</key> +		<dict> +			<key>weight</key> +			<real>1010</real> +		</dict> +		<key>^[^/]+$</key> +		<dict> +			<key>nested</key> +			<true/> +			<key>weight</key> +			<real>10</real> +		</dict> +		<key>^embedded\.provisionprofile$</key> +		<dict> +			<key>weight</key> +			<real>20</real> +		</dict> +		<key>^version\.plist$</key> +		<dict> +			<key>weight</key> +			<real>20</real> +		</dict> +	</dict> +</dict> +</plist> diff --git a/flash/linux/libpepflashplayer.so b/flash/linux/libpepflashplayer.so Binary files differnew file mode 100644 index 0000000..e152de6 --- /dev/null +++ b/flash/linux/libpepflashplayer.so diff --git a/flash/win32/pepflashplayer.dll b/flash/win32/pepflashplayer.dll Binary files differnew file mode 100644 index 0000000..02dea99 --- /dev/null +++ b/flash/win32/pepflashplayer.dll @@ -0,0 +1,86 @@ +const { app, BrowserWindow, Menu } = require('electron'); +const path = require('path'); + +const config = require(path.join(__dirname, 'config.json')); + +// Load flash +let flash; +if (process.arch !== 'x64') +	throw new Error('Only x64 architecture is supported.'); +switch (process.platform) { +	case 'win32': +		flash = 'pepflashplayer.dll'; break; +	case 'darwin': +		flash = 'PepperFlashPlayer.plugin'; break; +	case 'linux': +		flash = 'libpepflashplayer.so'; break; +	default: +		throw new Error('Only Windows, macOS and Linux platforms are supported.'); +} +let flashPath = path.join(__dirname, path.basename(__dirname) === 'resources' ? '../flash' : 'flash', process.platform, flash); +if (process.platform === 'linux') +	app.commandLine.appendSwitch('no-sandbox'); +app.commandLine.appendSwitch('ppapi-flash-path', flashPath); +app.commandLine.appendSwitch('ppapi-flash-version', '32.0.0.371'); + +// Menu +// https://www.electronjs.org/docs/latest/api/menu +const menuTemplate = [ +	{ +		label: 'File', +		submenu: Object.keys(config.urls).map(urlName => ({ +			label: 'Open ' + urlName, +			click: function(menuItem, browserWindow, event) { +				browserWindow.loadURL(config.urls[urlName]); +			} +		})).concat([ +			{ type: 'separator' }, +			{ role: 'quit' } +		]) +	}, +	{ +		label: 'View', +		submenu: [ +			{ role: 'reload' }, +			{ role: 'forceReload' }, +			{ type: 'separator' }, +			{ role: 'resetZoom' }, +			{ role: 'zoomIn' }, +			{ role: 'zoomOut' }, +			{ type: 'separator' }, +			{ role: 'togglefullscreen' } +		] +	} +]; +const menu = Menu.buildFromTemplate(menuTemplate); +Menu.setApplicationMenu(menu); + +// Basic auth if required +app.on('login', (event, webContents, details, authInfo, callback) => { +	event.preventDefault(); +	callback(config.username, config.password); +}); + +const createWindow = () => { +	const win = new BrowserWindow({ +		width: 1280, +		height: 720, +		useContentSize: true, +		autoHideMenuBar: true, +		webPreferences: { +			plugins: true +		} +	}); + +	win.loadURL(config.urls[Object.keys(config.urls)[0]]); +}; + +// On startup... +app.whenReady().then(() => { +	createWindow(); +}); + +app.on('window-all-closed', () => { +	// Quit when all windows closed - even on macOS. +	app.quit() +});
\ No newline at end of file diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..317e527 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,775 @@ +{ +  "name": "electron-flash", +  "version": "0.1.0", +  "lockfileVersion": 1, +  "requires": true, +  "dependencies": { +    "@electron/get": { +      "version": "1.14.1", +      "resolved": "https://registry.npmjs.org/@electron/get/-/get-1.14.1.tgz", +      "integrity": "sha512-BrZYyL/6m0ZXz/lDxy/nlVhQz+WF+iPS6qXolEU8atw7h6v1aYkjwJZ63m+bJMBTxDE66X+r2tPS4a/8C82sZw==", +      "dev": true, +      "requires": { +        "debug": "^4.1.1", +        "env-paths": "^2.2.0", +        "fs-extra": "^8.1.0", +        "global-agent": "^3.0.0", +        "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": "12.20.55", +      "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", +      "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==", +      "dev": true +    }, +    "boolean": { +      "version": "3.2.0", +      "resolved": "https://registry.npmjs.org/boolean/-/boolean-3.2.0.tgz", +      "integrity": "sha512-d0II/GO9uf9lfUHH2BQsjxzRJZBdsjgsBiW4BvhWk/3qoKwQFjIDVN19PfX8F2D/r9PCMTtLWjYVCFrpeYUzsw==", +      "dev": true, +      "optional": true +    }, +    "buffer-crc32": { +      "version": "0.2.13", +      "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", +      "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", +      "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.3", +      "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", +      "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", +      "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-util-is": { +      "version": "1.0.3", +      "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", +      "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", +      "dev": true +    }, +    "debug": { +      "version": "4.3.4", +      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", +      "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", +      "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": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", +      "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.4", +      "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", +      "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", +      "dev": true, +      "optional": true, +      "requires": { +        "has-property-descriptors": "^1.0.0", +        "object-keys": "^1.1.1" +      } +    }, +    "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.5", +      "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.5.tgz", +      "integrity": "sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==", +      "dev": true +    }, +    "electron": { +      "version": "11.5.0", +      "resolved": "https://registry.npmjs.org/electron/-/electron-11.5.0.tgz", +      "integrity": "sha512-WjNDd6lGpxyiNjE3LhnFCAk/D9GIj1rU3GSDealVShhkkkPR3Vh4q8ErXGDl1OAO/faomVa10KoFPUN/pLbNxg==", +      "dev": true, +      "requires": { +        "@electron/get": "^1.0.1", +        "@types/node": "^12.0.12", +        "extract-zip": "^1.0.3" +      } +    }, +    "encodeurl": { +      "version": "1.0.2", +      "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", +      "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", +      "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": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", +          "dev": true +        } +      } +    }, +    "fd-slicer": { +      "version": "1.1.0", +      "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", +      "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", +      "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" +      } +    }, +    "function-bind": { +      "version": "1.1.1", +      "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", +      "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", +      "dev": true, +      "optional": true +    }, +    "get-intrinsic": { +      "version": "1.1.2", +      "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.2.tgz", +      "integrity": "sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA==", +      "dev": true, +      "optional": true, +      "requires": { +        "function-bind": "^1.1.1", +        "has": "^1.0.3", +        "has-symbols": "^1.0.3" +      } +    }, +    "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": "3.0.0", +      "resolved": "https://registry.npmjs.org/global-agent/-/global-agent-3.0.0.tgz", +      "integrity": "sha512-PT6XReJ+D07JvGoxQMkT6qji/jVNfX/h364XHZOWeRzy64sSFr+xJ5OX7LI3b4MPQzdL4H8Y8M0xzPpsVMwA8Q==", +      "dev": true, +      "optional": true, +      "requires": { +        "boolean": "^3.0.1", +        "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.7", +          "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", +          "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", +          "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.3", +      "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", +      "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", +      "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.10", +      "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", +      "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", +      "dev": true +    }, +    "has": { +      "version": "1.0.3", +      "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", +      "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", +      "dev": true, +      "optional": true, +      "requires": { +        "function-bind": "^1.1.1" +      } +    }, +    "has-property-descriptors": { +      "version": "1.0.0", +      "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", +      "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", +      "dev": true, +      "optional": true, +      "requires": { +        "get-intrinsic": "^1.1.1" +      } +    }, +    "has-symbols": { +      "version": "1.0.3", +      "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", +      "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", +      "dev": true, +      "optional": 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": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", +      "dev": true +    }, +    "json-buffer": { +      "version": "3.0.0", +      "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", +      "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==", +      "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": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", +      "dev": true, +      "optional": true +    }, +    "jsonfile": { +      "version": "4.0.0", +      "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", +      "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", +      "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.6", +      "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", +      "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", +      "dev": true +    }, +    "mkdirp": { +      "version": "0.5.6", +      "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", +      "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", +      "dev": true, +      "requires": { +        "minimist": "^1.2.6" +      } +    }, +    "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": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", +      "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": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", +      "dev": true +    }, +    "pify": { +      "version": "3.0.0", +      "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", +      "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", +      "dev": true, +      "optional": true +    }, +    "prepend-http": { +      "version": "2.0.0", +      "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", +      "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==", +      "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": "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==", +      "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": "sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==", +      "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": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==", +      "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": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==", +      "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": "sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==", +      "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": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", +      "dev": true +    }, +    "wrappy": { +      "version": "1.0.2", +      "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", +      "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", +      "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": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", +      "dev": true, +      "requires": { +        "buffer-crc32": "~0.2.3", +        "fd-slicer": "~1.1.0" +      } +    } +  } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..14d6717 --- /dev/null +++ b/package.json @@ -0,0 +1,15 @@ +{ +  "name": "electron-flash", +  "version": "0.1.0", +  "description": "Flash Player in Electron", +  "main": "main.js", +  "scripts": { +    "start": "electron .", +    "test": "echo \"Error: no test specified\" && exit 1" +  }, +  "author": "Nicholas Tay <nick@windblume.net>", +  "license": "BSD-2-Clause", +  "devDependencies": { +    "electron": "^11.5.0" +  } +}  | 
