From 99f57cddd952ed8d99a9e97b9a3a2e0b7cbb061f Mon Sep 17 00:00:00 2001 From: robmcelhinney Date: Thu, 16 Apr 2020 12:40:29 +0100 Subject: [PATCH] Build electron, add icons, add to package.json --- .gitignore | 1 + LICENSE | 21 + README.md | 5 + .../AnyConv.com__android-chrome-192x192.icns | Bin 0 -> 30791 bytes assets/android-chrome-192x192.png | Bin 0 -> 6810 bytes assets/apple-touch-icon.png | Bin 0 -> 6274 bytes assets/favicon-16x16.png | Bin 0 -> 431 bytes assets/favicon-32x32.png | Bin 0 -> 899 bytes assets/favicon.ico | Bin 0 -> 15406 bytes assets/icon.png | Bin 0 -> 16215 bytes assets/site.webmanifest | 1 + package-lock.json | 1168 ++++++++++++++++- package.json | 31 +- public/main.js | 5 +- 14 files changed, 1208 insertions(+), 24 deletions(-) create mode 100644 LICENSE create mode 100644 assets/AnyConv.com__android-chrome-192x192.icns create mode 100644 assets/android-chrome-192x192.png create mode 100644 assets/apple-touch-icon.png create mode 100644 assets/favicon-16x16.png create mode 100644 assets/favicon-32x32.png create mode 100644 assets/favicon.ico create mode 100644 assets/icon.png create mode 100644 assets/site.webmanifest diff --git a/.gitignore b/.gitignore index 4d29575..800f3a8 100644 --- a/.gitignore +++ b/.gitignore @@ -10,6 +10,7 @@ # production /build +/dist # misc .DS_Store diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..060722c --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2020 Robert McElhinney + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md index 54ef094..a75972a 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,4 @@ +<<<<<<< HEAD This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app). ## Available Scripts @@ -66,3 +67,7 @@ This section has moved here: https://facebook.github.io/create-react-app/docs/de ### `npm run build` fails to minify This section has moved here: https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify +======= +# diceware +Electron program to create a random diceware word list for password security. +>>>>>>> d96d6479ce5b00f2b1cb19172ffd15eafc4bad9b diff --git a/assets/AnyConv.com__android-chrome-192x192.icns b/assets/AnyConv.com__android-chrome-192x192.icns new file mode 100644 index 0000000000000000000000000000000000000000..92c494b1e99083f7bb6f3316dcc65fa4b5ccadb2 GIT binary patch literal 30791 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 literal 0 HcmV?d00001 diff --git a/assets/android-chrome-192x192.png b/assets/android-chrome-192x192.png new file mode 100644 index 0000000000000000000000000000000000000000..78d96db6fab4d3a150ddb53d691528655be0a2b5 GIT binary patch literal 6810 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 literal 0 HcmV?d00001 diff --git a/assets/favicon-32x32.png b/assets/favicon-32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..e0ef3e50f3e1b5f0251b992605b3e17b97f6a420 GIT binary patch literal 899 zcmV-}1AP36P)Px#1ZP1_K>z@;j|==^1poj8ElET{R9Hvtms?0wQ51&%Gov<&rKW_Ju*?$8EFa1= zu?(c>PDIf|5K+;M=%J`ED(RvX)k9(QQqe;NMMO__43?Q4fJ;c8Eb** z8-bLCKxhQeQbPmi3S-9S1Nro%MoVzB--I(v#t-%>2N5?FC^$-w4*;znm6Nb$fbQdh zBS7{RV9{kDI+cWU1IdNJikrZi`#^|GhIan}vepC3Zvd_s@fmFU2JHL=#H1+)5gIA; z=Il`pg;fBpuJgMz@2mpuZ3Z6h04`+#HMf9?ML=G$^t)?;#%CfZex~>g98U6w15p!{ zgXkf_Ojom5gAp|lmq|LjlqL#bpbr91_i{tF#GvVg*vKTY20d-m?>iY3E)*ki~|}fr6w37u)z!}TGv?M z-PIuhiMc@fYM|=OP$8PJ2#BWrXWBlAHIutfY?Wyhykdhf$w1*r;0fI!9StIY`-{%e z$)eh+I;{o{!yq Z{{d3O=ys#zRp+ zKoPwc6%;X_fhj1cB~L>^K}nE@dJ#ww6}YIl{QtiFEzkbWcfJc3osWB`v*vzxpR@Pc zYp=cb+H0?~)=rX6N#~?nw?t(_@{8@0<&9ibogsTNpr`F2{zzWS{wt!I7Y%~%@q!?Cy3n%8^Y*?HDe z=Gn1}_xk91A?J=FXU;axMtp@vo$W((E^@Z+IV67#ce`5t#k1jjjB%jTZ@Ss|=c>>2 z)?{&o&R2l5_R_}#ji*+cz5R~aA0IX243GPtba%jieS_J8)xkHR{Ro}m?`{hHUR+b% zFQyScPgoS_eeI@n9LD^^)KKq!g7-OBvH>m;Z~uPD?5>5O-_IX3TfHv$HMIBnM@rB8 z=9Q!6s{zN|S&i>)-y4^<`S=%43BKJMEoP@`{rXCF%hv{9WmdD<%kqJCm4B2sW?Y9~ z1K?-H^*n!NRA_rpew(-9uK|ot9rI?~kx!W|d@a-+a*Nsf?+2gB`_(G(&46M5NymtB zS4yTE-c9|?vnK?6A0NGYTKdu=97^wtulMFgvrpF0W5?^=6zEM_lJ@mB%K85b?fB2U zpI2W0-^zz{yyN8$1NhfohwL^<27i-&dtF|+%T)nynPiyP&N>44;Iv=#aCrZ zUzfgN_L%%}ucO5GWuM?D$MxCgMcOa$n#F4vp>@=7uSEX%pqXKO)*+_D+OO9dbh{?4 z$6p41x|zLjpZElNHKu*}uE3T6e|{pZXO6&k$E9`fv3h-VJ>NpWZSyN}W4@6c-#7qv zW7N}T!=;N0%IiLPiP=tCBl>*#2DA4h5cJX4!)d+xc9?(nk?B}`3jq%=P3s&#F8P+Y zUi$|dhFxir9Ud`9`&#ltza5wF4!&3NzS}-=r5U!_aVfugW1#!}^0!LdRyJjb$b&wDlIvv}^fI##S*v37+H6gp7oz!vL3C&hD!B@%D` zp<=$o#!goZlpOK_iX9QJjAK5PzG3Qr?5KFpkMA?PQ1L+GOnI?hVq3kN%zih;?3aoc zeqCec;nf-=TMs>A&BVQl&jZB6-q{qMUsDW@c-il#ntfie!)*WfofsA|M*vzwW}AIl za*1&cRQ!tguLI9{aq_rNYtQ>%XZBnCE6y;*TafP6`pOuP@e z=)#;=0}k;_V(~Eze;%WlC_s$-pmLve;_qbTR~%=oaNwI9!4oeBeB!VBWY)>?H&>$b zFO}ojla|zu&G#4;KH0dK%t;-9!I^Ir6Nh=X_6J9tx;g;*^zCw974 zxa5e~Gft;1Urz66>C-ytHE@Gs%3klK%isCmexPFej|3gL=f5H5 zJWpdlgPaR?Cfq(@&=e7sgaa(fRf4!GoZ*dsA6IY7Yq zr;XS@cY@Zm1fIzW(0+z&9PP-9+#bOC5wnhIZprh+GEb}{wyjnl@&|uW-T)heeK~7F zB`)`vfS7-1ee2e+CuTQ?+{s$a1v^0-YjnZnutww?jviM@vlcILJ$IKJu-|c8_L*EC z>yMcv2NItPwfIL*2F(g~nSN`eD<{a-I&IFL`O*RMbL0}*dLEo9IXc978K)nY0*@Y>VmSJ@;xVkuCl6+-)8n zb*F26;13`_<9Q(3*rNdXSGPA#2R!oV=pH;CC0pQal;qjwt_uC38@Fxl85v@e0nVM) z@VR5xQpQCmb{LrAdmat`zBDqecY5TWnA<9~b2fUtm*-3jJaA^@*=NVgD}C@WsrYizTT0l9ww+r+sZ_vP7jkG|X^i1!Zd^r0`XIX%wOzWJHZkN@0j%(gpy z&MpAI1v+D0Pr0L+^%>X$^^j;4LSGg=2Y)Zbcb^l;0*VBsM#^`Ymv)f*`dS7R_j0a za6Ru0z1DnzENyfTe~UXV=q|MIP0=NMm1FKOBln(nwjgU{#d*y4$PQYMEPa3PJh1Z2 z@OnyYS+Az>{nUGO_55Po;<>hr3)vL1DRiLFfkFog9r*Zlpo8a6b)os=mr1?!jQbjA zi2rtcXG4BmzI=7(p>*d&cOd!?>tJ&b@7&)Q+9ljU>0iFb(QlgO(Vq8%c!Nje9(afU L0tyLitpq**L*02r literal 0 HcmV?d00001 diff --git a/assets/icon.png b/assets/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..0cdd29e5e38481aa8be3574f7288c6671d11f59f GIT binary patch literal 16215 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 2.1.2 < 3" + } + } + } + }, "dns-equal": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", @@ -4789,7 +5248,8 @@ "duplexer3": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", - "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=" + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", + "dev": true }, "duplexify": { "version": "3.7.1", @@ -4840,10 +5300,17 @@ "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, + "ejs": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.0.2.tgz", + "integrity": "sha512-IncmUpn1yN84hy2shb0POJ80FWrfGNY0cxO9f4v+/sG7qcBvAtVWUA1IdzY/8EYUmOVhoKJVdJjNd3AZcnxOjA==", + "dev": true + }, "electron": { "version": "8.2.2", "resolved": "https://registry.npmjs.org/electron/-/electron-8.2.2.tgz", "integrity": "sha512-GH4RCbpuzEn3XpTmsf+wLaJ2KOPSOoBJvQ0s6ftTLs5+IQEgKZvkdYCj8TCBNXFhss31RT3BUqoEQQUyZErK0A==", + "dev": true, "requires": { "@electron/get": "^1.0.1", "@types/node": "^12.0.12", @@ -4853,7 +5320,268 @@ "@types/node": { "version": "12.12.35", "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.35.tgz", - "integrity": "sha512-ASYsaKecA7TUsDrqIGPNk3JeEox0z/0XR/WsJJ8BIX/9+SkMSImQXKWfU/yBrSyc7ZSE/NPqLu36Nur0miCFfQ==" + "integrity": "sha512-ASYsaKecA7TUsDrqIGPNk3JeEox0z/0XR/WsJJ8BIX/9+SkMSImQXKWfU/yBrSyc7ZSE/NPqLu36Nur0miCFfQ==", + "dev": true + } + } + }, + "electron-builder": { + "version": "22.4.1", + "resolved": "https://registry.npmjs.org/electron-builder/-/electron-builder-22.4.1.tgz", + "integrity": "sha512-13CjZcGeJS+c3EKRwFT/Oty5Niif5g1FwDioBLEbjkPCPQgxdtDsr+rJtCu9qxkiKDYpAoPS+t/clNk0efONvQ==", + "dev": true, + "requires": { + "@types/yargs": "^15.0.4", + "app-builder-lib": "22.4.1", + "bluebird-lst": "^1.0.9", + "builder-util": "22.4.1", + "builder-util-runtime": "8.6.2", + "chalk": "^3.0.0", + "dmg-builder": "22.4.1", + "fs-extra": "^8.1.0", + "is-ci": "^2.0.0", + "lazy-val": "^1.0.4", + "read-config-file": "5.0.2", + "sanitize-filename": "^1.6.3", + "update-notifier": "^4.1.0", + "yargs": "^15.1.0" + }, + "dependencies": { + "@types/yargs": { + "version": "15.0.4", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.4.tgz", + "integrity": "sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "cliui": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "requires": { + "p-locate": "^4.1.0" + } + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.0" + } + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "yargs": { + "version": "15.3.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.3.1.tgz", + "integrity": "sha512-92O1HWEjw27sBfgmXiixJWT5hRBp2eobqXicLtPBIDBhYB+1HpwZlXmbW2luivBJHBzki+7VyCLRtAkScbTBQA==", + "dev": true, + "requires": { + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^4.2.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^18.1.1" + } + }, + "yargs-parser": { + "version": "18.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.2.tgz", + "integrity": "sha512-hlIPNR3IzC1YuL1c2UwwDKpXlNFBqD1Fswwh1khz5+d8Cq/8yc/Mn0i+rQXduu8hcrFKvO7Eryk+09NecTQAAQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } + } + }, + "electron-publish": { + "version": "22.4.1", + "resolved": "https://registry.npmjs.org/electron-publish/-/electron-publish-22.4.1.tgz", + "integrity": "sha512-nwKNum3KXm+01rtWX2pc1jhazdzDy2zYnQx+zmXphZchjd6UOMX3ZN0xyZUCKugw5ZliflT6LkgbrcBXBtYD3A==", + "dev": true, + "requires": { + "@types/fs-extra": "^8.1.0", + "bluebird-lst": "^1.0.9", + "builder-util": "~22.4.1", + "builder-util-runtime": "8.6.2", + "chalk": "^3.0.0", + "fs-extra": "^8.1.0", + "lazy-val": "^1.0.4", + "mime": "^2.4.4" + }, + "dependencies": { + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } } } }, @@ -4950,7 +5678,8 @@ "env-paths": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.0.tgz", - "integrity": "sha512-6u0VYSCo/OW6IoD5WCLLy9JUGARbamfSavcNXry/eu8aHVFei6CD3Sw+VGX5alea1i9pgPHW0mbu6Xj0uBh7gA==" + "integrity": "sha512-6u0VYSCo/OW6IoD5WCLLy9JUGARbamfSavcNXry/eu8aHVFei6CD3Sw+VGX5alea1i9pgPHW0mbu6Xj0uBh7gA==", + "dev": true }, "errno": { "version": "0.1.7", @@ -5010,6 +5739,7 @@ "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 }, "es6-iterator": { @@ -5031,6 +5761,23 @@ "ext": "^1.1.2" } }, + "es6-weak-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.3.tgz", + "integrity": "sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==", + "requires": { + "d": "1", + "es5-ext": "^0.10.46", + "es6-iterator": "^2.0.3", + "es6-symbol": "^3.1.1" + } + }, + "escape-goat": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", + "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==", + "dev": true + }, "escape-html": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", @@ -5460,6 +6207,15 @@ "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" }, + "event-emitter": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", + "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", + "requires": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, "eventemitter3": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.0.tgz", @@ -5748,6 +6504,7 @@ "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", @@ -5759,6 +6516,7 @@ "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" } @@ -5766,7 +6524,8 @@ "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true } } }, @@ -5853,6 +6612,7 @@ "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" } @@ -6278,6 +7038,7 @@ "version": "2.1.8", "resolved": "https://registry.npmjs.org/global-agent/-/global-agent-2.1.8.tgz", "integrity": "sha512-VpBe/rhY6Rw2VDOTszAMNambg+4Qv8j0yiTNDYEXXXxkUNGWLHp8A3ztK4YDBbFNcWF4rgsec6/5gPyryya/+A==", + "dev": true, "optional": true, "requires": { "boolean": "^3.0.0", @@ -6293,10 +7054,20 @@ "version": "7.3.2", "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==", + "dev": true, "optional": true } } }, + "global-dirs": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-2.0.1.tgz", + "integrity": "sha512-5HqUqdhkEovj2Of/ms3IeS/EekcO54ytHRLV4PEY2rhRwrHXLQjeVEES0Lhka0xwNDtGYn58wyC4s5+MHsOO6A==", + "dev": true, + "requires": { + "ini": "^1.3.5" + } + }, "global-modules": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", @@ -6326,6 +7097,7 @@ "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", @@ -6343,6 +7115,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.1.tgz", "integrity": "sha512-mJPRTc/P39NH/iNG4mXa9aIhNymaQikTrnspeCa2ZuJ+mH2QN/rXwtX3XwKrHqWgUQFbNZKtHM105aHzJalElw==", + "dev": true, "optional": true, "requires": { "define-properties": "^1.1.3" @@ -6378,6 +7151,7 @@ "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", @@ -6504,6 +7278,12 @@ } } }, + "has-yarn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", + "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", + "dev": true + }, "hash-base": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", @@ -6691,7 +7471,8 @@ "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==" + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", + "dev": true }, "http-deceiver": { "version": "1.2.7", @@ -6832,6 +7613,12 @@ "resolve-from": "^3.0.0" } }, + "import-lazy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", + "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", + "dev": true + }, "import-local": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz", @@ -7136,6 +7923,30 @@ "resolved": "https://registry.npmjs.org/is-in-browser/-/is-in-browser-1.1.3.tgz", "integrity": "sha1-Vv9NtoOgeMYILrldrX3GLh0E+DU=" }, + "is-installed-globally": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.3.2.tgz", + "integrity": "sha512-wZ8x1js7Ia0kecP/CHM/3ABkAmujX7WPvQk6uu3Fly/Mk44pySulQpnHG46OMjHGXApINnV4QhY3SWnECO2z5g==", + "dev": true, + "requires": { + "global-dirs": "^2.0.1", + "is-path-inside": "^3.0.1" + }, + "dependencies": { + "is-path-inside": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.2.tgz", + "integrity": "sha512-/2UGPSgmtqwo1ktx8NDHjuPwZWmHhO+gj0f93EkhLB5RgW9RZevWYYlIkS6zePc6U2WpOdQYIwHe9YC4DWEBVg==", + "dev": true + } + } + }, + "is-npm": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-4.0.0.tgz", + "integrity": "sha512-96ECIfh9xtDDlPylNPXhzjsykHsMJZ18ASpaWzQyBr4YRTcVjUvzaHayDAES2oU/3KpljhHUjtSRNiDwi0F0ig==", + "dev": true + }, "is-number": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", @@ -7252,11 +8063,23 @@ "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=" }, + "is-yarn-global": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", + "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==", + "dev": true + }, "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" }, + "isbinaryfile": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.6.tgz", + "integrity": "sha512-ORrEy+SNVqUhrCaal4hA4fBzhggQQ+BaLntyPOdoEiwlKZW9BZiJXjg3RMiruE4tPEI3pyVPpySHQF/dKWperg==", + "dev": true + }, "isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", @@ -8403,7 +9226,8 @@ "json-buffer": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", - "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=" + "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=", + "dev": true }, "json-parse-better-errors": { "version": "1.0.2", @@ -8565,6 +9389,7 @@ "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" } @@ -8596,11 +9421,26 @@ "webpack-sources": "^1.1.0" } }, + "latest-version": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", + "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", + "dev": true, + "requires": { + "package-json": "^6.3.0" + } + }, "lazy-cache": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=" }, + "lazy-val": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/lazy-val/-/lazy-val-1.0.4.tgz", + "integrity": "sha512-u93kb2fPbIrfzBuLjZE+w+fJbUUMhNDXxNmMfaqNgpfQf1CO5ZSe2LfsnBqVAk7i/2NF48OSoRj+Xe2VT+lE8Q==", + "dev": true + }, "lcid": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", @@ -8813,7 +9653,8 @@ "lowercase-keys": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==" + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "dev": true }, "lru-cache": { "version": "5.1.1", @@ -8830,6 +9671,14 @@ } } }, + "lru-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/lru-queue/-/lru-queue-0.1.0.tgz", + "integrity": "sha1-Jzi9nw089PhEkMVzbEhpmsYyzaM=", + "requires": { + "es5-ext": "~0.10.2" + } + }, "make-dir": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", @@ -8889,6 +9738,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/matcher/-/matcher-2.1.0.tgz", "integrity": "sha512-o+nZr+vtJtgPNklyeUKkkH42OsK8WAfdgaJE2FNxcjLPg+5QbeEoT6vRj8Xq/iv18JlQ9cmKsEu0b94ixWf1YQ==", + "dev": true, "optional": true, "requires": { "escape-string-regexp": "^2.0.0" @@ -8898,6 +9748,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true, "optional": true } } @@ -8932,6 +9783,21 @@ "p-is-promise": "^2.0.0" } }, + "memoizee": { + "version": "0.4.14", + "resolved": "https://registry.npmjs.org/memoizee/-/memoizee-0.4.14.tgz", + "integrity": "sha512-/SWFvWegAIYAO4NQMpcX+gcra0yEZu4OntmUdrBaWrJncxOqAziGFlHxc7yjKVK2uu3lpPW27P27wkR82wA8mg==", + "requires": { + "d": "1", + "es5-ext": "^0.10.45", + "es6-weak-map": "^2.0.2", + "event-emitter": "^0.3.5", + "is-promise": "^2.1", + "lru-queue": "0.1", + "next-tick": "1", + "timers-ext": "^0.1.5" + } + }, "memory-fs": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", @@ -9062,7 +9928,8 @@ "mimic-response": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "dev": true }, "min-indent": { "version": "1.0.0", @@ -9479,6 +10346,7 @@ "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", @@ -9755,7 +10623,8 @@ "p-cancelable": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", - "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==" + "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", + "dev": true }, "p-defer": { "version": "1.0.0", @@ -9822,6 +10691,18 @@ "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=" }, + "package-json": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", + "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", + "dev": true, + "requires": { + "got": "^9.6.0", + "registry-auth-token": "^4.0.0", + "registry-url": "^5.0.0", + "semver": "^6.2.0" + } + }, "pako": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", @@ -9898,6 +10779,22 @@ "safe-buffer": "^5.1.1" } }, + "parse-css-font": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/parse-css-font/-/parse-css-font-2.0.2.tgz", + "integrity": "sha1-e2CwYHBaJam5C38O1JPlgjJIplI=", + "requires": { + "css-font-size-keywords": "^1.0.0", + "css-font-stretch-keywords": "^1.0.1", + "css-font-style-keywords": "^1.0.1", + "css-font-weight-keywords": "^1.0.0", + "css-global-keywords": "^1.0.1", + "css-list-helpers": "^1.0.1", + "css-system-font-keywords": "^1.0.0", + "tcomb": "^2.5.0", + "unquote": "^1.1.0" + } + }, "parse-json": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", @@ -9994,7 +10891,8 @@ "pend": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", - "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=" + "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=", + "dev": true }, "performance-now": { "version": "2.1.0", @@ -11522,6 +12420,7 @@ "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 }, "proxy-addr": { @@ -11591,6 +12490,15 @@ "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" }, + "pupa": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.0.1.tgz", + "integrity": "sha512-hEJH0s8PXLY/cdXh66tNEQGndDrIKNqNC5xmrysZy3i5C3oEoLna7YAOad+7u125+zH1HNXUmGEkrhb3c2VriA==", + "dev": true, + "requires": { + "escape-goat": "^2.0.0" + } + }, "q": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", @@ -11673,6 +12581,26 @@ } } }, + "rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "dev": true, + "requires": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "dependencies": { + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "dev": true + } + } + }, "react": { "version": "16.13.1", "resolved": "https://registry.npmjs.org/react/-/react-16.13.1.tgz", @@ -12055,6 +12983,20 @@ } } }, + "read-config-file": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/read-config-file/-/read-config-file-5.0.2.tgz", + "integrity": "sha512-tVt1lsiSjs+FtL/vtfCivqtKR1UNk3BB3uPJQvJqkgtAYDvZjo0xyXFYSVmzaTcO+Jdi5G7O2K2vDV+p1M/oug==", + "dev": true, + "requires": { + "dotenv": "^8.2.0", + "dotenv-expand": "^5.1.0", + "fs-extra": "^8.1.0", + "js-yaml": "^3.13.1", + "json5": "^2.1.1", + "lazy-val": "^1.0.4" + } + }, "read-pkg": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", @@ -12252,6 +13194,24 @@ "unicode-match-property-value-ecmascript": "^1.2.0" } }, + "registry-auth-token": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.1.1.tgz", + "integrity": "sha512-9bKS7nTl9+/A1s7tnPeGrUpRcVY+LUh7bfFgzpndALdPfXQBfQV77rQVtqgUV3ti4vc/Ik81Ex8UJDWDQ12zQA==", + "dev": true, + "requires": { + "rc": "^1.2.8" + } + }, + "registry-url": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", + "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", + "dev": true, + "requires": { + "rc": "^1.2.8" + } + }, "regjsgen": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.1.tgz", @@ -12499,6 +13459,7 @@ "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" } @@ -12580,6 +13541,7 @@ "version": "2.15.3", "resolved": "https://registry.npmjs.org/roarr/-/roarr-2.15.3.tgz", "integrity": "sha512-AEjYvmAhlyxOeB9OqPUzQCo3kuAkNfuDk/HqWbZdFsqDFpapkTjiw+p4svNEoRLvuqNTxqfL+s+gtD4eDgZ+CA==", + "dev": true, "optional": true, "requires": { "boolean": "^3.0.0", @@ -12594,6 +13556,7 @@ "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 } } @@ -12671,6 +13634,7 @@ "version": "1.6.3", "resolved": "https://registry.npmjs.org/sanitize-filename/-/sanitize-filename-1.6.3.tgz", "integrity": "sha512-y/52Mcy7aw3gRm7IrcGDFx/bCk4AhRh2eI9luHOQM86nZsqwiRkkq2GekHXBBD+SmPidc8i2PqtYZl+pWJ8Oeg==", + "dev": true, "requires": { "truncate-utf8-bytes": "^1.0.0" } @@ -12770,8 +13734,18 @@ "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 }, + "semver-diff": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", + "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", + "dev": true, + "requires": { + "semver": "^6.3.0" + } + }, "send": { "version": "0.17.1", "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", @@ -12828,6 +13802,7 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-5.0.0.tgz", "integrity": "sha512-/VtpuyzYf82mHYTtI4QKtwHa79vAdU5OQpNPAmE/0UDdlGT0ZxHwC+J6gXkw29wwoVI8fMPsfcVHOwXtUQYYQA==", + "dev": true, "optional": true, "requires": { "type-fest": "^0.8.0" @@ -13346,6 +14321,12 @@ "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.2.tgz", "integrity": "sha512-MTX+MeG5U994cazkjd/9KNAapsHnibjMLnfXodlkXw76JEea0UiNzrqidzo1emMwk7w5Qhc9jd4Bn9TBb1MFwA==" }, + "stat-mode": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stat-mode/-/stat-mode-1.0.0.tgz", + "integrity": "sha512-jH9EhtKIjuXZ2cWxmXS8ZP80XyC3iasQxMDV8jzhNJpfDb7VbQLVW4Wvsxz9QZvzV+G4YoSfBUVKDOyxLzi/sg==", + "dev": true + }, "static-extend": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", @@ -13684,6 +14665,7 @@ "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" } @@ -13845,6 +14827,27 @@ "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==" }, + "tcomb": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/tcomb/-/tcomb-2.7.0.tgz", + "integrity": "sha1-ENYpWAQWaaXVNWe5pO6M3iKxwrA=" + }, + "temp-file": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/temp-file/-/temp-file-3.3.7.tgz", + "integrity": "sha512-9tBJKt7GZAQt/Rg0QzVWA8Am8c1EFl+CAv04/aBVqlx5oyfQ508sFIABshQ0xbZu6mBrFLWIUXO/bbLYghW70g==", + "dev": true, + "requires": { + "async-exit-hook": "^2.0.1", + "fs-extra": "^8.1.0" + } + }, + "term-size": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/term-size/-/term-size-2.2.0.tgz", + "integrity": "sha512-a6sumDlzyHVJWb8+YofY4TW112G6p2FCPEAFk+59gIYHv3XHRhm9ltVQ9kli4hNWeQBwSpe8cRN25x0ROunMOw==", + "dev": true + }, "terser": { "version": "4.6.11", "resolved": "https://registry.npmjs.org/terser/-/terser-4.6.11.tgz", @@ -14048,6 +15051,15 @@ "setimmediate": "^1.0.4" } }, + "timers-ext": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/timers-ext/-/timers-ext-0.1.7.tgz", + "integrity": "sha512-b85NUNzTSdodShTIbky6ZF02e8STtVVfD+fu4aXXShEELpozH+bCpJLYMPZbsABN2wDH7fJpqIoXxJpzbf0NqQ==", + "requires": { + "es5-ext": "~0.10.46", + "next-tick": "1" + } + }, "timsort": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/timsort/-/timsort-0.3.0.tgz", @@ -14092,7 +15104,8 @@ "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==" + "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", + "dev": true }, "to-regex": { "version": "3.0.2", @@ -14140,6 +15153,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz", "integrity": "sha1-QFkjkJWS1W94pYGENLC3hInKXys=", + "dev": true, "requires": { "utf8-byte-length": "^1.0.1" } @@ -14171,6 +15185,7 @@ "version": "0.0.6", "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz", "integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==", + "dev": true, "optional": true }, "tunnel-agent": { @@ -14218,6 +15233,15 @@ "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" }, + "typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dev": true, + "requires": { + "is-typedarray": "^1.0.0" + } + }, "unicode-canonical-property-names-ecmascript": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", @@ -14279,6 +15303,15 @@ "imurmurhash": "^0.1.4" } }, + "unique-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", + "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", + "dev": true, + "requires": { + "crypto-random-string": "^2.0.0" + } + }, "universalify": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", @@ -14335,6 +15368,79 @@ "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==" }, + "update-notifier": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-4.1.0.tgz", + "integrity": "sha512-w3doE1qtI0/ZmgeoDoARmI5fjDoT93IfKgEGqm26dGUOh8oNpaSTsGNdYRN/SjOuo10jcJGwkEL3mroKzktkew==", + "dev": true, + "requires": { + "boxen": "^4.2.0", + "chalk": "^3.0.0", + "configstore": "^5.0.1", + "has-yarn": "^2.1.0", + "import-lazy": "^2.1.0", + "is-ci": "^2.0.0", + "is-installed-globally": "^0.3.1", + "is-npm": "^4.0.0", + "is-yarn-global": "^0.3.0", + "latest-version": "^5.0.0", + "pupa": "^2.0.1", + "semver-diff": "^3.1.1", + "xdg-basedir": "^4.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, "uri-js": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", @@ -14387,6 +15493,7 @@ "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" }, @@ -14394,7 +15501,8 @@ "prepend-http": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", - "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=" + "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", + "dev": true } } }, @@ -14406,7 +15514,8 @@ "utf8-byte-length": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/utf8-byte-length/-/utf8-byte-length-1.0.4.tgz", - "integrity": "sha1-9F8VDExm7uloGGUFq5P8u4rWv2E=" + "integrity": "sha1-9F8VDExm7uloGGUFq5P8u4rWv2E=", + "dev": true }, "util": { "version": "0.10.3", @@ -14459,6 +15568,11 @@ "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz", "integrity": "sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g==" }, + "valid-url": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/valid-url/-/valid-url-1.0.9.tgz", + "integrity": "sha1-HBRHm0DxOXp1eC8RXkCGRHQzogA=" + }, "validate-npm-package-license": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", @@ -16157,6 +17271,15 @@ "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=" }, + "widest-line": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", + "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", + "dev": true, + "requires": { + "string-width": "^4.0.0" + } + }, "word-wrap": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", @@ -16402,6 +17525,12 @@ "async-limiter": "~1.0.0" } }, + "xdg-basedir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", + "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", + "dev": true + }, "xml-name-validator": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", @@ -16533,6 +17662,7 @@ "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/package.json b/package.json index 432843f..155e4b4 100644 --- a/package.json +++ b/package.json @@ -1,15 +1,27 @@ { - "name": "react-electron", + "name": "diceware", "version": "0.1.0", "main": "public/Main.js", + "homepage": "./", "private": true, + "repository": "github:robmcelhinney/diceware", + "description": "An electron program to create a random diceware word list.", + "keywords": [ + "electron", + "password", + "diceware" + ], + "author": { + "name": "Robert McElhinney", + "email": "rob@robmcelhinney.com", + "url": "https://robmcelhinney.com" + }, "dependencies": { "@material-ui/core": "^4.9.10", "@testing-library/jest-dom": "^4.2.4", "@testing-library/react": "^9.5.0", "@testing-library/user-event": "^7.2.1", "csprng": "^0.1.2", - "electron": "^8.2.2", "react": "^16.13.1", "react-dom": "^16.13.1", "react-redux": "^7.2.0", @@ -23,7 +35,19 @@ "eject": "react-scripts eject", "electron-start": "electron .", "build:css": "postcss src/assets/tailwind.css -o src/assets/main.css", - "watch:css": "postcss src/assets/tailwind.css -o src/assets/main.css" + "watch:css": "postcss src/assets/tailwind.css -o src/assets/main.css", + "preelectron-pack": "npm run build", + "electron-pack": "electron-builder -c.extraMetadata.main=build/main.js" + }, + "build": { + "files": [ + "build/**/*", + "node_modules/**/*" + ], + "directories": { + "buildResources": "assets" + }, + "extends": null }, "eslintConfig": { "extends": "react-app" @@ -43,6 +67,7 @@ "devDependencies": { "autoprefixer": "^9.7.6", "electron": "^8.2.2", + "electron-builder": "^22.4.1", "postcss-cli": "^7.1.0", "tailwindcss": "^1.2.0" } diff --git a/public/main.js b/public/main.js index 4f4aff9..2abb353 100644 --- a/public/main.js +++ b/public/main.js @@ -1,3 +1,4 @@ +const path = require('path') const { app, BrowserWindow } = require('electron') function createWindow () { @@ -11,10 +12,10 @@ function createWindow () { }) // and load the index.html of the app. - win.loadURL('http://localhost:3000/') + win.loadURL(`file://${path.join(__dirname, '../build/index.html')}`) // Open the DevTools. - win.webContents.openDevTools() + // win.webContents.openDevTools() } // This method will be called when Electron has finished