From 405ebaea0ae4d4ed0f235959342db1d842935330 Mon Sep 17 00:00:00 2001 From: YUKI SHIROTA <39118010+rechtburg@users.noreply.github.com> Date: Tue, 15 Oct 2019 04:08:55 +0900 Subject: [PATCH 01/16] install emotion for styled-components (#4) --- package-lock.json | 131 +++++++++++++++++++--------------------------- package.json | 2 + 2 files changed, 55 insertions(+), 78 deletions(-) diff --git a/package-lock.json b/package-lock.json index 761c551..6675c8c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -210,7 +210,6 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.0.0.tgz", "integrity": "sha512-aP/hlLq01DWNEiDg4Jn23i+CXxW/owM4WpDLFUbpjxe4NS3BhLVZQ5i7E0ZrxuQ/vwekIeciyamgB1UIYxxM6A==", - "dev": true, "requires": { "@babel/types": "^7.0.0" } @@ -1209,7 +1208,6 @@ "version": "7.6.3", "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.6.3.tgz", "integrity": "sha512-CqbcpTxMcpuQTMhjI37ZHVgjBkysg5icREQIEZ0eG1yCNwg3oy+5AaLiOKmjsCj6nqOsa6Hf0ObjRVwokb7srA==", - "dev": true, "requires": { "esutils": "^2.0.2", "lodash": "^4.17.13", @@ -1219,8 +1217,7 @@ "to-fast-properties": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", - "dev": true + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=" } } }, @@ -1228,7 +1225,6 @@ "version": "10.0.19", "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-10.0.19.tgz", "integrity": "sha512-BoiLlk4vEsGBg2dAqGSJu0vJl/PgVtCYLBFJaEO8RmQzPugXewQCXZJNXTDFaRlfCs0W+quesayav4fvaif5WQ==", - "dev": true, "requires": { "@emotion/sheet": "0.9.3", "@emotion/stylis": "0.8.4", @@ -1240,7 +1236,6 @@ "version": "10.0.21", "resolved": "https://registry.npmjs.org/@emotion/core/-/core-10.0.21.tgz", "integrity": "sha512-U9zbc7ovZ2ceIwbLXYZPJy6wPgnOdTNT4jENZ31ee6v2lojetV5bTbCVk6ciT8G3wQRyVaTTfUCH9WCrMzpRIw==", - "dev": true, "requires": { "@babel/runtime": "^7.5.5", "@emotion/cache": "^10.0.17", @@ -1254,7 +1249,6 @@ "version": "10.0.14", "resolved": "https://registry.npmjs.org/@emotion/css/-/css-10.0.14.tgz", "integrity": "sha512-MozgPkBEWvorcdpqHZE5x1D/PLEHUitALQCQYt2wayf4UNhpgQs2tN0UwHYS4FMy5ROBH+0ALyCFVYJ/ywmwlg==", - "dev": true, "requires": { "@emotion/serialize": "^0.11.8", "@emotion/utils": "0.11.2", @@ -1264,14 +1258,12 @@ "@emotion/hash": { "version": "0.7.3", "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.7.3.tgz", - "integrity": "sha512-14ZVlsB9akwvydAdaEnVnvqu6J2P6ySv39hYyl/aoB6w/V+bXX0tay8cF6paqbgZsN2n5Xh15uF4pE+GvE+itw==", - "dev": true + "integrity": "sha512-14ZVlsB9akwvydAdaEnVnvqu6J2P6ySv39hYyl/aoB6w/V+bXX0tay8cF6paqbgZsN2n5Xh15uF4pE+GvE+itw==" }, "@emotion/is-prop-valid": { "version": "0.8.3", "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-0.8.3.tgz", "integrity": "sha512-We7VBiltAJ70KQA0dWkdPMXnYoizlxOXpvtjmu5/MBnExd+u0PGgV27WCYanmLAbCwAU30Le/xA0CQs/F/Otig==", - "dev": true, "requires": { "@emotion/memoize": "0.7.3" } @@ -1279,14 +1271,12 @@ "@emotion/memoize": { "version": "0.7.3", "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.3.tgz", - "integrity": "sha512-2Md9mH6mvo+ygq1trTeVp2uzAKwE2P7In0cRpD/M9Q70aH8L+rxMLbb3JCN2JoSWsV2O+DdFjfbbXoMoLBczow==", - "dev": true + "integrity": "sha512-2Md9mH6mvo+ygq1trTeVp2uzAKwE2P7In0cRpD/M9Q70aH8L+rxMLbb3JCN2JoSWsV2O+DdFjfbbXoMoLBczow==" }, "@emotion/serialize": { "version": "0.11.11", "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-0.11.11.tgz", "integrity": "sha512-YG8wdCqoWtuoMxhHZCTA+egL0RSGdHEc+YCsmiSBPBEDNuVeMWtjEWtGrhUterSChxzwnWBXvzSxIFQI/3sHLw==", - "dev": true, "requires": { "@emotion/hash": "0.7.3", "@emotion/memoize": "0.7.3", @@ -1298,14 +1288,12 @@ "@emotion/sheet": { "version": "0.9.3", "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-0.9.3.tgz", - "integrity": "sha512-c3Q6V7Df7jfwSq5AzQWbXHa5soeE4F5cbqi40xn0CzXxWW9/6Mxq48WJEtqfWzbZtW9odZdnRAkwCQwN12ob4A==", - "dev": true + "integrity": "sha512-c3Q6V7Df7jfwSq5AzQWbXHa5soeE4F5cbqi40xn0CzXxWW9/6Mxq48WJEtqfWzbZtW9odZdnRAkwCQwN12ob4A==" }, "@emotion/styled": { "version": "10.0.17", "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-10.0.17.tgz", "integrity": "sha512-zHMgWjHDMNjD+ux64POtDnjLAObniu3znxFBLSdV/RiEhSLjHIowfvSbbd/C33/3uwtI6Uzs2KXnRZtka/PpAQ==", - "dev": true, "requires": { "@emotion/styled-base": "^10.0.17", "babel-plugin-emotion": "^10.0.17" @@ -1315,7 +1303,6 @@ "version": "10.0.19", "resolved": "https://registry.npmjs.org/@emotion/styled-base/-/styled-base-10.0.19.tgz", "integrity": "sha512-Sz6GBHTbOZoeZQKvkE9gQPzaJ6/qtoQ/OPvyG2Z/6NILlYk60Es1cEcTgTkm26H8y7A0GSgp4UmXl+srvsnFPg==", - "dev": true, "requires": { "@babel/runtime": "^7.5.5", "@emotion/is-prop-valid": "0.8.3", @@ -1326,26 +1313,22 @@ "@emotion/stylis": { "version": "0.8.4", "resolved": "https://registry.npmjs.org/@emotion/stylis/-/stylis-0.8.4.tgz", - "integrity": "sha512-TLmkCVm8f8gH0oLv+HWKiu7e8xmBIaokhxcEKPh1m8pXiV/akCiq50FvYgOwY42rjejck8nsdQxZlXZ7pmyBUQ==", - "dev": true + "integrity": "sha512-TLmkCVm8f8gH0oLv+HWKiu7e8xmBIaokhxcEKPh1m8pXiV/akCiq50FvYgOwY42rjejck8nsdQxZlXZ7pmyBUQ==" }, "@emotion/unitless": { "version": "0.7.4", "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.4.tgz", - "integrity": "sha512-kBa+cDHOR9jpRJ+kcGMsysrls0leukrm68DmFQoMIWQcXdr2cZvyvypWuGYT7U+9kAExUE7+T7r6G3C3A6L8MQ==", - "dev": true + "integrity": "sha512-kBa+cDHOR9jpRJ+kcGMsysrls0leukrm68DmFQoMIWQcXdr2cZvyvypWuGYT7U+9kAExUE7+T7r6G3C3A6L8MQ==" }, "@emotion/utils": { "version": "0.11.2", "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-0.11.2.tgz", - "integrity": "sha512-UHX2XklLl3sIaP6oiMmlVzT0J+2ATTVpf0dHQVyPJHTkOITvXfaSqnRk6mdDhV9pR8T/tHc3cex78IKXssmzrA==", - "dev": true + "integrity": "sha512-UHX2XklLl3sIaP6oiMmlVzT0J+2ATTVpf0dHQVyPJHTkOITvXfaSqnRk6mdDhV9pR8T/tHc3cex78IKXssmzrA==" }, "@emotion/weak-memoize": { "version": "0.2.4", "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.2.4.tgz", - "integrity": "sha512-6PYY5DVdAY1ifaQW6XYTnOMihmBVT27elqSjEoodchsGjzYlEsTQMcEhSud99kVawatyTZRTiVkJ/c6lwbQ7nA==", - "dev": true + "integrity": "sha512-6PYY5DVdAY1ifaQW6XYTnOMihmBVT27elqSjEoodchsGjzYlEsTQMcEhSud99kVawatyTZRTiVkJ/c6lwbQ7nA==" }, "@icons/material": { "version": "0.2.4", @@ -3461,7 +3444,6 @@ "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, "requires": { "sprintf-js": "~1.0.2" } @@ -4005,7 +3987,6 @@ "version": "10.0.21", "resolved": "https://registry.npmjs.org/babel-plugin-emotion/-/babel-plugin-emotion-10.0.21.tgz", "integrity": "sha512-03o+T6sfVAJhNDcSdLapgv4IeewcFPzxlvBUVdSf7o5PI57ZSxoDvmy+ZulVWSu+rOWAWkEejNcsb29TuzJHbg==", - "dev": true, "requires": { "@babel/helper-module-imports": "^7.0.0", "@emotion/hash": "0.7.3", @@ -4022,8 +4003,7 @@ "source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" } } }, @@ -4094,7 +4074,6 @@ "version": "2.6.1", "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-2.6.1.tgz", "integrity": "sha512-6W2nwiXme6j1n2erPOnmRiWfObUhWH7Qw1LMi9XZy8cj+KtESu3T6asZvtk5bMQQjX8te35o7CFueiSdL/2NmQ==", - "dev": true, "requires": { "@babel/runtime": "^7.4.2", "cosmiconfig": "^5.2.0", @@ -4215,8 +4194,7 @@ "babel-plugin-syntax-jsx": { "version": "6.18.0", "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", - "integrity": "sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY=", - "dev": true + "integrity": "sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY=" }, "babel-plugin-syntax-object-rest-spread": { "version": "6.13.0", @@ -5174,7 +5152,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz", "integrity": "sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ=", - "dev": true, "requires": { "callsites": "^2.0.0" } @@ -5183,7 +5160,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz", "integrity": "sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ=", - "dev": true, "requires": { "caller-callsite": "^2.0.0" } @@ -5191,8 +5167,7 @@ "callsites": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", - "integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=", - "dev": true + "integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=" }, "camel-case": { "version": "3.0.0", @@ -5909,7 +5884,6 @@ "version": "1.6.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.6.0.tgz", "integrity": "sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A==", - "dev": true, "requires": { "safe-buffer": "~5.1.1" }, @@ -5917,8 +5891,7 @@ "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 + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" } } }, @@ -6020,7 +5993,6 @@ "version": "5.2.1", "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", - "dev": true, "requires": { "import-fresh": "^2.0.0", "is-directory": "^0.3.1", @@ -6236,8 +6208,7 @@ "csstype": { "version": "2.6.7", "resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.7.tgz", - "integrity": "sha512-9Mcn9sFbGBAdmimWb2gLVDtFJzeKtDGIr76TUqmjZrw9LFXBMSU70lcs+C0/7fyCd6iBDqmksUcCOUIkisPHsQ==", - "dev": true + "integrity": "sha512-9Mcn9sFbGBAdmimWb2gLVDtFJzeKtDGIr76TUqmjZrw9LFXBMSU70lcs+C0/7fyCd6iBDqmksUcCOUIkisPHsQ==" }, "currently-unhandled": { "version": "0.4.1", @@ -7000,7 +6971,6 @@ "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, "requires": { "is-arrayish": "^0.2.1" } @@ -7055,8 +7025,7 @@ "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" }, "escodegen": { "version": "1.12.0", @@ -7110,8 +7079,7 @@ "esprima": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" }, "esrecurse": { "version": "4.2.1", @@ -7131,8 +7099,7 @@ "esutils": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" }, "etag": { "version": "1.8.1", @@ -7957,8 +7924,7 @@ "find-root": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", - "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==", - "dev": true + "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==" }, "find-up": { "version": "3.0.0", @@ -8909,7 +8875,8 @@ "ansi-regex": { "version": "2.1.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "aproba": { "version": "1.2.0", @@ -8930,12 +8897,14 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, + "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -8950,17 +8919,20 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "core-util-is": { "version": "1.0.2", @@ -9077,7 +9049,8 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "ini": { "version": "1.3.5", @@ -9089,6 +9062,7 @@ "version": "1.0.0", "bundled": true, "dev": true, + "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -9103,6 +9077,7 @@ "version": "3.0.4", "bundled": true, "dev": true, + "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -9110,12 +9085,14 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "minipass": { "version": "2.3.5", "bundled": true, "dev": true, + "optional": true, "requires": { "safe-buffer": "^5.1.2", "yallist": "^3.0.0" @@ -9134,6 +9111,7 @@ "version": "0.5.1", "bundled": true, "dev": true, + "optional": true, "requires": { "minimist": "0.0.8" } @@ -9214,7 +9192,8 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "object-assign": { "version": "4.1.1", @@ -9226,6 +9205,7 @@ "version": "1.4.0", "bundled": true, "dev": true, + "optional": true, "requires": { "wrappy": "1" } @@ -9311,7 +9291,8 @@ "safe-buffer": { "version": "5.1.2", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "safer-buffer": { "version": "2.1.2", @@ -9347,6 +9328,7 @@ "version": "1.0.2", "bundled": true, "dev": true, + "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -9366,6 +9348,7 @@ "version": "3.0.1", "bundled": true, "dev": true, + "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -9409,12 +9392,14 @@ "wrappy": { "version": "1.0.2", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "yallist": { "version": "3.0.3", "bundled": true, - "dev": true + "dev": true, + "optional": true } } }, @@ -10576,7 +10561,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz", "integrity": "sha1-2BNVwVYS04bGH53dOSLUMEgipUY=", - "dev": true, "requires": { "caller-path": "^2.0.0", "resolve-from": "^3.0.0" @@ -10871,8 +10855,7 @@ "is-arrayish": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", - "dev": true + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" }, "is-binary-path": { "version": "1.0.1", @@ -10952,8 +10935,7 @@ "is-directory": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz", - "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=", - "dev": true + "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=" }, "is-dom": { "version": "1.1.0", @@ -12240,7 +12222,6 @@ "version": "3.13.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", - "dev": true, "requires": { "argparse": "^1.0.7", "esprima": "^4.0.0" @@ -12303,8 +12284,7 @@ "json-parse-better-errors": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", - "dev": true + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" }, "json-schema": { "version": "0.2.3", @@ -14671,7 +14651,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", - "dev": true, "requires": { "error-ex": "^1.3.1", "json-parse-better-errors": "^1.0.1" @@ -14743,8 +14722,7 @@ "path-parse": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", - "dev": true + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" }, "path-to-regexp": { "version": "1.7.0", @@ -16895,7 +16873,6 @@ "version": "1.12.0", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.12.0.tgz", "integrity": "sha512-B/dOmuoAik5bKcD6s6nXDCjzUKnaDvdkRyAk6rsmsKLipWj4797iothd7jmmUhWTfinVMU+wc56rYKsit2Qy4w==", - "dev": true, "requires": { "path-parse": "^1.0.6" } @@ -16935,8 +16912,7 @@ "resolve-from": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", - "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", - "dev": true + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=" }, "resolve-pathname": { "version": "3.0.0", @@ -18266,8 +18242,7 @@ "sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" }, "sshpk": { "version": "1.16.1", diff --git a/package.json b/package.json index 0df94a0..41745cf 100644 --- a/package.json +++ b/package.json @@ -35,6 +35,8 @@ }, "description": "== README", "dependencies": { + "@emotion/core": "^10.0.21", + "@emotion/styled": "^10.0.17", "animejs": "^2.2.0", "axios": "^0.18.0", "classnames": "^2.2.6", From f219880c01357daf121d15d297e15bdaef77279d Mon Sep 17 00:00:00 2001 From: YUKI SHIROTA <39118010+rechtburg@users.noreply.github.com> Date: Tue, 15 Oct 2019 05:01:21 +0900 Subject: [PATCH 02/16] [Refactor] TopPage (#5) * create Button and Image * implements styled-components * delte file and remove css * rename TopPage * create Button story --- .../components/__stories__/Button.story.tsx | 10 ++++ .../__stories__/ConfirmBtn.story.tsx | 15 ------ src/javascripts/components/atoms/Button.tsx | 28 ++++++++++ src/javascripts/components/atoms/Image.tsx | 21 ++++++++ .../components/atoms/buttons/toppage-btn.tsx | 19 ------- .../components/atoms/toppage-logo.tsx | 10 ---- .../components/atoms/toppage-planet-img.tsx | 10 ---- .../molecules/toppage-form-container.tsx | 23 --------- .../components/pages/guests/TopPage.tsx | 0 .../components/pages/guests/top-page.tsx | 51 ------------------- src/stylesheets/_button.scss | 13 ----- src/stylesheets/top_page.scss | 40 --------------- 12 files changed, 59 insertions(+), 181 deletions(-) create mode 100644 src/javascripts/components/__stories__/Button.story.tsx delete mode 100644 src/javascripts/components/__stories__/ConfirmBtn.story.tsx create mode 100644 src/javascripts/components/atoms/Button.tsx create mode 100644 src/javascripts/components/atoms/Image.tsx delete mode 100644 src/javascripts/components/atoms/buttons/toppage-btn.tsx delete mode 100644 src/javascripts/components/atoms/toppage-logo.tsx delete mode 100644 src/javascripts/components/atoms/toppage-planet-img.tsx delete mode 100644 src/javascripts/components/molecules/toppage-form-container.tsx create mode 100644 src/javascripts/components/pages/guests/TopPage.tsx delete mode 100644 src/javascripts/components/pages/guests/top-page.tsx delete mode 100644 src/stylesheets/top_page.scss diff --git a/src/javascripts/components/__stories__/Button.story.tsx b/src/javascripts/components/__stories__/Button.story.tsx new file mode 100644 index 0000000..6484d37 --- /dev/null +++ b/src/javascripts/components/__stories__/Button.story.tsx @@ -0,0 +1,10 @@ +import { withKnobs } from "@storybook/addon-knobs"; +import { storiesOf } from "@storybook/react"; +import * as React from "react"; +import Button from "../atoms/Button"; + +storiesOf("Atoms/Button", module) + .addDecorator(withKnobs) + .add("Default", () => ( + + )); diff --git a/src/javascripts/components/__stories__/ConfirmBtn.story.tsx b/src/javascripts/components/__stories__/ConfirmBtn.story.tsx deleted file mode 100644 index 7552ac2..0000000 --- a/src/javascripts/components/__stories__/ConfirmBtn.story.tsx +++ /dev/null @@ -1,15 +0,0 @@ -import { action } from "@storybook/addon-actions"; -import { text, withKnobs } from "@storybook/addon-knobs"; -import { storiesOf } from "@storybook/react"; -import * as React from "react"; -import ConfirmBtn from "../atoms/buttons/confirm-btn"; - -storiesOf("Atoms/ConfirmBtn", module) - .addDecorator(withKnobs) - .add("Default", () => { - const message = text("message", "message"); - - return( - - ) - }); diff --git a/src/javascripts/components/atoms/Button.tsx b/src/javascripts/components/atoms/Button.tsx new file mode 100644 index 0000000..b52b521 --- /dev/null +++ b/src/javascripts/components/atoms/Button.tsx @@ -0,0 +1,28 @@ +import styled from "@emotion/styled"; +import * as React from "react"; + +interface Props extends React.Attributes { + children?: React.ReactNode; + className?: string; + disabled?: boolean; + onClick?: React.MouseEventHandler; +} + +function Button({...props}: Props) { + return ( + + ) +} + +const Root = styled.span` + display: inline-flex; + box-sizing: border-box; + cursor: pointer; + align-items: center; + justify-content: center; + transition: min-width 150ms ease-in-out 0ms, height 150ms ease-in-out 0ms, + padding 150ms ease-in-out 0ms, background-color 150ms ease-in-out 0ms, + border-color 150ms ease-in-out 0ms; +`; + +export default Button; diff --git a/src/javascripts/components/atoms/Image.tsx b/src/javascripts/components/atoms/Image.tsx new file mode 100644 index 0000000..805dcea --- /dev/null +++ b/src/javascripts/components/atoms/Image.tsx @@ -0,0 +1,21 @@ +import * as React from "react"; + +interface Props { + className?: string; + src: string; + alt: string; + height?: string; + width?: string; +} + +const Image: React.FC = ({ className, src, alt, height, width }) => ( + {alt} +); + +export default Image; diff --git a/src/javascripts/components/atoms/buttons/toppage-btn.tsx b/src/javascripts/components/atoms/buttons/toppage-btn.tsx deleted file mode 100644 index 2540dd1..0000000 --- a/src/javascripts/components/atoms/buttons/toppage-btn.tsx +++ /dev/null @@ -1,19 +0,0 @@ -import * as React from 'react' -import { TopPageImgs } from '../../../constants/images' - -interface TopPageBtnProps { - isSignIn: boolean - onClick: () => void -} - -const TopPageBtn: React.SFC = ({ isSignIn, onClick }) => ( - - {isSignIn ? ( - - ) : ( - - )} - -) - -export default TopPageBtn diff --git a/src/javascripts/components/atoms/toppage-logo.tsx b/src/javascripts/components/atoms/toppage-logo.tsx deleted file mode 100644 index 591419b..0000000 --- a/src/javascripts/components/atoms/toppage-logo.tsx +++ /dev/null @@ -1,10 +0,0 @@ -import * as React from 'react' -import ImgLogo from '../../../images/index/logo.png' - -const TopPageLogo = () => ( -
- -
-) - -export default TopPageLogo diff --git a/src/javascripts/components/atoms/toppage-planet-img.tsx b/src/javascripts/components/atoms/toppage-planet-img.tsx deleted file mode 100644 index fabf17d..0000000 --- a/src/javascripts/components/atoms/toppage-planet-img.tsx +++ /dev/null @@ -1,10 +0,0 @@ -import * as React from 'react' -import ImgPlanet from '../../../images/index/top_earth.png' - -const TopPagePlanet = () => ( -
- -
-) - -export default TopPagePlanet diff --git a/src/javascripts/components/molecules/toppage-form-container.tsx b/src/javascripts/components/molecules/toppage-form-container.tsx deleted file mode 100644 index af1e85f..0000000 --- a/src/javascripts/components/molecules/toppage-form-container.tsx +++ /dev/null @@ -1,23 +0,0 @@ -import * as React from 'react' -import { connect } from 'react-redux' - -import SignInForm from './forms/signin-form' -import SignUpForm from './forms/signup-form' - -interface TopPageFormProps { - isSignIn: boolean - history: any -} - -class TopPageForm extends React.Component { - render() { - const { isSignIn }: any = this.props - return ( -
- {isSignIn ? : } -
- ) - } -} - -export default TopPageForm diff --git a/src/javascripts/components/pages/guests/TopPage.tsx b/src/javascripts/components/pages/guests/TopPage.tsx new file mode 100644 index 0000000..e69de29 diff --git a/src/javascripts/components/pages/guests/top-page.tsx b/src/javascripts/components/pages/guests/top-page.tsx deleted file mode 100644 index 002c5e0..0000000 --- a/src/javascripts/components/pages/guests/top-page.tsx +++ /dev/null @@ -1,51 +0,0 @@ -import * as React from 'react' -import Alert from 'react-s-alert' -import TopPageBtn from '../../atoms/buttons/toppage-btn' -import TopPageLogo from '../../atoms/toppage-logo' -import TopPagePlanet from '../../atoms/toppage-planet-img' -import ToppageFormContainer from '../../molecules/toppage-form-container' - -interface Props { - currentUser: any - pathname: any - history: any -} - -interface State { - isSignIn: boolean -} - -export default class TopPage extends React.Component { - constructor(props: any) { - super(props) - this.state = { - isSignIn: true, - } - } - - onClickTopPageButton() { - const { isSignIn } = this.state - if (isSignIn) { - this.setState({ isSignIn: false }) - } else if (!isSignIn) { - this.setState({ isSignIn: true }) - } else { - throw new Error('Sorry, something went wrong. Please reload.') // 暫定の例外処理 - } - } - - render() { - const { isSignIn } = this.state - const { history } = this.props - - return ( -
- - - - - -
- ) - } -} diff --git a/src/stylesheets/_button.scss b/src/stylesheets/_button.scss index 7354666..9571614 100644 --- a/src/stylesheets/_button.scss +++ b/src/stylesheets/_button.scss @@ -1,18 +1,5 @@ @import "initializer"; -.toppage-btn { - display: block; - position: fixed; - top: 10px; - right: 10px; - z-index: 1000; - cursor: pointer; - - .toppage-btn-img { - width: 170px; - } -} - .confirm-btn { display: block; width: 100px; diff --git a/src/stylesheets/top_page.scss b/src/stylesheets/top_page.scss deleted file mode 100644 index 120dd12..0000000 --- a/src/stylesheets/top_page.scss +++ /dev/null @@ -1,40 +0,0 @@ -.top-page-container { - height: 100%; - margin: 0 auto; - position: relative; - - .logo-container { - margin: 10px auto; - width: 100%; - text-align: center; - position: absolute; - bottom: 505px; - - .top-page-logo { - margin: 0 auto; - max-width: 550px; - width: 100%; - } - } - - .sign-form { - margin: 0 auto; - width: 100%; - position: absolute; - bottom: 365px; - } - - .planet-img-container { - margin: 0 auto; - width: 100%; - text-align: center; - position: absolute; - bottom: 0; - - .top-page-planet { - margin: auto; - max-width: 900px; - width: 90%; - } - } -} From c7f0d1aaf26ee36dbefdff41d7c8881a42e6cae7 Mon Sep 17 00:00:00 2001 From: YUKI SHIROTA <39118010+rechtburg@users.noreply.github.com> Date: Tue, 15 Oct 2019 11:34:18 +0900 Subject: [PATCH 03/16] Refactor/header (#11) * transform to styled-components * rename and refactor * formatted * add const Size * add script * delete no-use file * rename Header * fix husky * delete no-use --- package.json | 5 +- .../components/__stories__/Button.story.tsx | 14 +-- src/javascripts/components/atoms/Button.tsx | 22 ++-- src/javascripts/components/atoms/Image.tsx | 24 ++-- .../atoms/buttons/header-back-link.tsx | 11 -- .../atoms/buttons/header-left-link.tsx | 39 ------- .../atoms/buttons/header-right-link.tsx | 12 -- .../components/molecules/HeaderRightLinks.tsx | 88 ++++++++++++++ .../components/molecules/header-link-list.tsx | 66 ----------- .../components/organisms/header.tsx | 93 +++++++++++++-- .../components/pages/users/history-page.tsx | 2 +- .../components/pages/users/mypage.tsx | 2 +- .../components/pages/users/project-page.tsx | 2 +- .../components/pages/users/setting-page.tsx | 2 +- src/javascripts/constants/Size.ts | 2 + src/stylesheets/header.scss | 110 ------------------ 16 files changed, 206 insertions(+), 288 deletions(-) delete mode 100644 src/javascripts/components/atoms/buttons/header-back-link.tsx delete mode 100644 src/javascripts/components/atoms/buttons/header-left-link.tsx delete mode 100644 src/javascripts/components/atoms/buttons/header-right-link.tsx create mode 100644 src/javascripts/components/molecules/HeaderRightLinks.tsx delete mode 100644 src/javascripts/components/molecules/header-link-list.tsx create mode 100644 src/javascripts/constants/Size.ts delete mode 100644 src/stylesheets/header.scss diff --git a/package.json b/package.json index 41745cf..1d076f0 100644 --- a/package.json +++ b/package.json @@ -9,13 +9,14 @@ "release": "webpack --mode production --config webpack.config.js", "watch": "webpack-dev-server --mode development --history-api-fallback", "lint": "yarn tslint ./src/**/*.{ts,tsx}", - "fix": "yarn tslint --fix ./src/javascripts/**/*.{ts,tsx}", + "fix": "tslint --fix", + "fix:all": "tslint --fix ./src/javascripts/**/*.{ts,tsx}", "storybook": "start-storybook -p 6006", "test": "jest" }, "husky": { "hooks": { - "precommit": "lint-staged" + "pre-commit": "lint-staged" } }, "lint-staged": { diff --git a/src/javascripts/components/__stories__/Button.story.tsx b/src/javascripts/components/__stories__/Button.story.tsx index 6484d37..5e69d9a 100644 --- a/src/javascripts/components/__stories__/Button.story.tsx +++ b/src/javascripts/components/__stories__/Button.story.tsx @@ -1,10 +1,8 @@ -import { withKnobs } from "@storybook/addon-knobs"; -import { storiesOf } from "@storybook/react"; -import * as React from "react"; -import Button from "../atoms/Button"; +import { withKnobs } from '@storybook/addon-knobs' +import { storiesOf } from '@storybook/react' +import * as React from 'react' +import Button from '../atoms/Button' -storiesOf("Atoms/Button", module) +storiesOf('Atoms/Button', module) .addDecorator(withKnobs) - .add("Default", () => ( - - )); + .add('Default', () => ) diff --git a/src/javascripts/components/atoms/Button.tsx b/src/javascripts/components/atoms/Button.tsx index b52b521..f5acc50 100644 --- a/src/javascripts/components/atoms/Button.tsx +++ b/src/javascripts/components/atoms/Button.tsx @@ -1,17 +1,15 @@ -import styled from "@emotion/styled"; -import * as React from "react"; +import styled from '@emotion/styled' +import * as React from 'react' interface Props extends React.Attributes { - children?: React.ReactNode; - className?: string; - disabled?: boolean; - onClick?: React.MouseEventHandler; + children?: React.ReactNode + className?: string + disabled?: boolean + onClick?: React.MouseEventHandler } -function Button({...props}: Props) { - return ( - - ) +function Button({ ...props }: Props) { + return } const Root = styled.span` @@ -23,6 +21,6 @@ const Root = styled.span` transition: min-width 150ms ease-in-out 0ms, height 150ms ease-in-out 0ms, padding 150ms ease-in-out 0ms, background-color 150ms ease-in-out 0ms, border-color 150ms ease-in-out 0ms; -`; +` -export default Button; +export default Button diff --git a/src/javascripts/components/atoms/Image.tsx b/src/javascripts/components/atoms/Image.tsx index 805dcea..8699201 100644 --- a/src/javascripts/components/atoms/Image.tsx +++ b/src/javascripts/components/atoms/Image.tsx @@ -1,21 +1,15 @@ -import * as React from "react"; +import * as React from 'react' interface Props { - className?: string; - src: string; - alt: string; - height?: string; - width?: string; + className?: string + src: string + alt: string + height?: string + width?: string } const Image: React.FC = ({ className, src, alt, height, width }) => ( - {alt} -); + {alt} +) -export default Image; +export default Image diff --git a/src/javascripts/components/atoms/buttons/header-back-link.tsx b/src/javascripts/components/atoms/buttons/header-back-link.tsx deleted file mode 100644 index 2c7fd0d..0000000 --- a/src/javascripts/components/atoms/buttons/header-back-link.tsx +++ /dev/null @@ -1,11 +0,0 @@ -import * as React from 'react' -import { HeaderIcons } from '../../../constants/images' - -const HeaderBackLink = ({ className, onClick, label }: any) => ( - - {label} - - -) - -export default HeaderBackLink diff --git a/src/javascripts/components/atoms/buttons/header-left-link.tsx b/src/javascripts/components/atoms/buttons/header-left-link.tsx deleted file mode 100644 index 785dc38..0000000 --- a/src/javascripts/components/atoms/buttons/header-left-link.tsx +++ /dev/null @@ -1,39 +0,0 @@ -import * as React from 'react' -import classNames from 'classnames' -import UserImg from '../user-img' -import UserName from '../user-name' - -interface Props { - pathname: any - currentUser: any - history: any -} - -class HeaderLeftLink extends React.Component { - onClickHeaderLeft() { - this.props.history.push(`/users/${this.props.currentUser.id}`) - } - - render() { - const { pathname, currentUser } = this.props - const rootPath = `/users/${currentUser.id}` - - // mypage以外で表示(show: true), 例外判定('hidden': pathname !== rootpathなど)すると404notfound等を拾えない - const headerleftClasses = classNames({ - 'user-info': true, - 'show-left': - /^\/users\/[1-9]\d*\/projects$/.test(pathname) || - pathname === `${rootPath}/history` || - pathname === `${rootPath}/edit`, - }) - - return ( - - - - - ) - } -} - -export default HeaderLeftLink diff --git a/src/javascripts/components/atoms/buttons/header-right-link.tsx b/src/javascripts/components/atoms/buttons/header-right-link.tsx deleted file mode 100644 index bcbdb93..0000000 --- a/src/javascripts/components/atoms/buttons/header-right-link.tsx +++ /dev/null @@ -1,12 +0,0 @@ -import * as React from 'react' -import { Link } from 'react-router-dom' -import { HeaderIcons } from '../../../constants/images' - -const HeaderRightLink = ({ className, toPath, label }: any) => ( - - {label} - - -) - -export default HeaderRightLink diff --git a/src/javascripts/components/molecules/HeaderRightLinks.tsx b/src/javascripts/components/molecules/HeaderRightLinks.tsx new file mode 100644 index 0000000..d90cbcf --- /dev/null +++ b/src/javascripts/components/molecules/HeaderRightLinks.tsx @@ -0,0 +1,88 @@ +import styled from '@emotion/styled' +import * as React from 'react' + +import * as Size from '../../constants/Size' +import Button from '../atoms/Button' +import Img from '../atoms/Image' +import { HeaderIcons } from '../../constants/images' + +interface Props { + currentUser: any + pathname: any + history: any +} + +const HeaderRightLinks: React.FC = ({ currentUser, history, pathname }) => { + function onLinkButtonClick(path: string): void { + history.push(path) + } + + function onBackButtonClick() { + history.goBack() + } + + const rootPath = `/users/${currentUser.id}` + // mypage, project-page, setting-pageのみで表示(show-right: true) + const isHistoryButtonShow = + pathname === `${rootPath}` || + /^\/users\/[1-9]\d*\/projects$/.test(pathname) || + pathname === `${rootPath}/edit` + + // mypage, project-page, history-pageのみで表示(show-right: true) + const isSettingButtonShow = + pathname === `${rootPath}` || + /^\/users\/[1-9]\d*\/projects$/.test(pathname) || + pathname === `${rootPath}/history` + + // setting-page, history-pageのみで表示(show-right: true) + const isBackButtonShow = pathname === `${rootPath}/history` || pathname === `${rootPath}/edit` + + return ( + + <_Link onClick={() => onLinkButtonClick(`${rootPath}/history`)} isShow={isHistoryButtonShow}> + HISTORY + + + <_Link onClick={() => onLinkButtonClick(`${rootPath}/edit`)} isShow={isSettingButtonShow}> + SETTING + + + <_Link onClick={() => onBackButtonClick} isShow={isBackButtonShow}> + BACK + + + + ) +} + +const Root = styled.div` + display: flex; + justify-content: flex-end; + flex-wrap: wrap; + height: ${Size.HeaderContainerHeight}; + cursor: pointer; + + position: fixed; + top: 20px; + right: 30px; +` + +const _Link = styled(Button)<{ isShow: boolean }>` + display: ${isShow => (isShow ? 'flex' : 'none')}; + justify-content: flex-end; + align-content: center; + width: ${Size.HeaderContainerWidth}; + color: #fff; + line-height: ${Size.HeaderContainerHeight}; + + &:link { + text-decoration: none; + } +` + +const Icon = styled(Img)` + display: block; + margin: 5px 0; +` + +export default HeaderRightLinks diff --git a/src/javascripts/components/molecules/header-link-list.tsx b/src/javascripts/components/molecules/header-link-list.tsx deleted file mode 100644 index b226f56..0000000 --- a/src/javascripts/components/molecules/header-link-list.tsx +++ /dev/null @@ -1,66 +0,0 @@ -import * as React from 'react' -import classNames from 'classnames' -import HeaderRightLink from '../atoms/buttons/header-right-link' -import HeaderBackLink from '../atoms/buttons/header-back-link' - -interface Props { - currentUser: any - pathname: any - history: any -} - -class HeaderRightLinkList extends React.Component { - onClickBackButton() { - this.props.history.goBack() - } - - render() { - const { pathname, currentUser } = this.props - const rootPath = `/users/${currentUser.id}` - // mypage, project-page, setting-pageのみで表示(show-right: true) - const historyButtonClasses = classNames({ - 'icon-container': true, - 'show-right': - pathname === `${rootPath}` || - /^\/users\/[1-9]\d*\/projects$/.test(pathname) || - pathname === `${rootPath}/edit`, - }) - - // mypage, project-page, history-pageのみで表示(show-right: true) - const settingButtonClasses = classNames({ - 'icon-container': true, - 'show-right': - pathname === `${rootPath}` || - /^\/users\/[1-9]\d*\/projects$/.test(pathname) || - pathname === `${rootPath}/history`, - }) - - // setting-page, history-pageのみで表示(show-right: true) - const backButtonClasses = classNames({ - 'back-icon-container': true, - 'show-right': pathname === `${rootPath}/history` || pathname === `${rootPath}/edit`, - }) - - return ( -
- - - -
- ) - } -} - -export default HeaderRightLinkList diff --git a/src/javascripts/components/organisms/header.tsx b/src/javascripts/components/organisms/header.tsx index aedeb57..8c6526a 100644 --- a/src/javascripts/components/organisms/header.tsx +++ b/src/javascripts/components/organisms/header.tsx @@ -1,12 +1,87 @@ +import styled from "@emotion/styled"; import * as React from 'react' -import HeaderLeftLink from '../atoms/buttons/header-left-link' -import HeaderRightLinkList from '../molecules/header-link-list' - -const Header = ({ currentUser, history, pathname }: any) => ( - -) + +import Img from "../atoms/Image"; +import HeaderRightLinks from '../molecules/HeaderRightLinks' + +interface Props extends React.Attributes { + currentUser: any; + history: any; + pathname: any; +} + +const Header:React.FC = ({ currentUser, history, pathname }) => { + const rootPath = `/users/${currentUser.id}` + const isLeftSideLinkShow = /^\/users\/[1-9]\d*\/projects$/.test(pathname) || + pathname === `${rootPath}/history` || + pathname === `${rootPath}/edit` + + function onLeftSideLinkClick() { + history.push(rootPath); + } + + return ( + + + {currentUser.name} + {currentUser.name} + + + + ) +} + +const Root = styled.div` + margin-top: 20px; + text-align: center; + font-size: 14px; + font-weight: lighter; + letter-spacing: 2px; + position: fixed; + top: 0; + right: 0; + z-index: 1000; +`; + +const LeftSideLink = styled.div<{isShow: boolean}>` + display: ${(isShow) => isShow ? "flex" : "none"}; + justify-content: flex-start; + flex-wrap: wrap; + align-items: center; + width: 300px; + color: #fff; + cursor: pointer; + + position: fixed; + top: 30px; + left: 100px; + + &:hover { + text-decoration: none; + } +`; + +const UserImg = styled.div` + width: 50px; + height: 50px; + margin: 0; + border: 1px solid #fff; + border-radius: 50%; + + img { + margin: 5px 0; + border-radius: 50%; + } +`; + +const UserName = styled.div` + margin-left: 10px; + text-align: left; + width: 100px; + color: #fff; + font-size: 18px; + font-weight: lighter; + letter-spacing: 5px; +`; export default Header diff --git a/src/javascripts/components/pages/users/history-page.tsx b/src/javascripts/components/pages/users/history-page.tsx index fe30be3..d0fc2ae 100644 --- a/src/javascripts/components/pages/users/history-page.tsx +++ b/src/javascripts/components/pages/users/history-page.tsx @@ -1,6 +1,6 @@ import * as React from 'react' import { connect } from 'react-redux' -import Header from '../../organisms/header' +import Header from '../../organisms/Header' import HistoryPageMain from '../../organisms/history-page-main' import Footer from '../../organisms/footer' diff --git a/src/javascripts/components/pages/users/mypage.tsx b/src/javascripts/components/pages/users/mypage.tsx index f417799..f5147ed 100644 --- a/src/javascripts/components/pages/users/mypage.tsx +++ b/src/javascripts/components/pages/users/mypage.tsx @@ -1,7 +1,7 @@ import * as React from 'react' import { connect } from 'react-redux' -import Header from '../../organisms/header' +import Header from '../../organisms/Header' import MyPageMain from '../../organisms/mypage-main' import Footer from '../../organisms/footer' diff --git a/src/javascripts/components/pages/users/project-page.tsx b/src/javascripts/components/pages/users/project-page.tsx index 7748de0..d1869f5 100644 --- a/src/javascripts/components/pages/users/project-page.tsx +++ b/src/javascripts/components/pages/users/project-page.tsx @@ -5,7 +5,7 @@ import { Redirect } from 'react-router-dom' import { fetchRevolvingAssignments } from '../../../actions/assignments' import { fetchRevolvingProjects, setDefaultProject } from '../../../actions/projects' -import Header from '../../organisms/header' +import Header from '../../organisms/Header' import ProjectPageMain from '../../organisms/project-page-main' import Footer from '../../organisms/footer' diff --git a/src/javascripts/components/pages/users/setting-page.tsx b/src/javascripts/components/pages/users/setting-page.tsx index 99690d9..c705183 100644 --- a/src/javascripts/components/pages/users/setting-page.tsx +++ b/src/javascripts/components/pages/users/setting-page.tsx @@ -1,6 +1,6 @@ import * as React from 'react' import { connect } from 'react-redux' -import Header from '../../organisms/header' +import Header from '../../organisms/Header' import SettingPageMain from '../../organisms/setting-page-main' import Footer from '../../organisms/footer' diff --git a/src/javascripts/constants/Size.ts b/src/javascripts/constants/Size.ts new file mode 100644 index 0000000..50c8931 --- /dev/null +++ b/src/javascripts/constants/Size.ts @@ -0,0 +1,2 @@ +export const HeaderContainerHeight = "60px" +export const HeaderContainerWidth = "130px" diff --git a/src/stylesheets/header.scss b/src/stylesheets/header.scss deleted file mode 100644 index 9eb7f42..0000000 --- a/src/stylesheets/header.scss +++ /dev/null @@ -1,110 +0,0 @@ -$container-width: 130px; -$container-height: 60px; - -#header { - margin-top: 20px; - text-align: center; - font-size: 14px; - font-weight: lighter; - letter-spacing: 2px; - position: fixed; - top: 0; - right: 0; - z-index: 1000; - - .user-info { - display: none; - justify-content: flex-start; - flex-wrap: wrap; - align-items: center; - width: 300px; - color: #fff; - cursor: pointer; - - position: fixed; - top: 30px; - left: 100px; - - .user-img-container { - width: 50px; - height: 50px; - margin: 0; - border: 1px solid #fff; - border-radius: 50%; - - .user-img { - width: 40px; - height: 40px; - margin: 5px 0; - border-radius: 50%; - } - } - .user-name { - margin-left: 10px; - text-align: left; - width: 100px; - color: #fff; - font-size: 18px; - font-weight: lighter; - letter-spacing: 5px; - } - - &:hover { - text-decoration: none; - } - } - .show-left { - display: flex; - } - .links-container { - display: flex; - justify-content: flex-end; - flex-wrap: wrap; - height: $container-height; - cursor: pointer; - - position: fixed; - top: 20px; - right: 30px; - - .icon-container { - display: none; - justify-content: flex-end; - align-content: center; - width: $container-width; - color: #fff; - line-height: $container-height; - - .icon { - display: block; - width: 50px; - height: 50px; - margin: 5px 0; - } - &:link { - text-decoration: none; - } - } - .back-icon-container { - display: none; - justify-content: flex-end; - align-content: center; - width: $container-width; - color: #fff; - line-height: $container-height; - - .icon { - display: block; - width: 50px; - height: 50px; - margin: 5px 0; - } - &:hover { - text-decoration: none; - } - } - .show-right { - display: flex; - } - } -} From 174f9d4a7c60476260b04ff59d8bf99d89efce56 Mon Sep 17 00:00:00 2001 From: YUKI SHIROTA <39118010+rechtburg@users.noreply.github.com> Date: Tue, 15 Oct 2019 12:07:29 +0900 Subject: [PATCH 04/16] Merge/master to refactor/expulse-stylesheet (#15) * Delete yarn lock * Remove yarn dependency * Feature -renew tsconfig & tslint (#14) * modify tsconfig and tslint * formatted --- package.json | 2 +- src/javascripts/actions/assignments.ts | 150 +- src/javascripts/actions/common.ts | 60 +- src/javascripts/actions/projects.ts | 151 +- src/javascripts/actions/subassignmnets.ts | 30 +- src/javascripts/actions/users.ts | 153 +- src/javascripts/app.tsx | 49 +- .../components/__stories__/Button.story.tsx | 12 +- src/javascripts/components/atoms/Button.tsx | 18 +- src/javascripts/components/atoms/Image.tsx | 24 +- .../components/atoms/buttons/action-btn.tsx | 20 +- .../components/atoms/buttons/confirm-btn.tsx | 6 +- .../atoms/buttons/form-submit-btn.tsx | 6 +- .../atoms/buttons/planet-holder-opener.tsx | 53 +- .../atoms/buttons/select-user-img-btn.tsx | 16 +- .../components/atoms/buttons/sign-out-btn.tsx | 23 +- .../components/atoms/check-mark.tsx | 6 +- .../components/atoms/fixed-star-in-list.tsx | 8 +- .../components/atoms/input-field.tsx | 65 +- .../components/atoms/mypage-tutorial.tsx | 8 +- .../components/atoms/planet-img.tsx | 10 +- .../atoms/popup-assignment-card.tsx | 20 +- .../components/atoms/popup-box.tsx | 20 +- .../components/atoms/popup-project-card.tsx | 16 +- .../components/atoms/projectpage-tutorial.tsx | 8 +- .../components/atoms/select-field.tsx | 25 +- src/javascripts/components/atoms/user-img.tsx | 6 +- .../components/atoms/user-name.tsx | 8 +- .../components/atoms/welcome-user.tsx | 6 +- .../components/index/guest-only.tsx | 16 +- src/javascripts/components/index/main.tsx | 20 +- .../components/index/user-only.tsx | 38 +- .../components/molecules/HeaderRightLinks.tsx | 77 +- .../components/molecules/blackhole.tsx | 174 +- .../components/molecules/circle-orbit.tsx | 175 +- .../components/molecules/fixed-star.tsx | 17 +- .../molecules/footer-action-btn-list.tsx | 90 +- .../molecules/forms/assignment-form.tsx | 110 +- .../molecules/forms/profile-update-form.tsx | 93 +- .../molecules/forms/project-form.tsx | 78 +- .../molecules/forms/signin-form.tsx | 58 +- .../molecules/forms/signup-form.tsx | 91 +- .../molecules/forms/subassignmnet-form.tsx | 93 +- .../components/molecules/history-canvas.tsx | 154 +- .../components/molecules/meteorite.tsx | 386 +- .../components/molecules/missile.tsx | 392 +- .../components/molecules/mypage-orbit.tsx | 126 +- .../components/molecules/mypage-user-info.tsx | 10 +- .../molecules/planet-holder-list.tsx | 22 +- .../components/molecules/planet-holder.tsx | 10 +- .../components/molecules/planet-list.tsx | 32 +- .../components/molecules/planet.tsx | 118 +- .../components/molecules/project-bar.tsx | 39 +- .../molecules/project-page-link.tsx | 44 +- .../components/molecules/revival.tsx | 79 +- .../molecules/stored-planet-list.tsx | 99 +- .../components/molecules/user-img-updater.tsx | 10 +- .../components/organisms/footer.tsx | 50 +- .../components/organisms/header.tsx | 40 +- .../organisms/history-page-main.tsx | 23 +- .../organisms/modals/confirm-modal.tsx | 99 +- .../organisms/modals/form-modal.tsx | 106 +- .../organisms/modals/tutorial-modal.tsx | 98 +- .../components/organisms/mypage-main.tsx | 34 +- .../organisms/project-page-main.tsx | 18 +- .../organisms/setting-page-main.tsx | 23 +- .../components/pages/guests/TopPage.tsx | 104 + .../components/pages/users/history-page.tsx | 40 +- .../components/pages/users/mypage.tsx | 44 +- .../components/pages/users/project-page.tsx | 86 +- .../components/pages/users/setting-page.tsx | 38 +- src/javascripts/constants/Size.ts | 4 +- src/javascripts/constants/action-types.ts | 6 +- src/javascripts/constants/images.ts | 86 +- src/javascripts/constants/static-types.ts | 16 +- src/javascripts/constants/url.ts | 2 +- src/javascripts/reducers/assignments.ts | 92 +- src/javascripts/reducers/common.ts | 33 +- src/javascripts/reducers/current-user.ts | 20 +- src/javascripts/reducers/index.ts | 20 +- src/javascripts/reducers/projects.ts | 61 +- tsconfig.json | 7 +- tslint.json | 16 +- yarn.lock | 8015 ----------------- 84 files changed, 2701 insertions(+), 10110 deletions(-) delete mode 100644 yarn.lock diff --git a/package.json b/package.json index 1d076f0..83fbe96 100644 --- a/package.json +++ b/package.json @@ -1,5 +1,5 @@ { - "name": "OrbitApiApp", + "name": "orbit-backend", "version": "1.0.0", "main": "index.js", "private": true, diff --git a/src/javascripts/actions/assignments.ts b/src/javascripts/actions/assignments.ts index e8217b7..d85477d 100644 --- a/src/javascripts/actions/assignments.ts +++ b/src/javascripts/actions/assignments.ts @@ -1,68 +1,68 @@ -import axios from 'axios' -import Alert from 'react-s-alert' -import { actionTypes } from '../constants/action-types' -import { BaseAction } from '../constants/static-types' -import { ROOT_URL } from '../constants/url' +import axios from "axios"; +import Alert from "react-s-alert"; +import { actionTypes } from "../constants/action-types"; +import { BaseAction } from "../constants/static-types"; +import { ROOT_URL } from "../constants/url"; // ------------------------------------------------------------------------------------- // Flash // ------------------------------------------------------------------------------------- function showSuccessFlash(successMessage: string) { Alert.success(successMessage, { - position: 'top-right', - effect: 'jelly', + position: "top-right", + effect: "jelly", timeout: 3000, - offset: 80, - }) + offset: 80 + }); } function showErrorFlash(errorMessage: string) { Alert.error(errorMessage, { - position: 'top-right', - effect: 'jelly', + position: "top-right", + effect: "jelly", timeout: 3000, - offset: 80, - }) + offset: 80 + }); } // ------------------------------------------------------------------------------------- // RevolvingAssignments // ------------------------------------------------------------------------------------- interface FetchRevolvingAssignmentsAction extends BaseAction { - type: string - payload: { revolvingAssignments: Object } + type: string; + payload: { revolvingAssignments: Object }; } interface CreateAssignmentAction extends BaseAction { - type: string - payload: { newAssignment: any } // newAssignment.idの型エラー回避のため一時的にanyに + type: string; + payload: { newAssignment: any }; // newAssignment.idの型エラー回避のため一時的にanyに } interface DestroyAssignmentAction extends BaseAction { - type: string - payload: { destroyedAssignment: any } + type: string; + payload: { destroyedAssignment: any }; } export type RevolvingAssignmentsAction = | FetchRevolvingAssignmentsAction | CreateAssignmentAction - | DestroyAssignmentAction + | DestroyAssignmentAction; export function fetchRevolvingAssignments( projectId: any ): Promise { return axios .get(`${ROOT_URL}/api/assignments/revolving`, { - headers: { Authorization: `Bearer ${sessionStorage.getItem('jwt')}` }, - params: { project_id: projectId }, + headers: { Authorization: `Bearer ${sessionStorage.getItem("jwt")}` }, + params: { project_id: projectId } }) .then(res => { return { type: actionTypes.FETCH_REVOLVING_ASSIGNMENTS, - payload: { revolvingAssignments: res.data }, - } + payload: { revolvingAssignments: res.data } + }; }) - .catch(() => showErrorFlash('Sorry, something went wrong. Please reload.')) + .catch(() => showErrorFlash("Sorry, something went wrong. Please reload.")); } export function createAssignment( @@ -75,9 +75,9 @@ export function createAssignment( projectId: any ): Promise { return axios({ - method: 'post', + method: "post", url: `${ROOT_URL}/api/assignments`, - headers: { Authorization: `Bearer ${sessionStorage.getItem('jwt')}` }, + headers: { Authorization: `Bearer ${sessionStorage.getItem("jwt")}` }, data: { assignment: { title, @@ -85,124 +85,132 @@ export function createAssignment( deadline, planet_type, planet_size, - orbit_pos, + orbit_pos }, - project_id: projectId, - }, + project_id: projectId + } }) .then(res => { if (res.status === 200) { - showSuccessFlash('Successfully created!') + showSuccessFlash("Successfully created!"); return { type: actionTypes.CREATE_ASSIGNMENT, - payload: { newAssignment: res.data }, - } + payload: { newAssignment: res.data } + }; } else if (res.status === 204) { - showErrorFlash('Unable to put 5 stars on an orbit...') + showErrorFlash("Unable to put 5 stars on an orbit..."); } }) - .catch(() => showErrorFlash('Sorry, something went wrong. Please reload.')) + .catch(() => showErrorFlash("Sorry, something went wrong. Please reload.")); } -export function destroyAssignment(assignmentId: any): Promise { +export function destroyAssignment( + assignmentId: any +): Promise { return axios({ - method: 'patch', + method: "patch", url: `${ROOT_URL}/api/assignments/${assignmentId}/destroy`, - headers: { Authorization: `Bearer ${sessionStorage.getItem('jwt')}` }, + headers: { Authorization: `Bearer ${sessionStorage.getItem("jwt")}` } }) .then(res => { - showSuccessFlash('Successfully destroyed!') + showSuccessFlash("Successfully destroyed!"); return { type: actionTypes.DESTROY_ASSIGNMENT, - payload: { destroyedAssignment: res.data }, - } + payload: { destroyedAssignment: res.data } + }; }) - .catch(() => showErrorFlash('Sorry, something went wrong. Please reload.')) + .catch(() => showErrorFlash("Sorry, something went wrong. Please reload.")); } // ------------------------------------------------------------------------------------- // SelectedAssignments // ------------------------------------------------------------------------------------- interface SelectAssignmentAction extends BaseAction { - type: string - payload: { assignmentId: number } // TODO: stringかも + type: string; + payload: { assignmentId: number }; // TODO: stringかも } interface DisselectAssignmentAction extends BaseAction { - type: string - payload: { assignmentId: number } // TODO: stringかも + type: string; + payload: { assignmentId: number }; // TODO: stringかも } interface ResetSelectedAssignment extends BaseAction { - type: string + type: string; } export type SelectedAssignmentsAction = | SelectAssignmentAction | DisselectAssignmentAction - | ResetSelectedAssignment + | ResetSelectedAssignment; export function selectAssignment(assignmentId: any): SelectAssignmentAction { return { type: actionTypes.SET_SELECTED_ASSIGNMENT, - payload: { assignmentId }, - } + payload: { assignmentId } + }; } -export function disselectAssignment(assignmentId: any): DisselectAssignmentAction { +export function disselectAssignment( + assignmentId: any +): DisselectAssignmentAction { return { type: actionTypes.REMOVE_SELECTED_ASSIGNMENT, - payload: { assignmentId }, - } + payload: { assignmentId } + }; } export function resetSelectedAssignment(): ResetSelectedAssignment { return { - type: actionTypes.RESET_SELECTED_ASSIGNMENT, - } + type: actionTypes.RESET_SELECTED_ASSIGNMENT + }; } // ------------------------------------------------------------------------------------- // DestroyedAssignments // ------------------------------------------------------------------------------------- interface FetchDestroyedAssignmentsAction extends BaseAction { - type: string - payload: { destroyedAssignments: Object } + type: string; + payload: { destroyedAssignments: Object }; } interface RestoreAssignmentAction extends BaseAction { - type: string - payload: { restoredAssignment: any } + type: string; + payload: { restoredAssignment: any }; } -export type DestroyedAssignmentsAction = FetchDestroyedAssignmentsAction | RestoreAssignmentAction +export type DestroyedAssignmentsAction = + | FetchDestroyedAssignmentsAction + | RestoreAssignmentAction; export function fetchDestroyedAssignments(): Promise { return axios .get(`${ROOT_URL}/api/assignments/destroyed`, { - headers: { Authorization: `Bearer ${sessionStorage.getItem('jwt')}` }, + headers: { Authorization: `Bearer ${sessionStorage.getItem("jwt")}` } }) .then(res => { return { type: actionTypes.FETCH_DESTROYED_ASSIGNMENTS, - payload: { destroyedAssignments: res.data }, - } + payload: { destroyedAssignments: res.data } + }; }) - .catch(() => showErrorFlash('Sorry, something went wrong. Please reload.')) + .catch(() => showErrorFlash("Sorry, something went wrong. Please reload.")); } -export function restoreAssignment(assignmentId: any): Promise { +export function restoreAssignment( + assignmentId: any +): Promise { return axios({ - method: 'patch', + method: "patch", url: `${ROOT_URL}/api/assignments/${assignmentId}/restore`, - headers: { Authorization: `Bearer ${sessionStorage.getItem('jwt')}` }, + headers: { Authorization: `Bearer ${sessionStorage.getItem("jwt")}` } }) .then(res => { - showSuccessFlash('Successfully restored!') + showSuccessFlash("Successfully restored!"); return { type: actionTypes.RESTORE_ASSIGNMENT, - payload: { restoredAssignment: res.data }, - } + payload: { restoredAssignment: res.data } + }; }) - .catch(() => showErrorFlash('Sorry, something went wrong. Please reload.')) + .catch(() => showErrorFlash("Sorry, something went wrong. Please reload.")); } diff --git a/src/javascripts/actions/common.ts b/src/javascripts/actions/common.ts index 2d88256..fb77550 100644 --- a/src/javascripts/actions/common.ts +++ b/src/javascripts/actions/common.ts @@ -1,89 +1,93 @@ -import { actionTypes } from '../constants/action-types' -import { BaseAction } from '../constants/static-types' +import { actionTypes } from "../constants/action-types"; +import { BaseAction } from "../constants/static-types"; // ------------------------------------------------------------------------------------- // SelectedStar // ------------------------------------------------------------------------------------- interface SetSelectedStarAction extends BaseAction { - type: string - payload: { star_type: number } // TODO: stringかも + type: string; + payload: { star_type: number }; // TODO: stringかも } interface ResetSelectedStarAction extends BaseAction { - type: string + type: string; } -export type SelectedStarAction = SetSelectedStarAction | ResetSelectedStarAction +export type SelectedStarAction = + | SetSelectedStarAction + | ResetSelectedStarAction; export function setSelectedStar(star_type: any): SetSelectedStarAction { return { type: actionTypes.SET_SELECTED_STAR, - payload: { star_type }, - } + payload: { star_type } + }; } export function resetSelectedStar(status: any): ResetSelectedStarAction { return { type: actionTypes.RESET_SELECTED_STAR, - payload: { status }, - } + payload: { status } + }; } // ------------------------------------------------------------------------------------- // IsDestroyIgnited // ------------------------------------------------------------------------------------- interface IgniteDestroyPlanetsAction extends BaseAction { - type: string - payload: { status: boolean } + type: string; + payload: { status: boolean }; } // TODO: 命名気持ち悪いかな interface ResetDestroyActionAction extends BaseAction { - type: string - payload: { status: string } + type: string; + payload: { status: string }; } -export type IsDestroyIgnitedAction = IgniteDestroyPlanetsAction | ResetDestroyActionAction +export type IsDestroyIgnitedAction = + | IgniteDestroyPlanetsAction + | ResetDestroyActionAction; export function setDestroyAction(status: any): IgniteDestroyPlanetsAction { return { type: actionTypes.SET_DESTROY_ACTION, - payload: { status }, - } + payload: { status } + }; } export function resetDestroyAction(): ResetDestroyActionAction { return { type: actionTypes.RESET_DESTROY_ACTION, - payload: { status }, - } + payload: { status } + }; } // ------------------------------------------------------------------------------------- // ModalOpen // ------------------------------------------------------------------------------------- interface SetModalStatusAction extends BaseAction { - type: string - payload: { status: boolean } + type: string; + payload: { status: boolean }; } interface ResetModalStatusAction extends BaseAction { - type: string - payload: { status: boolean } + type: string; + payload: { status: boolean }; } -export type ModalOpenAction = SetModalStatusAction | ResetModalStatusAction +export type ModalOpenAction = SetModalStatusAction | ResetModalStatusAction; export function setModalStatus(status: any): SetModalStatusAction { return { type: actionTypes.OPEN_MODAL, - payload: { status }, - } + payload: { status } + }; } export function resetModalStatus(status: any): ResetModalStatusAction { return { type: actionTypes.CLOSE_MODAL, - payload: { status }, - } + payload: { status } + }; } diff --git a/src/javascripts/actions/projects.ts b/src/javascripts/actions/projects.ts index 375482f..ee1cd70 100644 --- a/src/javascripts/actions/projects.ts +++ b/src/javascripts/actions/projects.ts @@ -1,65 +1,65 @@ -import axios from 'axios' -import Alert from 'react-s-alert' -import { actionTypes } from '../constants/action-types' -import { BaseAction } from '../constants/static-types' -import { ROOT_URL } from '../constants/url' +import axios from "axios"; +import Alert from "react-s-alert"; +import { actionTypes } from "../constants/action-types"; +import { BaseAction } from "../constants/static-types"; +import { ROOT_URL } from "../constants/url"; // ------------------------------------------------------------------------------------- // Flash // ------------------------------------------------------------------------------------- function showSuccessFlash(successMessage: string) { Alert.success(successMessage, { - position: 'top-right', - effect: 'jelly', + position: "top-right", + effect: "jelly", timeout: 3000, - offset: 80, - }) + offset: 80 + }); } function showErrorFlash(errorMessage: string) { Alert.error(errorMessage, { - position: 'top-right', - effect: 'jelly', + position: "top-right", + effect: "jelly", timeout: 3000, - offset: 80, - }) + offset: 80 + }); } // ------------------------------------------------------------------------------------- // RevolvingProjects // ------------------------------------------------------------------------------------- interface FetchRevolvingProjectsAction extends BaseAction { - type: string - payload: { currentUserAllProjects: Array } + type: string; + payload: { currentUserAllProjects: Array }; } interface CreateProjectAction extends BaseAction { - type: string - payload: { newProject: any } // newProject.idのところでエラーが起きてしまうので一旦any + type: string; + payload: { newProject: any }; // newProject.idのところでエラーが起きてしまうので一旦any } interface DestroyProjectAction extends BaseAction { - type: string - payload: { projectId: number } // TODO: stringかも + type: string; + payload: { projectId: number }; // TODO: stringかも } export type RevoivingProjectsAction = | FetchRevolvingProjectsAction | CreateProjectAction - | DestroyProjectAction + | DestroyProjectAction; export function fetchRevolvingProjects(): Promise { return axios .get(`${ROOT_URL}/api/projects/`, { - headers: { Authorization: `Bearer ${sessionStorage.getItem('jwt')}` }, + headers: { Authorization: `Bearer ${sessionStorage.getItem("jwt")}` } }) .then(res => { return { type: actionTypes.FETCH_REVOLVING_PROJECTS, - payload: { currentUserAllProjects: res.data }, - } + payload: { currentUserAllProjects: res.data } + }; }) - .catch(() => showErrorFlash('Sorry, something went wrong. Please reload.')) + .catch(() => showErrorFlash("Sorry, something went wrong. Please reload.")); } export function createProject( @@ -68,126 +68,137 @@ export function createProject( fixed_star_type: any ): Promise { return axios({ - method: 'post', + method: "post", url: `${ROOT_URL}/api/projects`, - headers: { Authorization: `Bearer ${sessionStorage.getItem('jwt')}` }, - data: { project: { title, description, fixed_star_type } }, + headers: { Authorization: `Bearer ${sessionStorage.getItem("jwt")}` }, + data: { project: { title, description, fixed_star_type } } }) .then(res => { if (res.status === 200) { - showSuccessFlash('Successfully created!') + showSuccessFlash("Successfully created!"); return { type: actionTypes.CREATE_PROJECT, - payload: { newProject: res.data }, - } + payload: { newProject: res.data } + }; } else if (res.status === 204) { - showErrorFlash('Unable to put 5 stars on an orbit...') + showErrorFlash("Unable to put 5 stars on an orbit..."); } }) - .catch(() => showErrorFlash('Sorry, something went wrong. Please reload.')) + .catch(() => showErrorFlash("Sorry, something went wrong. Please reload.")); } -export function destroyProject(projectId: any): Promise { +export function destroyProject( + projectId: any +): Promise { return axios({ - method: 'delete', + method: "delete", url: `${ROOT_URL}/api/projects/${projectId}`, - headers: { Authorization: `Bearer ${sessionStorage.getItem('jwt')}` }, + headers: { Authorization: `Bearer ${sessionStorage.getItem("jwt")}` } }) .then(() => { - showSuccessFlash('Successfully destroyed!') + showSuccessFlash("Successfully destroyed!"); return { type: actionTypes.DESTROY_PROJECT, - payload: { projectId }, - } + payload: { projectId } + }; }) - .catch(() => showErrorFlash('Sorry, something went wrong. Please reload.')) + .catch(() => showErrorFlash("Sorry, something went wrong. Please reload.")); } // ------------------------------------------------------------------------------------- // CurrentProject // ------------------------------------------------------------------------------------- interface SetCurrentProjectAction extends BaseAction { - type: string - payload: { currentProject: Object } + type: string; + payload: { currentProject: Object }; } interface SetDefaultProjectAction extends BaseAction { - type: string - payload: { currentProject: Object } + type: string; + payload: { currentProject: Object }; } interface ChangeCurrentProjectAction extends BaseAction { - type: string - payload: { currentProject: Object } + type: string; + payload: { currentProject: Object }; } export type CurrentProjectAction = | SetCurrentProjectAction | SetDefaultProjectAction - | ChangeCurrentProjectAction + | ChangeCurrentProjectAction; -export function setCurrentProject(currentProject: any, callback: any): SetCurrentProjectAction { - callback() +export function setCurrentProject( + currentProject: any, + callback: any +): SetCurrentProjectAction { + callback(); return { type: actionTypes.SET_CURRENT_PROJECT, - payload: { currentProject }, - } + payload: { currentProject } + }; } -export function setDefaultProject(defaultProject: any, callback: any): SetDefaultProjectAction { - callback(defaultProject.id) +export function setDefaultProject( + defaultProject: any, + callback: any +): SetDefaultProjectAction { + callback(defaultProject.id); return { type: actionTypes.SET_CURRENT_PROJECT, - payload: { currentProject: defaultProject }, - } + payload: { currentProject: defaultProject } + }; } -export function changeCurrentProject(newProject: any, callback: any): ChangeCurrentProjectAction { - callback() +export function changeCurrentProject( + newProject: any, + callback: any +): ChangeCurrentProjectAction { + callback(); return { type: actionTypes.SET_CURRENT_PROJECT, - payload: { currentProject: newProject }, - } + payload: { currentProject: newProject } + }; } // ------------------------------------------------------------------------------------- // SelectedProjects // ------------------------------------------------------------------------------------- interface SelectProjectAction extends BaseAction { - type: string - payload: { projectId: string } + type: string; + payload: { projectId: string }; } interface DisselectProjectAction extends BaseAction { - type: string - payload: { projectId: string } + type: string; + payload: { projectId: string }; } interface ResetSelectedProject extends BaseAction { - type: string + type: string; } export type SelectedProjectAction = | SelectProjectAction | DisselectProjectAction - | ResetSelectedProject + | ResetSelectedProject; export function selectProject(projectId: any): SelectProjectAction { return { type: actionTypes.SET_SELECTED_PROJECT, - payload: { projectId }, - } + payload: { projectId } + }; } export function disselectProject(projectId: any): DisselectProjectAction { return { type: actionTypes.REMOVE_SELECTED_PROJECT, - payload: { projectId }, - } + payload: { projectId } + }; } export function resetSelectedProject(): ResetSelectedProject { return { - type: actionTypes.RESET_SELECTED_PROJECT, - } + type: actionTypes.RESET_SELECTED_PROJECT + }; } diff --git a/src/javascripts/actions/subassignmnets.ts b/src/javascripts/actions/subassignmnets.ts index 81a26f0..e826716 100644 --- a/src/javascripts/actions/subassignmnets.ts +++ b/src/javascripts/actions/subassignmnets.ts @@ -1,14 +1,14 @@ -import axios from 'axios' -import { actionTypes } from '../constants/action-types' -import { BaseAction } from '../constants/static-types' -import { ROOT_URL } from '../constants/url' +import axios from "axios"; +import { actionTypes } from "../constants/action-types"; +import { BaseAction } from "../constants/static-types"; +import { ROOT_URL } from "../constants/url"; interface CreateSubAssignmentAction extends BaseAction { - type: string - payload: { newSubAssignment: Object } + type: string; + payload: { newSubAssignment: Object }; } -export type SubAssignmentAction = CreateSubAssignmentAction +export type SubAssignmentAction = CreateSubAssignmentAction; export function createSubAssignment( title: any, @@ -18,24 +18,24 @@ export function createSubAssignment( assignmentId: any ): Promise { return axios({ - method: 'post', + method: "post", url: `${ROOT_URL}/api/subassignments`, - headers: { Authorization: `Bearer ${sessionStorage.getItem('jwt')}` }, + headers: { Authorization: `Bearer ${sessionStorage.getItem("jwt")}` }, data: { sub_assignment: { title, description, deadline, - planet_type, + planet_type }, - assignment_id: assignmentId, - }, + assignment_id: assignmentId + } }) .then(res => { return { type: actionTypes.CREATE_SUBASSIGNMENT, - payload: { newSubAssignment: res.data }, - } + payload: { newSubAssignment: res.data } + }; }) - .catch(() => alert('Sorry, something went wrong. Please reload.')) + .catch(() => alert("Sorry, something went wrong. Please reload.")); } diff --git a/src/javascripts/actions/users.ts b/src/javascripts/actions/users.ts index a8600a2..6203298 100644 --- a/src/javascripts/actions/users.ts +++ b/src/javascripts/actions/users.ts @@ -1,64 +1,64 @@ -import axios from 'axios' -import Alert from 'react-s-alert' -import { actionTypes } from '../constants/action-types' -import { BaseAction } from '../constants/static-types' -import { ROOT_URL } from '../constants/url' +import axios from "axios"; +import Alert from "react-s-alert"; +import { actionTypes } from "../constants/action-types"; +import { BaseAction } from "../constants/static-types"; +import { ROOT_URL } from "../constants/url"; // ------------------------------------------------------------------------------------- // Flash // ------------------------------------------------------------------------------------- function showSuccessFlash(successMessage: string) { Alert.success(successMessage, { - position: 'top-right', - effect: 'jelly', + position: "top-right", + effect: "jelly", timeout: 3000, - offset: 80, - }) + offset: 80 + }); } function showErrorFlash(errorMessage: string) { Alert.error(errorMessage, { - position: 'top-right', - effect: 'jelly', + position: "top-right", + effect: "jelly", timeout: 3000, - offset: 80, - }) + offset: 80 + }); } // ------------------------------------------------------------------------------------- // CurrentUser // ------------------------------------------------------------------------------------- interface CreateUserAction extends BaseAction { - type: string - payload: { currentUser: Object } + type: string; + payload: { currentUser: Object }; } interface CreateSessionAction extends BaseAction { - type: string - payload: { currentUser: Object } + type: string; + payload: { currentUser: Object }; } interface FetchCurrentUserAction extends BaseAction { - type: string - payload: { currentUser: Object } + type: string; + payload: { currentUser: Object }; } interface ExpireCurrentUserAction extends BaseAction { - type: string + type: string; } interface RemoveFirstVisitFlagAction extends BaseAction { - type: string + type: string; } interface UpdateUserImgAction extends BaseAction { - type: string - payload: { newAvatarUrl: string } + type: string; + payload: { newAvatarUrl: string }; } interface UpdateProfileAction extends BaseAction { - type: string - payload: { updatedUser: Object } + type: string; + payload: { updatedUser: Object }; } export type CurrentUserAction = @@ -68,7 +68,7 @@ export type CurrentUserAction = | ExpireCurrentUserAction | RemoveFirstVisitFlagAction | UpdateUserImgAction - | UpdateProfileAction + | UpdateProfileAction; export function createUser( name: any, @@ -78,93 +78,104 @@ export function createUser( ): Promise { return axios .post(`${ROOT_URL}/api/signup`, { - user: { name, email, password, password_confirmation }, + user: { name, email, password, password_confirmation } }) .then(res => { return createSession(email, password).then(() => { return { type: actionTypes.SET_CURRENT_USER, - payload: { currentUser: res.data }, - } - }) + payload: { currentUser: res.data } + }; + }); }) - .catch(() => showErrorFlash(`Sorry, something went wrong. Please reload.`)) + .catch(() => showErrorFlash(`Sorry, something went wrong. Please reload.`)); } -export function createSession(email: any, password: any): Promise { +export function createSession( + email: any, + password: any +): Promise { return axios .post(`${ROOT_URL}/api/user_token`, { - auth: { email: email, password: password }, + auth: { email: email, password: password } }) .then(res => { - sessionStorage.setItem('jwt', res.data.jwt.token) - setTimeout(() => showSuccessFlash('Successfully signed in!'), 100) - const user: Object = res.data.signinUser + sessionStorage.setItem("jwt", res.data.jwt.token); + setTimeout(() => showSuccessFlash("Successfully signed in!"), 100); + const user: Object = res.data.signinUser; return { type: actionTypes.SET_CURRENT_USER, - payload: { currentUser: user }, - } + payload: { currentUser: user } + }; }) - .catch(() => showErrorFlash('Sorry, something went wrong. Please reload.')) + .catch(() => showErrorFlash("Sorry, something went wrong. Please reload.")); } export function fetchCurrentUser(): Promise { return axios .get(`${ROOT_URL}/api/current_user`, { - headers: { Authorization: `Bearer ${sessionStorage.getItem('jwt')}` }, + headers: { Authorization: `Bearer ${sessionStorage.getItem("jwt")}` } }) .then(res => { return { type: actionTypes.SET_CURRENT_USER, - payload: { currentUser: res.data }, - } + payload: { currentUser: res.data } + }; }) - .catch(() => showErrorFlash('Sorry, something went wrong. Please reload.')) + .catch(() => showErrorFlash("Sorry, something went wrong. Please reload.")); } export function expireCurrentUser(callback: any): ExpireCurrentUserAction { - sessionStorage.removeItem('jwt') - callback() - setTimeout(() => showSuccessFlash('Successfully signed out.'), 100) - return { type: actionTypes.EXPIRE_CURRENT_USER } + sessionStorage.removeItem("jwt"); + callback(); + setTimeout(() => showSuccessFlash("Successfully signed out."), 100); + return { type: actionTypes.EXPIRE_CURRENT_USER }; } -export function removeFirstVisitFlag(currentUser: any): Promise { - const { name, email } = currentUser +export function removeFirstVisitFlag( + currentUser: any +): Promise { + const { name, email } = currentUser; return axios({ - method: 'patch', + method: "patch", url: `${ROOT_URL}/api/users/remove_flag`, data: { user: { name, email } }, - headers: { Authorization: `Bearer ${sessionStorage.getItem('jwt')}` }, + headers: { Authorization: `Bearer ${sessionStorage.getItem("jwt")}` } }) .then(res => { return { type: actionTypes.REMOVE_FIRST_VISIT_FLAG, - payload: { currentUser: res.data }, - } + payload: { currentUser: res.data } + }; }) - .catch(() => showErrorFlash('Sorry, something went wrong. Please reload and try it again.')) -} - -export function updateUserImg(newAvatar: any): Promise { - let avatarFile = new FormData() - avatarFile.append('avatar', newAvatar, newAvatar.name) + .catch(() => + showErrorFlash( + "Sorry, something went wrong. Please reload and try it again." + ) + ); +} + +export function updateUserImg( + newAvatar: any +): Promise { + let avatarFile = new FormData(); + avatarFile.append("avatar", newAvatar, newAvatar.name); return axios({ - method: 'post', + method: "post", url: `${ROOT_URL}/api/users/update_avatar`, data: avatarFile, headers: { - 'Content-Type': 'multipart/form-data', - Authorization: `Bearer ${sessionStorage.getItem('jwt')}`, - }, + "Content-Type": "multipart/form-data", + Authorization: `Bearer ${sessionStorage.getItem("jwt")}` + } }) .then(res => { return { type: actionTypes.UPDATE_AVATAR, - payload: { newAvatarUrl: res.data }, - } + payload: { newAvatarUrl: res.data } + }; }) - .catch(error => showErrorFlash(error)) + .catch(error => showErrorFlash(error)); } export function updateProfile( @@ -174,16 +185,16 @@ export function updateProfile( password_confirmation: any ): Promise { return axios({ - method: 'patch', + method: "patch", url: `${ROOT_URL}/api/users/update_profile`, data: { user: { name, email, password, password_confirmation } }, - headers: { Authorization: `Bearer ${sessionStorage.getItem('jwt')}` }, + headers: { Authorization: `Bearer ${sessionStorage.getItem("jwt")}` } }) .then(res => { return { type: actionTypes.UPDATE_PROFILE, - payload: { updatedUser: res.data }, - } + payload: { updatedUser: res.data } + }; }) - .catch(() => showErrorFlash('Sorry, something went wrong. Please reload.')) + .catch(() => showErrorFlash("Sorry, something went wrong. Please reload.")); } diff --git a/src/javascripts/app.tsx b/src/javascripts/app.tsx index 11d9f7d..bf8e017 100644 --- a/src/javascripts/app.tsx +++ b/src/javascripts/app.tsx @@ -1,25 +1,30 @@ -import * as React from 'react' -import ReactDOM from 'react-dom' -import { Provider } from 'react-redux' -import { createStore, applyMiddleware } from 'redux' -import { BrowserRouter as Router, Route, Switch, Redirect } from 'react-router-dom' -import promise from 'redux-promise' -import reducers from './reducers' -import Main from './components/index/main' -import UserOnly from './components/index/user-only' -import GuestOnly from './components/index/guest-only' +import * as React from "react"; +import ReactDOM from "react-dom"; +import { Provider } from "react-redux"; +import { createStore, applyMiddleware } from "redux"; +import { + BrowserRouter as Router, + Route, + Switch, + Redirect +} from "react-router-dom"; +import promise from "redux-promise"; +import reducers from "./reducers"; +import Main from "./components/index/main"; +import UserOnly from "./components/index/user-only"; +import GuestOnly from "./components/index/guest-only"; -import '../stylesheets/common.scss' -import '../stylesheets/form_field.scss' -import '../stylesheets/top_page.scss' -import '../stylesheets/page_container.scss' -import '../stylesheets/header.scss' -import '../stylesheets/footer.scss' -import '../stylesheets/history_page.scss' -import '../stylesheets/setting_page.scss' -import '../stylesheets/flash.scss' +import "../stylesheets/common.scss"; +import "../stylesheets/form_field.scss"; +import "../stylesheets/top_page.scss"; +import "../stylesheets/page_container.scss"; +import "../stylesheets/header.scss"; +import "../stylesheets/footer.scss"; +import "../stylesheets/history_page.scss"; +import "../stylesheets/setting_page.scss"; +import "../stylesheets/flash.scss"; -const createStoreWithMiddleware: any = applyMiddleware(promise)(createStore) +const createStoreWithMiddleware: any = applyMiddleware(promise)(createStore); ReactDOM.render( @@ -34,5 +39,5 @@ ReactDOM.render( , - document.getElementById('app') -) + document.getElementById("app") +); diff --git a/src/javascripts/components/__stories__/Button.story.tsx b/src/javascripts/components/__stories__/Button.story.tsx index 5e69d9a..44588cc 100644 --- a/src/javascripts/components/__stories__/Button.story.tsx +++ b/src/javascripts/components/__stories__/Button.story.tsx @@ -1,8 +1,8 @@ -import { withKnobs } from '@storybook/addon-knobs' -import { storiesOf } from '@storybook/react' -import * as React from 'react' -import Button from '../atoms/Button' +import { withKnobs } from "@storybook/addon-knobs"; +import { storiesOf } from "@storybook/react"; +import * as React from "react"; +import Button from "../atoms/Button"; -storiesOf('Atoms/Button', module) +storiesOf("Atoms/Button", module) .addDecorator(withKnobs) - .add('Default', () => ) + .add("Default", () => ); diff --git a/src/javascripts/components/atoms/Button.tsx b/src/javascripts/components/atoms/Button.tsx index f5acc50..8ca7384 100644 --- a/src/javascripts/components/atoms/Button.tsx +++ b/src/javascripts/components/atoms/Button.tsx @@ -1,15 +1,15 @@ -import styled from '@emotion/styled' -import * as React from 'react' +import styled from "@emotion/styled"; +import * as React from "react"; interface Props extends React.Attributes { - children?: React.ReactNode - className?: string - disabled?: boolean - onClick?: React.MouseEventHandler + children?: React.ReactNode; + className?: string; + disabled?: boolean; + onClick?: React.MouseEventHandler; } function Button({ ...props }: Props) { - return + return ; } const Root = styled.span` @@ -21,6 +21,6 @@ const Root = styled.span` transition: min-width 150ms ease-in-out 0ms, height 150ms ease-in-out 0ms, padding 150ms ease-in-out 0ms, background-color 150ms ease-in-out 0ms, border-color 150ms ease-in-out 0ms; -` +`; -export default Button +export default Button; diff --git a/src/javascripts/components/atoms/Image.tsx b/src/javascripts/components/atoms/Image.tsx index 8699201..805dcea 100644 --- a/src/javascripts/components/atoms/Image.tsx +++ b/src/javascripts/components/atoms/Image.tsx @@ -1,15 +1,21 @@ -import * as React from 'react' +import * as React from "react"; interface Props { - className?: string - src: string - alt: string - height?: string - width?: string + className?: string; + src: string; + alt: string; + height?: string; + width?: string; } const Image: React.FC = ({ className, src, alt, height, width }) => ( - {alt} -) + {alt} +); -export default Image +export default Image; diff --git a/src/javascripts/components/atoms/buttons/action-btn.tsx b/src/javascripts/components/atoms/buttons/action-btn.tsx index 440d47c..1e08275 100644 --- a/src/javascripts/components/atoms/buttons/action-btn.tsx +++ b/src/javascripts/components/atoms/buttons/action-btn.tsx @@ -1,17 +1,21 @@ -import * as React from 'react' +import * as React from "react"; interface ActionBtnProps { - icon: string - actionBtnClass: string - onClick: () => any + icon: string; + actionBtnClass: string; + onClick: () => any; } -const ActionBtn: React.SFC = ({ icon, actionBtnClass, onClick }: any) => { +const ActionBtn: React.SFC = ({ + icon, + actionBtnClass, + onClick +}: any) => { return (
  • - ) -} + ); +}; -export default ActionBtn +export default ActionBtn; diff --git a/src/javascripts/components/atoms/buttons/confirm-btn.tsx b/src/javascripts/components/atoms/buttons/confirm-btn.tsx index 3ff9a7b..8b19b2f 100644 --- a/src/javascripts/components/atoms/buttons/confirm-btn.tsx +++ b/src/javascripts/components/atoms/buttons/confirm-btn.tsx @@ -1,9 +1,9 @@ -import * as React from 'react' +import * as React from "react"; const ConfirmBtn: any = ({ message, onClick }: any) => ( -) +); -export default ConfirmBtn +export default ConfirmBtn; diff --git a/src/javascripts/components/atoms/buttons/form-submit-btn.tsx b/src/javascripts/components/atoms/buttons/form-submit-btn.tsx index 87442b4..113f6ba 100644 --- a/src/javascripts/components/atoms/buttons/form-submit-btn.tsx +++ b/src/javascripts/components/atoms/buttons/form-submit-btn.tsx @@ -1,9 +1,9 @@ -import * as React from 'react' +import * as React from "react"; const FormSubmitBtn = ({ label, isSubmit }: any) => ( -) +); -export default FormSubmitBtn +export default FormSubmitBtn; diff --git a/src/javascripts/components/atoms/buttons/planet-holder-opener.tsx b/src/javascripts/components/atoms/buttons/planet-holder-opener.tsx index e0434e4..709d19b 100644 --- a/src/javascripts/components/atoms/buttons/planet-holder-opener.tsx +++ b/src/javascripts/components/atoms/buttons/planet-holder-opener.tsx @@ -1,49 +1,56 @@ -import * as React from 'react' -import classNames from 'classnames' -import { ImgHolderOpen } from '../../../constants/images' +import * as React from "react"; +import classNames from "classnames"; +import { ImgHolderOpen } from "../../../constants/images"; interface Props { - currentUser: any - pathname: any + currentUser: any; + pathname: any; } class PlanetHolderOpener extends React.Component { onClickOpenPlanetHolder() { - const target_class: any = document.getElementsByClassName('open-planet-holder') - const planet_list: any = document.getElementById('planet-list') + const target_class: any = document.getElementsByClassName( + "open-planet-holder" + ); + const planet_list: any = document.getElementById("planet-list"); // const planet_holder = document.getElementById("planet-holder") // メニュー表示/非表示 - if (target_class[0].classList.contains('click-rotate')) { - target_class[0].classList.remove('click-rotate') - planet_list.classList.remove('is-show') - planet_list.style.display = 'none' + if (target_class[0].classList.contains("click-rotate")) { + target_class[0].classList.remove("click-rotate"); + planet_list.classList.remove("is-show"); + planet_list.style.display = "none"; // planet_holder.classList.remove('holder-border'); } else { - target_class[0].classList.add('click-rotate') - planet_list.classList.add('is-show') - planet_list.style.display = '' - planet_list.style.width = '300px' + target_class[0].classList.add("click-rotate"); + planet_list.classList.add("is-show"); + planet_list.style.display = ""; + planet_list.style.width = "300px"; // planet_holder.classList.add('holder-border'); } } render() { - const { currentUser, pathname } = this.props + const { currentUser, pathname } = this.props; // 一箇所でしか使ってないけど他のコンポーネントと記法統一して見やすく - const rootPath = `/users/${currentUser.id}` + const rootPath = `/users/${currentUser.id}`; const planetHolderClasses = classNames({ - 'open-planet-holder': true, - 'holder-show': pathname === `${rootPath}` || /^\/users\/[1-9]\d*\/projects$/.test(pathname), - }) + "open-planet-holder": true, + "holder-show": + pathname === `${rootPath}` || + /^\/users\/[1-9]\d*\/projects$/.test(pathname) + }); return ( -
    +
    - ) + ); } } -export default PlanetHolderOpener +export default PlanetHolderOpener; diff --git a/src/javascripts/components/atoms/buttons/select-user-img-btn.tsx b/src/javascripts/components/atoms/buttons/select-user-img-btn.tsx index ed21fb3..4599552 100644 --- a/src/javascripts/components/atoms/buttons/select-user-img-btn.tsx +++ b/src/javascripts/components/atoms/buttons/select-user-img-btn.tsx @@ -1,15 +1,15 @@ -import * as React from 'react' -import { connect } from 'react-redux' -import { updateUserImg } from '../../../actions/users' +import * as React from "react"; +import { connect } from "react-redux"; +import { updateUserImg } from "../../../actions/users"; interface Props { - updateUserImg: any + updateUserImg: any; } class SelectUserImgBtn extends React.Component { onSelectUserImg(e: any) { - if (window.confirm('アイコンを本当に変更しますか?')) { - this.props.updateUserImg(e.target.files[0]) + if (window.confirm("アイコンを本当に変更しますか?")) { + this.props.updateUserImg(e.target.files[0]); } } @@ -25,11 +25,11 @@ class SelectUserImgBtn extends React.Component { onChange={this.onSelectUserImg.bind(this)} /> - ) + ); } } export default connect( null, { updateUserImg } -)(SelectUserImgBtn) +)(SelectUserImgBtn); diff --git a/src/javascripts/components/atoms/buttons/sign-out-btn.tsx b/src/javascripts/components/atoms/buttons/sign-out-btn.tsx index 7628e33..26a6702 100644 --- a/src/javascripts/components/atoms/buttons/sign-out-btn.tsx +++ b/src/javascripts/components/atoms/buttons/sign-out-btn.tsx @@ -1,29 +1,32 @@ -import * as React from 'react' -import { connect } from 'react-redux' -import { expireCurrentUser } from '../../../actions/users' +import * as React from "react"; +import { connect } from "react-redux"; +import { expireCurrentUser } from "../../../actions/users"; interface Props { - history: any - expireCurrentUser: any + history: any; + expireCurrentUser: any; } class SignOutBtn extends React.Component { onClickSignOutButton() { - if (window.confirm('サインアウトしますか?')) { - this.props.expireCurrentUser(() => this.props.history.push('/')) + if (window.confirm("サインアウトしますか?")) { + this.props.expireCurrentUser(() => this.props.history.push("/")); } } render() { return ( - - ) + ); } } export default connect( null, { expireCurrentUser } -)(SignOutBtn) +)(SignOutBtn); diff --git a/src/javascripts/components/atoms/check-mark.tsx b/src/javascripts/components/atoms/check-mark.tsx index 1f8c7f0..a71a53d 100644 --- a/src/javascripts/components/atoms/check-mark.tsx +++ b/src/javascripts/components/atoms/check-mark.tsx @@ -1,9 +1,9 @@ -import * as React from 'react' +import * as React from "react"; const CheckMark: React.SFC<{}> = () => (
    -) +); -export default CheckMark +export default CheckMark; diff --git a/src/javascripts/components/atoms/fixed-star-in-list.tsx b/src/javascripts/components/atoms/fixed-star-in-list.tsx index 4744b39..70cbc85 100644 --- a/src/javascripts/components/atoms/fixed-star-in-list.tsx +++ b/src/javascripts/components/atoms/fixed-star-in-list.tsx @@ -1,10 +1,10 @@ -import * as React from 'react' -import { PlanetImgs } from '../../constants/images' +import * as React from "react"; +import { PlanetImgs } from "../../constants/images"; const FixedStarInList = ({ project, className, onClick }: any) => (
  • -) +); -export default FixedStarInList +export default FixedStarInList; diff --git a/src/javascripts/components/atoms/input-field.tsx b/src/javascripts/components/atoms/input-field.tsx index a46bf71..fb49849 100644 --- a/src/javascripts/components/atoms/input-field.tsx +++ b/src/javascripts/components/atoms/input-field.tsx @@ -1,15 +1,15 @@ -import * as React from 'react' -import classNames from 'classnames' +import * as React from "react"; +import classNames from "classnames"; -import '../../../stylesheets/field.scss' +import "../../../stylesheets/field.scss"; interface InputFieldProps { - type: string - name: string - placeholder: string - value: string - onChange: (e: React.SyntheticEvent) => void - onBlur: (e: React.SyntheticEvent) => void + type: string; + name: string; + placeholder: string; + value: string; + onChange: (e: React.SyntheticEvent) => void; + onBlur: (e: React.SyntheticEvent) => void; } const InputField: React.SFC = ({ @@ -18,31 +18,34 @@ const InputField: React.SFC = ({ placeholder, value, onChange, - onBlur, + onBlur }) => { const fieldClasses = classNames({ - 'field-style': true, - title: name === 'title', - description: name === 'description', - deadline: name === 'deadline', - username: name === 'username', - email: name === 'email', - password: name === 'password' || name === 'confirmation', - }) + "field-style": true, + title: name === "title", + description: name === "description", + deadline: name === "deadline", + username: name === "username", + email: name === "email", + password: name === "password" || name === "confirmation" + }); const inputClasses = classNames({ - title: name === 'title', - description: name === 'description', - deadline: name === 'deadline', - username: name === 'username', - email: name === 'email', - password: name === 'password' || name === 'confirmation', - }) + title: name === "title", + description: name === "description", + deadline: name === "deadline", + username: name === "username", + email: name === "email", + password: name === "password" || name === "confirmation" + }); const inputRadius = classNames({ - 'input-radius': - name === 'username' || name === 'email' || name === 'password' || name === 'confirmation', - }) + "input-radius": + name === "username" || + name === "email" || + name === "password" || + name === "confirmation" + }); return (
    @@ -56,7 +59,7 @@ const InputField: React.SFC = ({ onBlur={onBlur} />
    - ) -} + ); +}; -export default InputField +export default InputField; diff --git a/src/javascripts/components/atoms/mypage-tutorial.tsx b/src/javascripts/components/atoms/mypage-tutorial.tsx index a2a4be2..d6988cc 100644 --- a/src/javascripts/components/atoms/mypage-tutorial.tsx +++ b/src/javascripts/components/atoms/mypage-tutorial.tsx @@ -1,11 +1,11 @@ -import * as React from 'react' +import * as React from "react"; const MyPageTutorial: React.SFC<{}> = () => { return (
    • 回っている恒星をクリックしてProjectPageへ遷移してみよう!
    - ) -} + ); +}; -export default MyPageTutorial +export default MyPageTutorial; diff --git a/src/javascripts/components/atoms/planet-img.tsx b/src/javascripts/components/atoms/planet-img.tsx index 952e682..9251342 100644 --- a/src/javascripts/components/atoms/planet-img.tsx +++ b/src/javascripts/components/atoms/planet-img.tsx @@ -1,9 +1,11 @@ -import * as React from 'react' +import * as React from "react"; interface PlanetImgProps { - src: string + src: string; } -const PlanetImg: React.SFC = ({ src = '' }) => +const PlanetImg: React.SFC = ({ src = "" }) => ( + +); -export default PlanetImg +export default PlanetImg; diff --git a/src/javascripts/components/atoms/popup-assignment-card.tsx b/src/javascripts/components/atoms/popup-assignment-card.tsx index 61927b4..2edb8af 100644 --- a/src/javascripts/components/atoms/popup-assignment-card.tsx +++ b/src/javascripts/components/atoms/popup-assignment-card.tsx @@ -1,13 +1,15 @@ -import * as React from 'react' +import * as React from "react"; interface PopupAssignmentCardProps { - assignment: any + assignment: any; } -const PopupAssignmentCard: React.SFC = ({ assignment }: any) => { - if (!assignment) return +const PopupAssignmentCard: React.SFC = ({ + assignment +}: any) => { + if (!assignment) return; - const deadline: any = assignment.deadline.split('T')[0].split('-') - const { title, description }: any = assignment + const deadline: any = assignment.deadline.split("T")[0].split("-"); + const { title, description }: any = assignment; return (
    @@ -17,7 +19,7 @@ const PopupAssignmentCard: React.SFC = ({ assignment }
    {description}
    - ) -} + ); +}; -export default PopupAssignmentCard +export default PopupAssignmentCard; diff --git a/src/javascripts/components/atoms/popup-box.tsx b/src/javascripts/components/atoms/popup-box.tsx index c4a4dde..86d698f 100644 --- a/src/javascripts/components/atoms/popup-box.tsx +++ b/src/javascripts/components/atoms/popup-box.tsx @@ -1,15 +1,19 @@ -import * as React from 'react' +import * as React from "react"; -import PopupAssignmentCard from './popup-assignment-card' -import PopupProjectCard from './popup-project-card' +import PopupAssignmentCard from "./popup-assignment-card"; +import PopupProjectCard from "./popup-project-card"; const PopupBox = ({ data, isProject }: any) => { - const popupClass = isProject ? 'project-popup' : 'assignment-popup' + const popupClass = isProject ? "project-popup" : "assignment-popup"; return (
    - {isProject ? : } + {isProject ? ( + + ) : ( + + )}
    - ) -} + ); +}; -export default PopupBox +export default PopupBox; diff --git a/src/javascripts/components/atoms/popup-project-card.tsx b/src/javascripts/components/atoms/popup-project-card.tsx index fa88571..1e27d9d 100644 --- a/src/javascripts/components/atoms/popup-project-card.tsx +++ b/src/javascripts/components/atoms/popup-project-card.tsx @@ -1,18 +1,20 @@ -import * as React from 'react' +import * as React from "react"; interface PopupProjectCardProps { - project: any + project: any; } -const PopupProjectCard: React.SFC = ({ project }: any) => { - const { title, description }: any = project +const PopupProjectCard: React.SFC = ({ + project +}: any) => { + const { title, description }: any = project; return (
    {title}
    {description}
    - ) -} + ); +}; -export default PopupProjectCard +export default PopupProjectCard; diff --git a/src/javascripts/components/atoms/projectpage-tutorial.tsx b/src/javascripts/components/atoms/projectpage-tutorial.tsx index fff14a3..3e52add 100644 --- a/src/javascripts/components/atoms/projectpage-tutorial.tsx +++ b/src/javascripts/components/atoms/projectpage-tutorial.tsx @@ -1,4 +1,4 @@ -import * as React from 'react' +import * as React from "react"; const ProjectPageTutorial: React.SFC<{}> = () => { return ( @@ -11,7 +11,7 @@ const ProjectPageTutorial: React.SFC<{}> = () => {
  • 左下のプラスボタンを押してみよう!
  • 出てきた惑星をドラッグ&ドロップして軌道上に追加しよう!
  • - ) -} + ); +}; -export default ProjectPageTutorial +export default ProjectPageTutorial; diff --git a/src/javascripts/components/atoms/select-field.tsx b/src/javascripts/components/atoms/select-field.tsx index 3af0288..9bf37f9 100644 --- a/src/javascripts/components/atoms/select-field.tsx +++ b/src/javascripts/components/atoms/select-field.tsx @@ -1,15 +1,20 @@ -import * as React from 'react' +import * as React from "react"; -import '../../../stylesheets/field.scss' +import "../../../stylesheets/field.scss"; interface SelectFieldProps { - name: string - value: string - onChange: (e: React.SyntheticEvent) => void - onBlur: (e: React.SyntheticEvent) => void + name: string; + value: string; + onChange: (e: React.SyntheticEvent) => void; + onBlur: (e: React.SyntheticEvent) => void; } -const SelectField: React.SFC = ({ name, value, onChange, onBlur }) => { +const SelectField: React.SFC = ({ + name, + value, + onChange, + onBlur +}) => { return (
    - ) -} + ); +}; -export default SelectField +export default SelectField; diff --git a/src/javascripts/components/atoms/user-img.tsx b/src/javascripts/components/atoms/user-img.tsx index 33b2817..e5653a4 100644 --- a/src/javascripts/components/atoms/user-img.tsx +++ b/src/javascripts/components/atoms/user-img.tsx @@ -1,10 +1,10 @@ -import * as React from 'react' +import * as React from "react"; const UserImg = ({ user }: any) => (
    {/* TODO: Production環境ではURL変える */}
    -) +); -export default UserImg +export default UserImg; diff --git a/src/javascripts/components/atoms/user-name.tsx b/src/javascripts/components/atoms/user-name.tsx index d08725e..3071d76 100644 --- a/src/javascripts/components/atoms/user-name.tsx +++ b/src/javascripts/components/atoms/user-name.tsx @@ -1,5 +1,7 @@ -import * as React from 'react' +import * as React from "react"; -const UserName = ({ user }: any) =>
    {user.name}
    +const UserName = ({ user }: any) => ( +
    {user.name}
    +); -export default UserName +export default UserName; diff --git a/src/javascripts/components/atoms/welcome-user.tsx b/src/javascripts/components/atoms/welcome-user.tsx index 0a15334..bee9eec 100644 --- a/src/javascripts/components/atoms/welcome-user.tsx +++ b/src/javascripts/components/atoms/welcome-user.tsx @@ -1,4 +1,4 @@ -import * as React from 'react' +import * as React from "react"; const WelcomeUser = ({ user }: any) => (
    @@ -6,6 +6,6 @@ const WelcomeUser = ({ user }: any) => (
    {user.name}
    -) +); -export default WelcomeUser +export default WelcomeUser; diff --git a/src/javascripts/components/index/guest-only.tsx b/src/javascripts/components/index/guest-only.tsx index 623defc..c89d5a7 100644 --- a/src/javascripts/components/index/guest-only.tsx +++ b/src/javascripts/components/index/guest-only.tsx @@ -1,15 +1,15 @@ -import * as React from 'react' -import { Route, Switch, Redirect } from 'react-router-dom' -import { connect } from 'react-redux' -import TopPage from '../pages/guests/top-page' +import * as React from "react"; +import { Route, Switch, Redirect } from "react-router-dom"; +import { connect } from "react-redux"; +import TopPage from "../pages/guests/top-page"; interface Props { - currentUser: any + currentUser: any; } class GuestOnly extends React.Component { render() { - const { currentUser } = this.props + const { currentUser } = this.props; return !currentUser ? ( @@ -18,8 +18,8 @@ class GuestOnly extends React.Component { ) : ( - ) + ); } } -export default connect(({ currentUser }: any) => ({ currentUser }))(GuestOnly) +export default connect(({ currentUser }: any) => ({ currentUser }))(GuestOnly); diff --git a/src/javascripts/components/index/main.tsx b/src/javascripts/components/index/main.tsx index 25acf06..ed8d04e 100644 --- a/src/javascripts/components/index/main.tsx +++ b/src/javascripts/components/index/main.tsx @@ -1,23 +1,23 @@ -import * as React from 'react' -import { connect } from 'react-redux' -import { withRouter } from 'react-router-dom' -import { fetchCurrentUser } from '../../actions/users' +import * as React from "react"; +import { connect } from "react-redux"; +import { withRouter } from "react-router-dom"; +import { fetchCurrentUser } from "../../actions/users"; interface Props { - currentUser: any - fetchCurrentUser: any + currentUser: any; + fetchCurrentUser: any; } class Main extends React.Component { componentDidMount() { - if (sessionStorage.getItem('jwt')) this.props.fetchCurrentUser() + if (sessionStorage.getItem("jwt")) this.props.fetchCurrentUser(); } render() { - return sessionStorage.getItem('jwt') && !this.props.currentUser ? ( + return sessionStorage.getItem("jwt") && !this.props.currentUser ? (
    Loading...
    ) : ( this.props.children - ) + ); } } @@ -28,4 +28,4 @@ export default withRouter( ({ currentUser }: any, { location }: any) => ({ currentUser, location }), { fetchCurrentUser } )(Main) -) +); diff --git a/src/javascripts/components/index/user-only.tsx b/src/javascripts/components/index/user-only.tsx index eb9c8e2..4da4954 100644 --- a/src/javascripts/components/index/user-only.tsx +++ b/src/javascripts/components/index/user-only.tsx @@ -1,28 +1,36 @@ -import * as React from 'react' -import { Route, Switch, Redirect } from 'react-router-dom' -import { connect } from 'react-redux' -import Mypage from '../pages/users/mypage' -import ProjectPage from '../pages/users/project-page' -import HistoryPage from '../pages/users/history-page' -import SettingPage from '../pages/users/setting-page' +import * as React from "react"; +import { Route, Switch, Redirect } from "react-router-dom"; +import { connect } from "react-redux"; +import Mypage from "../pages/users/mypage"; +import ProjectPage from "../pages/users/project-page"; +import HistoryPage from "../pages/users/history-page"; +import SettingPage from "../pages/users/setting-page"; interface Props { - currentUser: any - match: any + currentUser: any; + match: any; } class UserOnly extends React.Component { render() { const { currentUser, - match: { url }, - }: any = this.props + match: { url } + }: any = this.props; return currentUser ? (
    - - + +

    404 Not Found

    } /> @@ -30,8 +38,8 @@ class UserOnly extends React.Component {
    ) : ( - ) + ); } } -export default connect(({ currentUser }: any) => ({ currentUser }))(UserOnly) +export default connect(({ currentUser }: any) => ({ currentUser }))(UserOnly); diff --git a/src/javascripts/components/molecules/HeaderRightLinks.tsx b/src/javascripts/components/molecules/HeaderRightLinks.tsx index d90cbcf..bbf8d98 100644 --- a/src/javascripts/components/molecules/HeaderRightLinks.tsx +++ b/src/javascripts/components/molecules/HeaderRightLinks.tsx @@ -1,59 +1,80 @@ -import styled from '@emotion/styled' -import * as React from 'react' +import styled from "@emotion/styled"; +import * as React from "react"; -import * as Size from '../../constants/Size' -import Button from '../atoms/Button' -import Img from '../atoms/Image' -import { HeaderIcons } from '../../constants/images' +import * as Size from "../../constants/Size"; +import Button from "../atoms/Button"; +import Img from "../atoms/Image"; +import { HeaderIcons } from "../../constants/images"; interface Props { - currentUser: any - pathname: any - history: any + currentUser: any; + pathname: any; + history: any; } -const HeaderRightLinks: React.FC = ({ currentUser, history, pathname }) => { +const HeaderRightLinks: React.FC = ({ + currentUser, + history, + pathname +}) => { function onLinkButtonClick(path: string): void { - history.push(path) + history.push(path); } function onBackButtonClick() { - history.goBack() + history.goBack(); } - const rootPath = `/users/${currentUser.id}` + const rootPath = `/users/${currentUser.id}`; // mypage, project-page, setting-pageのみで表示(show-right: true) const isHistoryButtonShow = pathname === `${rootPath}` || /^\/users\/[1-9]\d*\/projects$/.test(pathname) || - pathname === `${rootPath}/edit` + pathname === `${rootPath}/edit`; // mypage, project-page, history-pageのみで表示(show-right: true) const isSettingButtonShow = pathname === `${rootPath}` || /^\/users\/[1-9]\d*\/projects$/.test(pathname) || - pathname === `${rootPath}/history` + pathname === `${rootPath}/history`; // setting-page, history-pageのみで表示(show-right: true) - const isBackButtonShow = pathname === `${rootPath}/history` || pathname === `${rootPath}/edit` + const isBackButtonShow = + pathname === `${rootPath}/history` || pathname === `${rootPath}/edit`; return ( - <_Link onClick={() => onLinkButtonClick(`${rootPath}/history`)} isShow={isHistoryButtonShow}> + <_Link + onClick={() => onLinkButtonClick(`${rootPath}/history`)} + isShow={isHistoryButtonShow} + > HISTORY - + - <_Link onClick={() => onLinkButtonClick(`${rootPath}/edit`)} isShow={isSettingButtonShow}> + <_Link + onClick={() => onLinkButtonClick(`${rootPath}/edit`)} + isShow={isSettingButtonShow} + > SETTING - + <_Link onClick={() => onBackButtonClick} isShow={isBackButtonShow}> BACK - + - ) -} + ); +}; const Root = styled.div` display: flex; @@ -65,10 +86,10 @@ const Root = styled.div` position: fixed; top: 20px; right: 30px; -` +`; const _Link = styled(Button)<{ isShow: boolean }>` - display: ${isShow => (isShow ? 'flex' : 'none')}; + display: ${isShow => (isShow ? "flex" : "none")}; justify-content: flex-end; align-content: center; width: ${Size.HeaderContainerWidth}; @@ -78,11 +99,11 @@ const _Link = styled(Button)<{ isShow: boolean }>` &:link { text-decoration: none; } -` +`; const Icon = styled(Img)` display: block; margin: 5px 0; -` +`; -export default HeaderRightLinks +export default HeaderRightLinks; diff --git a/src/javascripts/components/molecules/blackhole.tsx b/src/javascripts/components/molecules/blackhole.tsx index 196d708..f345626 100644 --- a/src/javascripts/components/molecules/blackhole.tsx +++ b/src/javascripts/components/molecules/blackhole.tsx @@ -1,145 +1,167 @@ -import React from 'react' -import { connect } from 'react-redux' -import _ from 'lodash' -import anime from 'animejs' +import React from "react"; +import { connect } from "react-redux"; +import _ from "lodash"; +import anime from "animejs"; -import ActionBtn from '../atoms/buttons/action-btn' +import ActionBtn from "../atoms/buttons/action-btn"; -import { setDestroyAction, resetDestroyAction, resetModalStatus } from '../../actions/common' -import { destroyAssignment, resetSelectedAssignment } from '../../actions/assignments' +import { + setDestroyAction, + resetDestroyAction, + resetModalStatus +} from "../../actions/common"; +import { + destroyAssignment, + resetSelectedAssignment +} from "../../actions/assignments"; -import { DeleteActions } from '../../constants/images' +import { DeleteActions } from "../../constants/images"; interface BlackHoleProps { - icon: string - actionBtnClass: string - motionControll: () => void - onClick: () => void + icon: string; + actionBtnClass: string; + motionControll: () => void; + onClick: () => void; - selectedAssignments: any - destroyedAssignments: any - selectedDestroyAction: any - modalOpen: any + selectedAssignments: any; + destroyedAssignments: any; + selectedDestroyAction: any; + modalOpen: any; - setDestroyAction: any - resetDestroyAction: any - resetModalStatus: any - destroyAssignment: any - resetSelectedAssignment: any + setDestroyAction: any; + resetDestroyAction: any; + resetModalStatus: any; + destroyAssignment: any; + resetSelectedAssignment: any; } class BlackHole extends React.Component { componentDidUpdate(/*prevProps, prevState*/) { - if (this.props.selectedAssignments.length === 0) return - if (this.props.modalOpen !== '') return - if (this.props.selectedDestroyAction !== 'BlackHole') return - this.iginiteBlackHoleAnimation() + if (this.props.selectedAssignments.length === 0) return; + if (this.props.modalOpen !== "") return; + if (this.props.selectedDestroyAction !== "BlackHole") return; + this.iginiteBlackHoleAnimation(); } // 削除されたAssignmentIdをcanvasのidから特定し、destroyedAssignmentsに格納 removeAssignmentData(parent: any) { _.forEach(parent, (destroyDom: any) => { - let destroyedAssignmentId: string = destroyDom.id.split('-')[1] //
    - this.props.destroyAssignment(destroyedAssignmentId) - }) + let destroyedAssignmentId: string = destroyDom.id.split("-")[1]; //
    + this.props.destroyAssignment(destroyedAssignmentId); + }); } iginiteBlackHoleAnimation() { - const targetIds: string[] = this.props.selectedAssignments - const actionType: string = this.props.selectedDestroyAction - const targetDom: HTMLElement = document.getElementById('project-page-container') - const insertDom: HTMLElement = document.getElementById('project-container') - const displayDoms: any = [] - let targetImgTop: number = 0 - let targetImgLeft: number = 0 + const targetIds: string[] = this.props.selectedAssignments; + const actionType: string = this.props.selectedDestroyAction; + const targetDom: HTMLElement = document.getElementById( + "project-page-container" + ); + const insertDom: HTMLElement = document.getElementById("project-container"); + const displayDoms: any = []; + let targetImgTop: number = 0; + let targetImgLeft: number = 0; targetIds.forEach((id: string) => { - displayDoms.push(document.getElementById(`planet-${id}`)) // planet-2-Earth の親要素 - }) + displayDoms.push(document.getElementById(`planet-${id}`)); // planet-2-Earth の親要素 + }); function appearBlackHole() { - let newDiv: HTMLDivElement = document.createElement('div') - let newImg: HTMLImageElement = document.createElement('img') - newDiv.classList.add('blackhole-img') - newImg.src = DeleteActions[actionType] - newDiv.appendChild(newImg) - targetDom.insertBefore(newDiv, insertDom) - const clientRectTarget: any = newDiv.getBoundingClientRect() - targetImgTop = clientRectTarget.top - targetImgLeft = clientRectTarget.left + let newDiv: HTMLDivElement = document.createElement("div"); + let newImg: HTMLImageElement = document.createElement("img"); + newDiv.classList.add("blackhole-img"); + newImg.src = DeleteActions[actionType]; + newDiv.appendChild(newImg); + targetDom.insertBefore(newDiv, insertDom); + const clientRectTarget: any = newDiv.getBoundingClientRect(); + targetImgTop = clientRectTarget.top; + targetImgLeft = clientRectTarget.left; } function disappearPlanet() { - const clientRectPlanet: any = displayDoms[0].getBoundingClientRect() - const planetImgTop: number = clientRectPlanet.top - const planetImgLeft: number = clientRectPlanet.left - const BlackHoleAnimation = anime.timeline() + const clientRectPlanet: any = displayDoms[0].getBoundingClientRect(); + const planetImgTop: number = clientRectPlanet.top; + const planetImgLeft: number = clientRectPlanet.left; + const BlackHoleAnimation = anime.timeline(); BlackHoleAnimation.add({ targets: `#planet-${targetIds[0]} .planet-img-container`, translateX: { value: targetImgLeft - planetImgLeft, duration: 1000, - easing: 'easeInExpo', + easing: "easeInExpo" }, translateY: { value: targetImgTop - planetImgTop, duration: 1000, - easing: 'easeInExpo', + easing: "easeInExpo" }, opacity: { value: [1, 0], duration: 1200, - easing: 'easeInQuad', - }, + easing: "easeInQuad" + } }).add({ - targets: '#project-page-container .blackhole-img', + targets: "#project-page-container .blackhole-img", rotate: { - value: '6turn', + value: "6turn", duration: 1800, - easing: 'easeInExpo', + easing: "easeInExpo" }, opacity: { value: [1, 0], duration: 1800, - easing: 'easeInExpo', + easing: "easeInExpo" }, - offset: -300, - }) + offset: -300 + }); } - appearBlackHole() + appearBlackHole(); setTimeout(() => { - disappearPlanet() - }, 1800) + disappearPlanet(); + }, 1800); setTimeout(() => { - this.removeAssignmentData(displayDoms) - this.props.motionControll() - }, 2000) + this.removeAssignmentData(displayDoms); + this.props.motionControll(); + }, 2000); setTimeout(() => { - this.props.resetDestroyAction() - this.props.resetSelectedAssignment() - targetDom.removeChild(document.getElementsByClassName('blackhole-img')[0]) - }, 5000) + this.props.resetDestroyAction(); + this.props.resetSelectedAssignment(); + targetDom.removeChild( + document.getElementsByClassName("blackhole-img")[0] + ); + }, 5000); } render() { - const { icon, actionBtnClass, onClick } = this.props - return + const { icon, actionBtnClass, onClick } = this.props; + return ( + + ); } } export default connect( - ({ selectedAssignments, destroyedAssignments, selectedDestroyAction, modalOpen }: any) => ({ + ({ + selectedAssignments, + destroyedAssignments, + selectedDestroyAction, + modalOpen + }: any) => ({ selectedAssignments, destroyedAssignments, selectedDestroyAction, - modalOpen, + modalOpen }), { setDestroyAction, resetDestroyAction, resetModalStatus, destroyAssignment, - resetSelectedAssignment, + resetSelectedAssignment } -)(BlackHole) +)(BlackHole); diff --git a/src/javascripts/components/molecules/circle-orbit.tsx b/src/javascripts/components/molecules/circle-orbit.tsx index ffd6b3c..da0b3f1 100644 --- a/src/javascripts/components/molecules/circle-orbit.tsx +++ b/src/javascripts/components/molecules/circle-orbit.tsx @@ -1,177 +1,181 @@ -import * as React from 'react' -import { connect } from 'react-redux' -import _ from 'lodash' +import * as React from "react"; +import { connect } from "react-redux"; +import _ from "lodash"; -import PopupBox from '../atoms/popup-box' -import Planet from './planet' +import PopupBox from "../atoms/popup-box"; +import Planet from "./planet"; -import { setSelectedStar, resetSelectedStar, setModalStatus } from '../../actions/common' +import { + setSelectedStar, + resetSelectedStar, + setModalStatus +} from "../../actions/common"; interface CircleOrbitProps { - orbit: any + orbit: any; - modalOpen: any - selectedStar: any - revolvingAssignments: any - selectedAssignments: any + modalOpen: any; + selectedStar: any; + revolvingAssignments: any; + selectedAssignments: any; - setSelectedStar: any - resetSelectedStar: any - setModalStatus: any + setSelectedStar: any; + resetSelectedStar: any; + setModalStatus: any; } class CircleOrbit extends React.Component { componentDidMount() { - this.setOrbitDrop() - this.setPlanetDrop() + this.setOrbitDrop(); + this.setPlanetDrop(); } componentDidUpdate() { - this.addWarningAnimation() + this.addWarningAnimation(); } setPlanetDrop(): void { - const { revolvingAssignments, modalOpen, orbit } = this.props - if (!revolvingAssignments) return + const { revolvingAssignments, modalOpen, orbit } = this.props; + if (!revolvingAssignments) return; // Droppable area _.forEach(revolvingAssignments[orbit], assignment => { const target: any = document.getElementById( `planet-${assignment.id}-${assignment.planet_type}` - ) + ); target.addEventListener( - 'dragenter', + "dragenter", () => { - if (!target.classList.contains('circle-shadow')) { - target.classList.add('circle-shadow') + if (!target.classList.contains("circle-shadow")) { + target.classList.add("circle-shadow"); } }, false - ) + ); // Entering into the droppable area target.addEventListener( - 'dragenter', + "dragenter", () => { - if (!target.classList.contains('circle-shadow')) { - target.classList.add('circle-shadow') + if (!target.classList.contains("circle-shadow")) { + target.classList.add("circle-shadow"); } }, false - ) + ); // Leaving from the droppable area target.addEventListener( - 'dragleave', + "dragleave", () => { - if (target.classList.contains('circle-shadow')) { - target.classList.remove('circle-shadow') + if (target.classList.contains("circle-shadow")) { + target.classList.remove("circle-shadow"); } }, false - ) + ); // Drop target.addEventListener( - 'drop', + "drop", (e: any) => { - e.preventDefault() - if (target.classList.contains('circle-shadow')) { - target.classList.remove('circle-shadow') + e.preventDefault(); + if (target.classList.contains("circle-shadow")) { + target.classList.remove("circle-shadow"); } - if (modalOpen !== '') { - this.props.setModalStatus(`form-satelite-${assignment.id}`) + if (modalOpen !== "") { + this.props.setModalStatus(`form-satelite-${assignment.id}`); } }, false - ) - }) + ); + }); } setOrbitDrop(): void { - const { modalOpen, orbit } = this.props + const { modalOpen, orbit } = this.props; // Droppable area - const target = document.getElementById(`circle-${orbit}`) + const target = document.getElementById(`circle-${orbit}`); // Entering into the droppable area target.addEventListener( - 'dragenter', + "dragenter", () => { - if (!target.classList.contains('circle-shadow')) { - target.classList.add('circle-shadow') + if (!target.classList.contains("circle-shadow")) { + target.classList.add("circle-shadow"); } }, false - ) + ); // Leaving from the droppable area target.addEventListener( - 'dragleave', + "dragleave", () => { - if (target.classList.contains('circle-shadow')) { - target.classList.remove('circle-shadow') + if (target.classList.contains("circle-shadow")) { + target.classList.remove("circle-shadow"); } }, false - ) + ); // Over the droppable area target.addEventListener( - 'dragover', + "dragover", (e: any) => { - e.preventDefault() + e.preventDefault(); }, false - ) + ); // Drop target.addEventListener( - 'drop', + "drop", (e: any) => { - e.preventDefault() - if (target.classList.contains('circle-shadow')) { - target.classList.remove('circle-shadow') + e.preventDefault(); + if (target.classList.contains("circle-shadow")) { + target.classList.remove("circle-shadow"); } if (!modalOpen) { - this.props.setModalStatus(`form-${orbit}`) + this.props.setModalStatus(`form-${orbit}`); } }, false - ) + ); } addWarningAnimation() { - const { revolvingAssignments, orbit } = this.props - if (!revolvingAssignments) return + const { revolvingAssignments, orbit } = this.props; + if (!revolvingAssignments) return; - const today: any = new Date().getTime() - const msPerDay = 24 * 60 * 60 * 1000 + const today: any = new Date().getTime(); + const msPerDay = 24 * 60 * 60 * 1000; _.forEach(revolvingAssignments[orbit], (assignment: any) => { - if (!assignment || !assignment.deadline) return + if (!assignment || !assignment.deadline) return; const deadline: any = new Date( - assignment.deadline.replace(/-/g, '/').replace(/T/g, ' ') - ).getTime() + assignment.deadline.replace(/-/g, "/").replace(/T/g, " ") + ).getTime(); if ((deadline - today) / msPerDay < 3) { const targetDom = document.getElementById( `planet-${assignment.id}-${assignment.planet_type}` - ) - targetDom.classList.add('planet-warning-size') - targetDom.children[1].classList.add('warning-animation') + ); + targetDom.classList.add("planet-warning-size"); + targetDom.children[1].classList.add("warning-animation"); } - }) + }); } render() { - const { revolvingAssignments, orbit } = this.props + const { revolvingAssignments, orbit } = this.props; if (!revolvingAssignments) { - return
    + return
    ; } - const pos = ['top', 'right', 'left', 'bottom'] - const assignmentsOnEachOrbit = revolvingAssignments[orbit] + const pos = ["top", "right", "left", "bottom"]; + const assignmentsOnEachOrbit = revolvingAssignments[orbit]; if (assignmentsOnEachOrbit && assignmentsOnEachOrbit.length === 0) { - return
    + return
    ; } return ( @@ -186,7 +190,9 @@ class CircleOrbit extends React.Component { key={assignmentInfo.id} >
    { />
    - ) + ); })}
    - ) + ); } } export default connect( - ({ revolvingAssignments, selectedAssignments, selectedStar, modalOpen }: any) => ({ + ({ revolvingAssignments, selectedAssignments, selectedStar, - modalOpen, + modalOpen + }: any) => ({ + revolvingAssignments, + selectedAssignments, + selectedStar, + modalOpen }), { setSelectedStar, resetSelectedStar, - setModalStatus, + setModalStatus } -)(CircleOrbit) +)(CircleOrbit); diff --git a/src/javascripts/components/molecules/fixed-star.tsx b/src/javascripts/components/molecules/fixed-star.tsx index 09b3104..bdd2f77 100644 --- a/src/javascripts/components/molecules/fixed-star.tsx +++ b/src/javascripts/components/molecules/fixed-star.tsx @@ -1,24 +1,27 @@ -import * as React from 'react' +import * as React from "react"; -import Planet from './planet' +import Planet from "./planet"; interface FixedStarProps { - project: any + project: any; } class FixedStar extends React.Component { render() { - const { id, fixed_star_type } = this.props.project + const { id, fixed_star_type } = this.props.project; return (
    - +
    - ) + ); } } -export default FixedStar +export default FixedStar; diff --git a/src/javascripts/components/molecules/footer-action-btn-list.tsx b/src/javascripts/components/molecules/footer-action-btn-list.tsx index d307692..dffb815 100644 --- a/src/javascripts/components/molecules/footer-action-btn-list.tsx +++ b/src/javascripts/components/molecules/footer-action-btn-list.tsx @@ -1,54 +1,64 @@ -import * as React from 'react' -import { connect } from 'react-redux' -import classNames from 'classnames' +import * as React from "react"; +import { connect } from "react-redux"; +import classNames from "classnames"; -import Revival from './revival' -import Meteorite from './meteorite' -import Missle from './missile' -import BlackHole from './blackhole' +import Revival from "./revival"; +import Meteorite from "./meteorite"; +import Missle from "./missile"; +import BlackHole from "./blackhole"; -import { setModalStatus, setDestroyAction } from '../../actions/common' +import { setModalStatus, setDestroyAction } from "../../actions/common"; -import { ActionIcons } from '../../constants/images' +import { ActionIcons } from "../../constants/images"; -import '../../../stylesheets/destroy_animate.scss' +import "../../../stylesheets/destroy_animate.scss"; interface FooterActionBtnListProps { - pathname: any - rootPath: any - history: any - currentUser: any - motionControll: () => void + pathname: any; + rootPath: any; + history: any; + currentUser: any; + motionControll: () => void; - modalOpen: string - selectedProject: any + modalOpen: string; + selectedProject: any; - setModalStatus: any - setDestroyAction: any + setModalStatus: any; + setDestroyAction: any; } -class FooterActionBtnList extends React.Component { +class FooterActionBtnList extends React.Component< + FooterActionBtnListProps, + {} +> { onClickOpenModal(actionType: string) { - this.props.setDestroyAction(actionType) - this.props.setModalStatus(actionType) - this.props.motionControll() + this.props.setDestroyAction(actionType); + this.props.setModalStatus(actionType); + this.props.motionControll(); } render() { - const { pathname, rootPath, currentUser, history, selectedProject } = this.props - const actionType = Object.keys(ActionIcons) + const { + pathname, + rootPath, + currentUser, + history, + selectedProject + } = this.props; + const actionType = Object.keys(ActionIcons); const rivivalBtnClass = classNames({ - 'action-btn': true, - 'revival-button-show': pathname === `${rootPath}/history`, - }) + "action-btn": true, + "revival-button-show": pathname === `${rootPath}/history` + }); const deleteBtnsClass: string = classNames({ - 'action-btn': true, - 'delete-buttons-show': - pathname === `${rootPath}` || /^\/users\/[1-9]\d*\/projects$/.test(pathname), - }) + "action-btn": true, + "delete-buttons-show": + pathname === `${rootPath}` || + /^\/users\/[1-9]\d*\/projects$/.test(pathname) + }); const blackHoleBtnClass: string = classNames({ - 'restrict-button-style': selectedProject.length !== 0, - }) + "restrict-button-style": selectedProject.length !== 0 + }); return (
      @@ -56,7 +66,7 @@ class FooterActionBtnList extends React.Component icon={ActionIcons[actionType[0]]} actionBtnClass={rivivalBtnClass} onClick={() => { - this.onClickOpenModal(actionType[0]) + this.onClickOpenModal(actionType[0]); }} /> currentUser={currentUser} motionControll={() => this.props.motionControll()} onClick={() => { - this.onClickOpenModal(actionType[1]) + this.onClickOpenModal(actionType[1]); }} /> currentUser={currentUser} motionControll={() => this.props.motionControll()} onClick={() => { - this.onClickOpenModal(actionType[2]) + this.onClickOpenModal(actionType[2]); }} /> actionBtnClass={`${deleteBtnsClass} ${blackHoleBtnClass}`} motionControll={() => this.props.motionControll()} onClick={() => { - this.onClickOpenModal(actionType[3]) + this.onClickOpenModal(actionType[3]); }} />
    - ) + ); } } export default connect( ({ modalOpen, selectedProject }: any) => ({ modalOpen, selectedProject }), { setModalStatus, setDestroyAction } -)(FooterActionBtnList) +)(FooterActionBtnList); diff --git a/src/javascripts/components/molecules/forms/assignment-form.tsx b/src/javascripts/components/molecules/forms/assignment-form.tsx index 83c7e6c..2d11f72 100644 --- a/src/javascripts/components/molecules/forms/assignment-form.tsx +++ b/src/javascripts/components/molecules/forms/assignment-form.tsx @@ -1,73 +1,77 @@ -import * as React from 'react' -import { connect } from 'react-redux' -import { Formik } from 'formik' +import * as React from "react"; +import { connect } from "react-redux"; +import { Formik } from "formik"; -import InputField from '../../atoms/input-field' -import SelectField from '../../atoms/select-field' +import InputField from "../../atoms/input-field"; +import SelectField from "../../atoms/select-field"; -import { setSelectedStar, resetSelectedStar, resetModalStatus } from '../../../actions/common' -import { createAssignment } from '../../../actions/assignments' -import FormSubmitBtn from '../../atoms/buttons/form-submit-btn' +import { + setSelectedStar, + resetSelectedStar, + resetModalStatus +} from "../../../actions/common"; +import { createAssignment } from "../../../actions/assignments"; +import FormSubmitBtn from "../../atoms/buttons/form-submit-btn"; interface AssignmentFormProps { - orbit: string + orbit: string; - selectedStar: any - currentProject: any + selectedStar: any; + currentProject: any; - setSelectedStar: any - resetSelectedStar: any - resetModalStatus: any - createAssignment: any + setSelectedStar: any; + resetSelectedStar: any; + resetModalStatus: any; + createAssignment: any; } interface CreateAssignmentValues { - title: string - description: string - deadline: string - planet_size: string + title: string; + description: string; + deadline: string; + planet_size: string; } class AssignmentForm extends React.Component { render() { - const planet_type: any = this.props.selectedStar // reducerでの型付けと対応 - const project_id: number = this.props.currentProject.id - const { orbit } = this.props + const planet_type: any = this.props.selectedStar; // reducerでの型付けと対応 + const project_id: number = this.props.currentProject.id; + const { orbit } = this.props; return (
    New SubAssignment
    { - const errors: any = {} + const errors: any = {}; // TODO: 現状validatが適当 → rails側と絡めて後々実装 if (!values.title) { - errors.title = 'Title required' + errors.title = "Title required"; } else if (values.title.length > 50) { - errors.title = 'Too long title' + errors.title = "Too long title"; } if (!values.deadline) { - errors.deadline = 'deadline required' + errors.deadline = "deadline required"; } if (!values.description) { - errors.description = 'Description required' + errors.description = "Description required"; } else if (values.description.length > 140) { - errors.description = 'Too long description' + errors.description = "Too long description"; } if (!values.planet_size) { - errors.planet_size = 'Orbit Position required' + errors.planet_size = "Orbit Position required"; } - return errors + return errors; }} onSubmit={(values: CreateAssignmentValues, actions: any) => { - this.props.resetSelectedStar() - this.props.resetModalStatus() + this.props.resetSelectedStar(); + this.props.resetModalStatus(); this.props .createAssignment( values.title, @@ -79,10 +83,18 @@ class AssignmentForm extends React.Component { project_id ) .then(() => actions.setSubmitting(false)) - .catch(() => actions.setSubmitting(false)) + .catch(() => actions.setSubmitting(false)); }} > - {({ values, errors, touched, handleChange, handleBlur, handleSubmit, isSubmitting }) => ( + {({ + values, + errors, + touched, + handleChange, + handleBlur, + handleSubmit, + isSubmitting + }) => (
    { onChange={handleChange} onBlur={handleBlur} /> -
    {errors.title && touched.title && errors.title}
    +
    + {errors.title && touched.title && errors.title} +
    { onChange={handleChange} onBlur={handleBlur} /> -
    +
    {errors.deadline && touched.deadline && errors.deadline}
    @@ -115,8 +129,10 @@ class AssignmentForm extends React.Component { onChange={handleChange} onBlur={handleBlur} /> -
    - {errors.description && touched.description && errors.description} +
    + {errors.description && + touched.description && + errors.description}
    @@ -126,8 +142,10 @@ class AssignmentForm extends React.Component { onChange={handleChange} onBlur={handleBlur} /> -
    - {errors.planet_size && touched.planet_size && errors.planet_size} +
    + {errors.planet_size && + touched.planet_size && + errors.planet_size}
    @@ -135,11 +153,11 @@ class AssignmentForm extends React.Component { )}
    - ) + ); } } export default connect( ({ selectedStar, currentProject }: any) => ({ selectedStar, currentProject }), { createAssignment, setSelectedStar, resetSelectedStar, resetModalStatus } -)(AssignmentForm) +)(AssignmentForm); diff --git a/src/javascripts/components/molecules/forms/profile-update-form.tsx b/src/javascripts/components/molecules/forms/profile-update-form.tsx index fcbb147..b23e565 100644 --- a/src/javascripts/components/molecules/forms/profile-update-form.tsx +++ b/src/javascripts/components/molecules/forms/profile-update-form.tsx @@ -1,22 +1,22 @@ -import * as React from 'react' -import { connect } from 'react-redux' -import { Formik } from 'formik' +import * as React from "react"; +import { connect } from "react-redux"; +import { Formik } from "formik"; -import InputField from '../../atoms/input-field' -import FormSubmitBtn from '../../atoms/buttons/form-submit-btn' +import InputField from "../../atoms/input-field"; +import FormSubmitBtn from "../../atoms/buttons/form-submit-btn"; -import { updateProfile } from '../../../actions/users' +import { updateProfile } from "../../../actions/users"; type ProfileUpdateFormProps = { - updateProfile: any - history: any -} + updateProfile: any; + history: any; +}; interface UpdateProfileValues { - username: any - email: any - password: any - confirmation: any + username: any; + email: any; + password: any; + confirmation: any; } class ProfileUpdateForm extends React.Component { @@ -24,54 +24,67 @@ class ProfileUpdateForm extends React.Component { return ( { - const errors: any = {} + const errors: any = {}; if (values.username && values.username.length > 50) { - errors.username = 'Too long username' + errors.username = "Too long username"; } if (!values.email) { - errors.email = 'Email required' + errors.email = "Email required"; } else if (values.email && values.email.length > 255) { - errors.email = 'Too long email address' + errors.email = "Too long email address"; } else if ( values.email && !/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i.test(values.email) ) { - errors.email = 'Invalid email address' + errors.email = "Invalid email address"; } if (!values.password) { - errors.password = 'Password required to update profile' + errors.password = "Password required to update profile"; } else if (values.password.length < 6) { - errors.password = 'Password must contain at least 6 characters' + errors.password = "Password must contain at least 6 characters"; } if (!values.confirmation) { - errors.confirmation = 'Password confirmation required' + errors.confirmation = "Password confirmation required"; } else if (values.password !== values.confirmation) { - errors.confirmation = 'Not match password' + errors.confirmation = "Not match password"; } - return errors + return errors; }} onSubmit={(values: UpdateProfileValues, actions: any) => { // TODO: Flashメッセージの実装 - if (window.confirm('プロフィール情報を更新していいですか?')) { + if (window.confirm("プロフィール情報を更新していいですか?")) { this.props - .updateProfile(values.username, values.email, values.password, values.confirmation) - .then(() => this.props.history.push('/')) + .updateProfile( + values.username, + values.email, + values.password, + values.confirmation + ) + .then(() => this.props.history.push("/")) .then(() => actions.setSubmitting(false)) - .catch(() => actions.setSubmitting(false)) + .catch(() => actions.setSubmitting(false)); } }} > - {({ values, errors, touched, handleChange, handleBlur, handleSubmit, isSubmitting }) => ( + {({ + values, + errors, + touched, + handleChange, + handleBlur, + handleSubmit, + isSubmitting + }) => ( { onChange={handleChange} onBlur={handleBlur} /> -
    {errors.email && touched.email && errors.email}
    +
    + {errors.email && touched.email && errors.email} +
    { onChange={handleChange} onBlur={handleBlur} /> -
    +
    {errors.password && touched.password && errors.password}
    { onChange={handleChange} onBlur={handleBlur} /> -
    - {errors.confirmation && touched.confirmation && errors.confirmation} +
    + {errors.confirmation && + touched.confirmation && + errors.confirmation}
    )} - ) + ); } } export default connect( null, { updateProfile } -)(ProfileUpdateForm) +)(ProfileUpdateForm); diff --git a/src/javascripts/components/molecules/forms/project-form.tsx b/src/javascripts/components/molecules/forms/project-form.tsx index 41fdb61..de3d01b 100644 --- a/src/javascripts/components/molecules/forms/project-form.tsx +++ b/src/javascripts/components/molecules/forms/project-form.tsx @@ -1,25 +1,29 @@ -import * as React from 'react' -import { connect } from 'react-redux' -import { Formik } from 'formik' +import * as React from "react"; +import { connect } from "react-redux"; +import { Formik } from "formik"; -import InputField from '../../atoms/input-field' +import InputField from "../../atoms/input-field"; -import { setSelectedStar, resetSelectedStar, resetModalStatus } from '../../../actions/common' -import { createProject } from '../../../actions/projects' +import { + setSelectedStar, + resetSelectedStar, + resetModalStatus +} from "../../../actions/common"; +import { createProject } from "../../../actions/projects"; -import '../../../../stylesheets/form_on_modal.scss' -import FormSubmitBtn from '../../atoms/buttons/form-submit-btn' +import "../../../../stylesheets/form_on_modal.scss"; +import FormSubmitBtn from "../../atoms/buttons/form-submit-btn"; interface ProjectFormProps { - selectedStar: any - createProject: any - resetSelectedStar: any - resetModalStatus: any + selectedStar: any; + createProject: any; + resetSelectedStar: any; + resetModalStatus: any; } interface CreateProjectValues { - title: string - description: string + title: string; + description: string; } class ProjectForm extends React.Component { @@ -28,36 +32,44 @@ class ProjectForm extends React.Component {
    New Project
    { - const errors: any = {} + const errors: any = {}; if (!values.title) { - errors.title = 'Password required to update profile' + errors.title = "Password required to update profile"; } else if (values.title.length < 6) { - errors.title = 'Password must contain at least 6 characters' + errors.title = "Password must contain at least 6 characters"; } if (!values.description) { - errors.description = 'Description required' + errors.description = "Description required"; } else if (values.description.length > 200) { - errors.description = 'Too long description' + errors.description = "Too long description"; } - return errors + return errors; }} onSubmit={(values: CreateProjectValues, actions: any) => { - const fixed_star_type: any = this.props.selectedStar + const fixed_star_type: any = this.props.selectedStar; - this.props.resetSelectedStar() - this.props.resetModalStatus() + this.props.resetSelectedStar(); + this.props.resetModalStatus(); this.props .createProject(values.title, values.description, fixed_star_type) .then(() => actions.setSubmitting(false)) - .catch(() => actions.setSubmitting(false)) + .catch(() => actions.setSubmitting(false)); }} > - {({ values, errors, touched, handleChange, handleBlur, handleSubmit, isSubmitting }) => ( + {({ + values, + errors, + touched, + handleChange, + handleBlur, + handleSubmit, + isSubmitting + }) => (
    { onChange={handleChange} onBlur={handleBlur} /> -
    {errors.title && touched.title && errors.title}
    +
    + {errors.title && touched.title && errors.title} +
    { onChange={handleChange} onBlur={handleBlur} /> -
    - {errors.description && touched.description && errors.description} +
    + {errors.description && + touched.description && + errors.description}
    @@ -88,11 +104,11 @@ class ProjectForm extends React.Component { )}
    - ) + ); } } export default connect( ({ selectedStar }: any) => ({ selectedStar }), { createProject, setSelectedStar, resetSelectedStar, resetModalStatus } -)(ProjectForm) +)(ProjectForm); diff --git a/src/javascripts/components/molecules/forms/signin-form.tsx b/src/javascripts/components/molecules/forms/signin-form.tsx index 7d27593..c573e69 100644 --- a/src/javascripts/components/molecules/forms/signin-form.tsx +++ b/src/javascripts/components/molecules/forms/signin-form.tsx @@ -1,21 +1,21 @@ -import * as React from 'react' -import { connect } from 'react-redux' -import { Formik } from 'formik' +import * as React from "react"; +import { connect } from "react-redux"; +import { Formik } from "formik"; -import InputField from '../../atoms/input-field' -import FormSubmitBtn from '../../atoms/buttons/form-submit-btn' +import InputField from "../../atoms/input-field"; +import FormSubmitBtn from "../../atoms/buttons/form-submit-btn"; -import { createSession } from '../../../actions/users' +import { createSession } from "../../../actions/users"; interface SignInFormProps { - history: any // historyの型付け + history: any; // historyの型付け - createSession: any + createSession: any; } interface CreateSessionValues { - email: string - password: string + email: string; + password: string; } class SignInForm extends React.Component { @@ -23,37 +23,45 @@ class SignInForm extends React.Component { return (
    { this.props .createSession(values.email, values.password) .then(() => actions.setSubmitting(false)) - .catch(() => actions.setSubmitting(false)) + .catch(() => actions.setSubmitting(false)); }} validate={(values: CreateSessionValues) => { - const errors: any = {} + const errors: any = {}; if (!values.email) { - errors.email = 'Email required' + errors.email = "Email required"; } else if (values.email && values.email.length > 255) { - errors.email = 'Too long email address' + errors.email = "Too long email address"; } else if ( values.email && !/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i.test(values.email) ) { - errors.email = 'Invalid email address' + errors.email = "Invalid email address"; } if (!values.password) { - errors.password = 'Password required to update profile' + errors.password = "Password required to update profile"; } else if (values.password.length < 6) { - errors.password = 'Password must contain at least 6 characters' + errors.password = "Password must contain at least 6 characters"; } - return errors + return errors; }} > - {({ values, errors, touched, handleChange, handleBlur, handleSubmit, isSubmitting }) => ( + {({ + values, + errors, + touched, + handleChange, + handleBlur, + handleSubmit, + isSubmitting + }) => ( { onChange={handleChange} onBlur={handleBlur} /> -
    {errors.email && touched.email && errors.email}
    +
    + {errors.email && touched.email && errors.email} +
    { onChange={handleChange} onBlur={handleBlur} /> -
    +
    {errors.password && touched.password && errors.password}
    @@ -80,11 +90,11 @@ class SignInForm extends React.Component { )}
    - ) + ); } } export default connect( null, { createSession } -)(SignInForm) +)(SignInForm); diff --git a/src/javascripts/components/molecules/forms/signup-form.tsx b/src/javascripts/components/molecules/forms/signup-form.tsx index 729d066..fbd358e 100644 --- a/src/javascripts/components/molecules/forms/signup-form.tsx +++ b/src/javascripts/components/molecules/forms/signup-form.tsx @@ -1,23 +1,23 @@ -import * as React from 'react' -import { connect } from 'react-redux' -import { Formik } from 'formik' +import * as React from "react"; +import { connect } from "react-redux"; +import { Formik } from "formik"; -import InputField from '../../atoms/input-field' -import FormSubmitBtn from '../../atoms/buttons/form-submit-btn' +import InputField from "../../atoms/input-field"; +import FormSubmitBtn from "../../atoms/buttons/form-submit-btn"; -import { createUser } from '../../../actions/users' +import { createUser } from "../../../actions/users"; interface SignUpFormProps { - history: any + history: any; - createUser: any + createUser: any; } interface CreateUserValues { - username: string - email: string - password: string - confirmation: string + username: string; + email: string; + password: string; + confirmation: string; } class SignUpForm extends React.Component { @@ -26,53 +26,66 @@ class SignUpForm extends React.Component {
    { - const errors: any = {} + const errors: any = {}; if (!values.username) { - errors.username = 'Username required' + errors.username = "Username required"; } else if (values.username && values.username.length > 50) { - errors.username = 'Too long username' + errors.username = "Too long username"; } if (!values.email) { - errors.email = 'Email required' + errors.email = "Email required"; } else if (values.email && values.email.length > 255) { - errors.email = 'Too long email address' + errors.email = "Too long email address"; } else if ( values.email && !/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i.test(values.email) ) { - errors.email = 'Invalid email address' + errors.email = "Invalid email address"; } if (!values.password) { - errors.password = 'Password required' + errors.password = "Password required"; } else if (values.password.length < 6) { - errors.password = 'Password must contain at least 6 characters' + errors.password = "Password must contain at least 6 characters"; } if (!values.confirmation) { - errors.confirmation = 'Password confirmation required' + errors.confirmation = "Password confirmation required"; } else if (values.password !== values.confirmation) { - errors.confirmation = 'Not match password' + errors.confirmation = "Not match password"; } - return errors + return errors; }} onSubmit={(values: CreateUserValues, actions: any) => { this.props - .createUser(values.username, values.email, values.password, values.confirmation) + .createUser( + values.username, + values.email, + values.password, + values.confirmation + ) .then(() => actions.setSubmitting(false)) - .catch(() => actions.setSubmitting(false)) + .catch(() => actions.setSubmitting(false)); }} > - {({ values, errors, touched, handleChange, handleBlur, handleSubmit, isSubmitting }) => ( + {({ + values, + errors, + touched, + handleChange, + handleBlur, + handleSubmit, + isSubmitting + }) => ( { onChange={handleChange} onBlur={handleBlur} /> -
    +
    {errors.username && touched.username && errors.username}
    { onChange={handleChange} onBlur={handleBlur} /> -
    {errors.email && touched.email && errors.email}
    +
    + {errors.email && touched.email && errors.email} +
    { onChange={handleChange} onBlur={handleBlur} /> -
    +
    {errors.password && touched.password && errors.password}
    { onChange={handleChange} onBlur={handleBlur} /> -
    - {errors.confirmation && touched.confirmation && errors.confirmation} +
    + {errors.confirmation && + touched.confirmation && + errors.confirmation}
    )}
    - ) + ); } } export default connect( null, { createUser } -)(SignUpForm) +)(SignUpForm); diff --git a/src/javascripts/components/molecules/forms/subassignmnet-form.tsx b/src/javascripts/components/molecules/forms/subassignmnet-form.tsx index 5bea23b..52fd80d 100644 --- a/src/javascripts/components/molecules/forms/subassignmnet-form.tsx +++ b/src/javascripts/components/molecules/forms/subassignmnet-form.tsx @@ -1,49 +1,53 @@ -import * as React from 'react' -import { bindActionCreators } from 'redux' -import { connect } from 'react-redux' -import { Formik } from 'formik' +import * as React from "react"; +import { bindActionCreators } from "redux"; +import { connect } from "react-redux"; +import { Formik } from "formik"; -import InputField from '../../atoms/input-field' -import SelectField from '../../atoms/select-field' +import InputField from "../../atoms/input-field"; +import SelectField from "../../atoms/select-field"; -import { setSelectedStar, resetSelectedStar, resetModalStatus } from '../../../actions/common' -import { createSubAssignment } from '../../../actions/subassignmnets' +import { + setSelectedStar, + resetSelectedStar, + resetModalStatus +} from "../../../actions/common"; +import { createSubAssignment } from "../../../actions/subassignmnets"; -import FormSubmitBtn from '../../atoms/buttons/form-submit-btn' +import FormSubmitBtn from "../../atoms/buttons/form-submit-btn"; interface AssignmentFormProps { - assignmentId: string + assignmentId: string; - selectedStar: any - currentProject: any + selectedStar: any; + currentProject: any; - setSelectedStar: any - resetSelectedStar: any - resetModalStatus: any - createSubAssignment: any + setSelectedStar: any; + resetSelectedStar: any; + resetModalStatus: any; + createSubAssignment: any; } interface CreateSubAssignmentValues { - title: string - description: string - deadline: string - planet_size: string + title: string; + description: string; + deadline: string; + planet_size: string; } class SubAssignmentForm extends React.Component { render() { - const satelite_type: any = this.props.selectedStar // reducerでの型付けと対応 - const { assignmentId } = this.props + const satelite_type: any = this.props.selectedStar; // reducerでの型付けと対応 + const { assignmentId } = this.props; return (
    New SubAssignment
    { this.props.createSubAssignment( @@ -53,13 +57,21 @@ class SubAssignmentForm extends React.Component { satelite_type, values.planet_size, assignmentId - ) - this.props.resetSelectedStar() - this.props.resetModalStatus() - actions.setSubmitting(false) + ); + this.props.resetSelectedStar(); + this.props.resetModalStatus(); + actions.setSubmitting(false); }} > - {({ values, errors, touched, handleChange, handleBlur, handleSubmit, isSubmitting }) => ( + {({ + values, + errors, + touched, + handleChange, + handleBlur, + handleSubmit, + isSubmitting + }) => (
    { )}
    - ) + ); } } const mapStateToProps = ({ selectedStar, currentProject }: any) => { - return { selectedStar, currentProject } -} + return { selectedStar, currentProject }; +}; const mapDispatchToProps = (dispatch: any) => { return bindActionCreators( - { setSelectedStar, resetSelectedStar, resetModalStatus, createSubAssignment }, + { + setSelectedStar, + resetSelectedStar, + resetModalStatus, + createSubAssignment + }, dispatch - ) -} + ); +}; export default connect( mapStateToProps, mapDispatchToProps -)(SubAssignmentForm) +)(SubAssignmentForm); diff --git a/src/javascripts/components/molecules/history-canvas.tsx b/src/javascripts/components/molecules/history-canvas.tsx index ec7b830..289615f 100644 --- a/src/javascripts/components/molecules/history-canvas.tsx +++ b/src/javascripts/components/molecules/history-canvas.tsx @@ -1,92 +1,142 @@ -import * as React from 'react' -import { connect } from 'react-redux' +import * as React from "react"; +import { connect } from "react-redux"; -import ProjectPageLink from './project-page-link' -import { fetchDestroyedAssignments } from '../../actions/assignments' +import ProjectPageLink from "./project-page-link"; +import { fetchDestroyedAssignments } from "../../actions/assignments"; interface HistoryCanvasProps { - history: any - match: any + history: any; + match: any; - destroyedAssignments: any + destroyedAssignments: any; - fetchDestroyedAssignments: any + fetchDestroyedAssignments: any; } class HistoryCanvas extends React.Component { componentDidMount() { - this.props.fetchDestroyedAssignments() - this.updateCanvas() + this.props.fetchDestroyedAssignments(); + this.updateCanvas(); } componentDidUpdate() { - this.updateCanvas() + this.updateCanvas(); } updateCanvas() { - const canvas: any = document.getElementById('background-liner') - if (!canvas) return - const context = canvas.getContext('2d') - this.drawLiner(context) + const canvas: any = document.getElementById("background-liner"); + if (!canvas) return; + const context = canvas.getContext("2d"); + this.drawLiner(context); } drawLiner(context: any) { - if (!context) return - context.strokeStyle = 'rgb(255, 255, 255)' + if (!context) return; + context.strokeStyle = "rgb(255, 255, 255)"; - const initialHeight = 50 - const leftEnd = 100 - const rightEnd = 800 - const radius = 50 + const initialHeight = 50; + const leftEnd = 100; + const rightEnd = 800; + const radius = 50; - context.beginPath() - context.moveTo(leftEnd, initialHeight) + context.beginPath(); + context.moveTo(leftEnd, initialHeight); - context.beginPath() - context.moveTo(50, 100) + context.beginPath(); + context.moveTo(50, 100); // 座標を指定してラインを引いていく - context.lineTo(rightEnd, 100) - context.arc(rightEnd, 150, radius, (-90 / 180) * Math.PI, (90 / 180) * Math.PI, false) - context.moveTo(rightEnd, 200) - context.lineTo(leftEnd, 200) - context.arc(leftEnd, 250, radius, (-90 / 180) * Math.PI, (90 / 180) * Math.PI, true) - context.moveTo(leftEnd, 300) - context.lineTo(rightEnd, 300) - context.arc(rightEnd, 350, radius, (-90 / 180) * Math.PI, (90 / 180) * Math.PI, false) - context.moveTo(rightEnd, 400) - context.lineTo(leftEnd, 400) - context.arc(leftEnd, 450, radius, (-90 / 180) * Math.PI, (90 / 180) * Math.PI, true) - context.moveTo(leftEnd, 500) - context.lineTo(rightEnd, 500) - context.arc(rightEnd, 550, radius, (-90 / 180) * Math.PI, (90 / 180) * Math.PI, false) - context.moveTo(rightEnd, 600) - context.lineTo(leftEnd, 600) - context.arc(leftEnd, 650, radius, (-90 / 180) * Math.PI, (90 / 180) * Math.PI, true) - context.moveTo(leftEnd, 700) - context.lineTo(rightEnd, 700) + context.lineTo(rightEnd, 100); + context.arc( + rightEnd, + 150, + radius, + (-90 / 180) * Math.PI, + (90 / 180) * Math.PI, + false + ); + context.moveTo(rightEnd, 200); + context.lineTo(leftEnd, 200); + context.arc( + leftEnd, + 250, + radius, + (-90 / 180) * Math.PI, + (90 / 180) * Math.PI, + true + ); + context.moveTo(leftEnd, 300); + context.lineTo(rightEnd, 300); + context.arc( + rightEnd, + 350, + radius, + (-90 / 180) * Math.PI, + (90 / 180) * Math.PI, + false + ); + context.moveTo(rightEnd, 400); + context.lineTo(leftEnd, 400); + context.arc( + leftEnd, + 450, + radius, + (-90 / 180) * Math.PI, + (90 / 180) * Math.PI, + true + ); + context.moveTo(leftEnd, 500); + context.lineTo(rightEnd, 500); + context.arc( + rightEnd, + 550, + radius, + (-90 / 180) * Math.PI, + (90 / 180) * Math.PI, + false + ); + context.moveTo(rightEnd, 600); + context.lineTo(leftEnd, 600); + context.arc( + leftEnd, + 650, + radius, + (-90 / 180) * Math.PI, + (90 / 180) * Math.PI, + true + ); + context.moveTo(leftEnd, 700); + context.lineTo(rightEnd, 700); // 現在のパスを輪郭表示する - context.stroke() + context.stroke(); } render() { - const { destroyedAssignments } = this.props - if (!destroyedAssignments || Object.keys(destroyedAssignments).length === 0) { + const { destroyedAssignments } = this.props; + if ( + !destroyedAssignments || + Object.keys(destroyedAssignments).length === 0 + ) { return (
    -
    ProjectPageから星を消してみよう!
    - +
    + ProjectPageから星を消してみよう! +
    +
    - ) + ); } return (
    - ) + ); } } export default connect( ({ destroyedAssignments }: any) => ({ destroyedAssignments }), { fetchDestroyedAssignments } -)(HistoryCanvas) +)(HistoryCanvas); diff --git a/src/javascripts/components/molecules/meteorite.tsx b/src/javascripts/components/molecules/meteorite.tsx index 1252815..6677b59 100644 --- a/src/javascripts/components/molecules/meteorite.tsx +++ b/src/javascripts/components/molecules/meteorite.tsx @@ -1,327 +1,349 @@ -import * as React from 'react' -import { connect } from 'react-redux' -import _ from 'lodash' -import anime from 'animejs' -import Alert from 'react-s-alert' +import * as React from "react"; +import { connect } from "react-redux"; +import _ from "lodash"; +import anime from "animejs"; +import Alert from "react-s-alert"; -import ActionBtn from '../atoms/buttons/action-btn' +import ActionBtn from "../atoms/buttons/action-btn"; -import { resetDestroyAction, resetModalStatus } from '../../actions/common' -import { destroyAssignment, resetSelectedAssignment } from '../../actions/assignments' -import { destroyProject, resetSelectedProject } from '../../actions/projects' +import { resetDestroyAction, resetModalStatus } from "../../actions/common"; +import { + destroyAssignment, + resetSelectedAssignment +} from "../../actions/assignments"; +import { destroyProject, resetSelectedProject } from "../../actions/projects"; -import { DeleteActions } from '../../constants/images' +import { DeleteActions } from "../../constants/images"; interface MeteoriteProps { - icon: string - actionBtnClass: string - history: any - currentUser: any - motionControll: () => void - onClick: () => void - - selectedAssignments: any - destroyedAssignments: any - selectedDestroyAction: any - modalOpen: any - selectedProject: any - - resetDestroyAction: any - resetModalStatus: any - destroyAssignment: any - resetSelectedAssignment: any - destroyProject: any - resetSelectedProject: any + icon: string; + actionBtnClass: string; + history: any; + currentUser: any; + motionControll: () => void; + onClick: () => void; + + selectedAssignments: any; + destroyedAssignments: any; + selectedDestroyAction: any; + modalOpen: any; + selectedProject: any; + + resetDestroyAction: any; + resetModalStatus: any; + destroyAssignment: any; + resetSelectedAssignment: any; + destroyProject: any; + resetSelectedProject: any; } class Meteorite extends React.Component { componentDidUpdate(/*prevProps, prevState*/) { - const { selectedAssignments, selectedProject, modalOpen, selectedDestroyAction } = this.props - if (selectedAssignments.length === 0 && selectedProject.length === 0) return - if (modalOpen !== '') return - if (selectedDestroyAction !== 'Meteorite') return - this.onIgniteDestroyAnimation() + const { + selectedAssignments, + selectedProject, + modalOpen, + selectedDestroyAction + } = this.props; + if (selectedAssignments.length === 0 && selectedProject.length === 0) { + return; + } + if (modalOpen !== "") return; + if (selectedDestroyAction !== "Meteorite") return; + this.onIgniteDestroyAnimation(); } onIgniteDestroyAnimation() { - const targetDom: any = document.getElementById('project-page-container') - const insertDom: any = document.getElementById('project-container') - const actionType: any = this.props.selectedDestroyAction - let newDiv: any = document.createElement('div') - let newImg: any = document.createElement('img') - newDiv.classList.add('destroy-action') - newImg.src = DeleteActions[actionType] - newDiv.appendChild(newImg) - targetDom.insertBefore(newDiv, insertDom) - this.makeMovement(newDiv) + const targetDom: any = document.getElementById("project-page-container"); + const insertDom: any = document.getElementById("project-container"); + const actionType: any = this.props.selectedDestroyAction; + let newDiv: any = document.createElement("div"); + let newImg: any = document.createElement("img"); + newDiv.classList.add("destroy-action"); + newImg.src = DeleteActions[actionType]; + newDiv.appendChild(newImg); + targetDom.insertBefore(newDiv, insertDom); + this.makeMovement(newDiv); } makeMovement(targetDiv: any) { - const { selectedAssignments, selectedProject } = this.props - const movDom: any = targetDiv + const { selectedAssignments, selectedProject } = this.props; + const movDom: any = targetDiv; const targetIdName = selectedAssignments.length !== 0 ? `planet-${selectedAssignments[0]}` - : `project-${selectedProject[0]}` - const targetDom: any = document.getElementById(targetIdName) // should be div.id="planet-2-Earth" class="planet-medium-secundus" + : `project-${selectedProject[0]}`; + const targetDom: any = document.getElementById(targetIdName); // should be div.id="planet-2-Earth" class="planet-medium-secundus" if (!targetDom) { - this.showErrorFlash('Sorry, something went wrong. Please reload and try again...') - return + this.showErrorFlash( + "Sorry, something went wrong. Please reload and try again..." + ); + return; } // 要素の位置座標を取得. - const clientRectMov: any = movDom.getBoundingClientRect() - const clientRectTarget: any = targetDom.getBoundingClientRect() + const clientRectMov: any = movDom.getBoundingClientRect(); + const clientRectTarget: any = targetDom.getBoundingClientRect(); // 要素の大きさを取得 - const TargetWidth: number = targetDom.clientWidth - const TargetHeight: number = targetDom.clientHeight + const TargetWidth: number = targetDom.clientWidth; + const TargetHeight: number = targetDom.clientHeight; // 画面の左端から、要素の左端までの距離 - const xM: number = clientRectMov.left - const xT: number = clientRectTarget.left + const xM: number = clientRectMov.left; + const xT: number = clientRectTarget.left; // 画面の上端から、要素の上端までの距離 - const yM: number = clientRectMov.top - const yT: number = clientRectTarget.top + const yM: number = clientRectMov.top; + const yT: number = clientRectTarget.top; // 目標惑星中心までの距離(px)とArctanへの引数 - const disX: number = xT - xM - const disY: number = yT - yM - let arcvalue: number + const disX: number = xT - xM; + const disY: number = yT - yM; + let arcvalue: number; if (disX < 0) { - arcvalue = -disY / disX + arcvalue = -disY / disX; } else { - arcvalue = disY / disX + arcvalue = disY / disX; } - const deg: number = (Math.atan(arcvalue) * 180) / Math.PI - 4 + const deg: number = (Math.atan(arcvalue) * 180) / Math.PI - 4; const MissileTransforms = anime({ - targets: '#project-page-container .destroy-action', + targets: "#project-page-container .destroy-action", rotate: { value: -deg, duration: 1000, - easing: 'easeInQuart', + easing: "easeInQuart" }, translateX: { value: disX - TargetWidth, duration: 1700, - easing: 'easeInExpo', - delay: 500, + easing: "easeInExpo", + delay: 500 }, traslateY: { value: disY + TargetHeight, duration: 1700, - easing: 'easeInExpo', - delay: 500, - }, - }) + easing: "easeInExpo", + delay: 500 + } + }); setTimeout(() => { - this.destroyPlanets(selectedProject.length !== 0 ? selectedProject : selectedAssignments) - }, 2450) + this.destroyPlanets( + selectedProject.length !== 0 ? selectedProject : selectedAssignments + ); + }, 2450); } showSuccessFlash(successMessage: string) { Alert.success(successMessage, { - position: 'top-right', - effect: 'jelly', + position: "top-right", + effect: "jelly", timeout: 3000, - offset: 80, - }) + offset: 80 + }); } showErrorFlash(errorMessage: string) { Alert.error(errorMessage, { - position: 'top-right', - effect: 'jelly', + position: "top-right", + effect: "jelly", timeout: 3000, - offset: 80, - }) + offset: 80 + }); } // 削除されたAssignmentIdをcanvasのidから特定し、destroyedAssignmentsに格納 removeAssignmentData(parent: any) { _.forEach(parent, (destroyDom: any) => { - let destroyedCvs: any = destroyDom.children[1] - let destroyedAssignmentId: string = destroyedCvs.id.split('-')[0] - this.props.destroyAssignment(destroyedAssignmentId) - }) + let destroyedCvs: any = destroyDom.children[1]; + let destroyedAssignmentId: string = destroyedCvs.id.split("-")[0]; + this.props.destroyAssignment(destroyedAssignmentId); + }); } // 削除されたProjectIdをcanvasのidから特定し、destroyedProjectに格納 removeProjectData(destroyDom: any) { - const destroyedCvs: any = destroyDom[0].firstChild - const destroyedProjectId: string = destroyedCvs.id.split('-')[0] + const destroyedCvs: any = destroyDom[0].firstChild; + const destroyedProjectId: string = destroyedCvs.id.split("-")[0]; this.props .destroyProject(destroyedProjectId) .then(() => { - this.showSuccessFlash('Successfully destroyed. Moving to mypage...') + this.showSuccessFlash("Successfully destroyed. Moving to mypage..."); setTimeout(() => { - this.props.history.push(`/users/${this.props.currentUser.id}`) - }, 3000) + this.props.history.push(`/users/${this.props.currentUser.id}`); + }, 3000); }) .catch(() => - this.showErrorFlash('Sorry, something went wrong. Please reload and try again...') - ) + this.showErrorFlash( + "Sorry, something went wrong. Please reload and try again..." + ) + ); } destroyPlanets(selectedPlanetIds: any) { - const target_ids: any = selectedPlanetIds - const isProject: boolean = this.props.selectedProject.length !== 0 + const target_ids: any = selectedPlanetIds; + const isProject: boolean = this.props.selectedProject.length !== 0; - let parent: any = [] - let canvasEl: any = [] - let ctx: any = [] + let parent: any = []; + let canvasEl: any = []; + let ctx: any = []; if (target_ids.length > 0) { target_ids.forEach((id: string) => { - let tar: any = document.getElementById(id) - parent.push(tar.parentNode) - canvasEl.push(tar) - ctx.push(tar.getContext('2d')) - }) + let tar: any = document.getElementById(id); + parent.push(tar.parentNode); + canvasEl.push(tar); + ctx.push(tar.getContext("2d")); + }); } - const numberOfParticules: number = 70 - const colors: string[] = ['#FFF', '#FFF', '#FFF', '#FFF'] + const numberOfParticules: number = 70; + const colors: string[] = ["#FFF", "#FFF", "#FFF", "#FFF"]; - let pointerX: number = 0 - let pointerY: number = 0 + let pointerX: number = 0; + let pointerY: number = 0; function setCanvasSize() { if (isProject) { - const target = canvasEl[0] - target.style.width = '100vw' - target.style.height = '100vh' - target.width = 1000 - target.height = 600 - target.style.zIndex = 500 - target.getContext('2d').scale(2, 2) + const target = canvasEl[0]; + target.style.width = "100vw"; + target.style.height = "100vh"; + target.width = 1000; + target.height = 600; + target.style.zIndex = 500; + target.getContext("2d").scale(2, 2); } else { canvasEl.forEach((target: any, i: number) => { - target.style.width = parent[i].parentNode.clientWidth + 'px' - target.style.height = parent[i].parentNode.clientHeight + 'px' - target.style.top = `-${parent[i].parentNode.clientWidth / 2}px` - target.style.left = `-${parent[i].parentNode.clientHeight / 2}px` - target.width = parent[i].parentNode.clientWidth - target.height = parent[i].parentNode.clientHeight - target.style.zIndex = 500 - target.getContext('2d').scale(2, 2) - }) + target.style.width = parent[i].parentNode.clientWidth + "px"; + target.style.height = parent[i].parentNode.clientHeight + "px"; + target.style.top = `-${parent[i].parentNode.clientWidth / 2}px`; + target.style.left = `-${parent[i].parentNode.clientHeight / 2}px`; + target.width = parent[i].parentNode.clientWidth; + target.height = parent[i].parentNode.clientHeight; + target.style.zIndex = 500; + target.getContext("2d").scale(2, 2); + }); } } function updateCoords() { if (isProject) { - pointerX = 300 - pointerY = 150 + pointerX = 300; + pointerY = 150; } else { - pointerX = 60 - pointerY = 60 + pointerX = 60; + pointerY = 60; } } function removeImg() { _.forEach(parent, (doc: any) => { - const child: any = isProject ? doc.children[0] : doc.children[1] - doc.removeChild(child) - }) + const child: any = isProject ? doc.children[0] : doc.children[1]; + doc.removeChild(child); + }); } function removeDestroyImg() { - const targetDom: any = document.getElementById('project-page-container') - const movDom: any = document.getElementsByClassName('destroy-action')[0] + const targetDom: any = document.getElementById("project-page-container"); + const movDom: any = document.getElementsByClassName("destroy-action")[0]; - targetDom.removeChild(movDom) + targetDom.removeChild(movDom); } function setParticuleDirection(p: any) { - let angle: any = (anime.random(0, 360) * Math.PI) / 180 - let value: any = anime.random(50, 180) - let radius: any = [-1, 1][anime.random(0, 1)] * value + let angle: any = (anime.random(0, 360) * Math.PI) / 180; + let value: any = anime.random(50, 180); + let radius: any = [-1, 1][anime.random(0, 1)] * value; return { x: p.x + radius * Math.cos(angle), - y: p.y + radius * Math.sin(angle), - } + y: p.y + radius * Math.sin(angle) + }; } function createParticule(x: number, y: number) { - let p: any = {} - p.x = x - p.y = y - p.color = colors[anime.random(0, colors.length - 1)] - p.radius = anime.random(10, 20) - p.endPos = setParticuleDirection(p) + let p: any = {}; + p.x = x; + p.y = y; + p.color = colors[anime.random(0, colors.length - 1)]; + p.radius = anime.random(10, 20); + p.endPos = setParticuleDirection(p); p.draw = function() { ctx.forEach((tar: any) => { - tar.beginPath() - tar.arc(p.x, p.y, p.radius, 0, 2 * Math.PI, true) - tar.fillStyle = p.color - tar.fill() - }) - } - return p + tar.beginPath(); + tar.arc(p.x, p.y, p.radius, 0, 2 * Math.PI, true); + tar.fillStyle = p.color; + tar.fill(); + }); + }; + return p; } function renderParticule(anim: any) { for (let i = 0; i < anim.animatables.length; i++) { - anim.animatables[i].target.draw() + anim.animatables[i].target.draw(); } } function animateParticules(x: number, y: number) { - let particules = [] + let particules = []; for (let i = 0; i < numberOfParticules; i++) { - particules.push(createParticule(x, y)) + particules.push(createParticule(x, y)); } anime.timeline().add({ targets: particules, x: function(p: any) { - return p.endPos.x + return p.endPos.x; }, y: function(p: any) { - return p.endPos.y + return p.endPos.y; }, radius: 0.1, duration: anime.random(1200, 1800), - easing: 'easeOutExpo', - update: renderParticule, - }) + easing: "easeOutExpo", + update: renderParticule + }); } function clear() { ctx.forEach((val: any, i: number) => { - val.clearRect(0, 0, canvasEl[i].width, canvasEl[i].height) - }) + val.clearRect(0, 0, canvasEl[i].width, canvasEl[i].height); + }); } const render: anime.AnimeInstance = anime({ targets: null, duration: Infinity, - update: clear, - }) - - setCanvasSize() - window.addEventListener('resize', setCanvasSize, false) - render.play() - updateCoords() - removeImg() - removeDestroyImg() - animateParticules(pointerX, pointerY) - this.props.resetDestroyAction() - this.props.resetSelectedAssignment() + update: clear + }); + + setCanvasSize(); + window.addEventListener("resize", setCanvasSize, false); + render.play(); + updateCoords(); + removeImg(); + removeDestroyImg(); + animateParticules(pointerX, pointerY); + this.props.resetDestroyAction(); + this.props.resetSelectedAssignment(); if (isProject) { - this.removeProjectData(parent) + this.removeProjectData(parent); } else { - this.removeAssignmentData(parent) + this.removeAssignmentData(parent); } - this.props.motionControll() + this.props.motionControll(); } render() { - const { icon, actionBtnClass, onClick } = this.props - return + const { icon, actionBtnClass, onClick } = this.props; + return ( + + ); } } @@ -331,13 +353,13 @@ export default connect( destroyedAssignments, selectedDestroyAction, modalOpen, - selectedProject, + selectedProject }: any) => ({ selectedAssignments, destroyedAssignments, selectedDestroyAction, modalOpen, - selectedProject, + selectedProject }), { resetDestroyAction, @@ -345,6 +367,6 @@ export default connect( destroyAssignment, resetSelectedAssignment, destroyProject, - resetSelectedProject, + resetSelectedProject } -)(Meteorite) +)(Meteorite); diff --git a/src/javascripts/components/molecules/missile.tsx b/src/javascripts/components/molecules/missile.tsx index 9a2b4f2..bb918a9 100644 --- a/src/javascripts/components/molecules/missile.tsx +++ b/src/javascripts/components/molecules/missile.tsx @@ -1,332 +1,354 @@ -import * as React from 'react' -import { connect } from 'react-redux' -import _ from 'lodash' -import anime from 'animejs' -import Alert from 'react-s-alert' +import * as React from "react"; +import { connect } from "react-redux"; +import _ from "lodash"; +import anime from "animejs"; +import Alert from "react-s-alert"; -import ActionBtn from '../atoms/buttons/action-btn' +import ActionBtn from "../atoms/buttons/action-btn"; -import { resetDestroyAction, resetModalStatus } from '../../actions/common' -import { destroyAssignment, resetSelectedAssignment } from '../../actions/assignments' -import { destroyProject, resetSelectedProject } from '../../actions/projects' +import { resetDestroyAction, resetModalStatus } from "../../actions/common"; +import { + destroyAssignment, + resetSelectedAssignment +} from "../../actions/assignments"; +import { destroyProject, resetSelectedProject } from "../../actions/projects"; -import { DeleteActions } from '../../constants/images' +import { DeleteActions } from "../../constants/images"; interface MissleProps { - icon: string - actionBtnClass: string - history: any - currentUser: any - motionControll: () => void - onClick: () => void - - selectedAssignments: any - destroyedAssignments: any - selectedDestroyAction: any - modalOpen: any - selectedProject: any - - resetDestroyAction: any - resetModalStatus: any - destroyAssignment: any - resetSelectedAssignment: any - destroyProject: any - resetSelectedProject: any + icon: string; + actionBtnClass: string; + history: any; + currentUser: any; + motionControll: () => void; + onClick: () => void; + + selectedAssignments: any; + destroyedAssignments: any; + selectedDestroyAction: any; + modalOpen: any; + selectedProject: any; + + resetDestroyAction: any; + resetModalStatus: any; + destroyAssignment: any; + resetSelectedAssignment: any; + destroyProject: any; + resetSelectedProject: any; } class Missle extends React.Component { componentDidUpdate(/*prevProps, prevState*/) { - const { selectedAssignments, selectedProject, modalOpen, selectedDestroyAction } = this.props - if (selectedAssignments.length === 0 && selectedProject.length === 0) return - if (modalOpen !== '') return - if (selectedDestroyAction !== 'Missile') return - this.onIgniteDestroyAnimation() + const { + selectedAssignments, + selectedProject, + modalOpen, + selectedDestroyAction + } = this.props; + if (selectedAssignments.length === 0 && selectedProject.length === 0) { + return; + } + if (modalOpen !== "") return; + if (selectedDestroyAction !== "Missile") return; + this.onIgniteDestroyAnimation(); } onIgniteDestroyAnimation() { - const targetDom: any = document.getElementById('project-page-container') - const insertDom: any = document.getElementById('project-container') - const actionType: any = this.props.selectedDestroyAction - let newDiv: any = document.createElement('div') - let newImg: any = document.createElement('img') - newDiv.classList.add('destroy-action') - newImg.src = DeleteActions[actionType] - newDiv.appendChild(newImg) - targetDom.insertBefore(newDiv, insertDom) - this.makeMovement(newDiv) + const targetDom: any = document.getElementById("project-page-container"); + const insertDom: any = document.getElementById("project-container"); + const actionType: any = this.props.selectedDestroyAction; + let newDiv: any = document.createElement("div"); + let newImg: any = document.createElement("img"); + newDiv.classList.add("destroy-action"); + newImg.src = DeleteActions[actionType]; + newDiv.appendChild(newImg); + targetDom.insertBefore(newDiv, insertDom); + this.makeMovement(newDiv); } makeMovement(targetDiv: any) { - const { selectedAssignments, selectedProject } = this.props - const movDom: any = targetDiv + const { selectedAssignments, selectedProject } = this.props; + const movDom: any = targetDiv; const targetIdName = selectedAssignments.length !== 0 ? `planet-${selectedAssignments[0]}` - : `project-${selectedProject[0]}` - const targetDom: any = document.getElementById(targetIdName) // should be div.id="planet-2-Earth" class="planet-medium-secundus" + : `project-${selectedProject[0]}`; + const targetDom: any = document.getElementById(targetIdName); // should be div.id="planet-2-Earth" class="planet-medium-secundus" if (!targetDom) { - this.showErrorFlash('Sorry, something went wrong. Please reload and try again...') - return + this.showErrorFlash( + "Sorry, something went wrong. Please reload and try again..." + ); + return; } // 要素の位置座標を取得. - const clientRectMov: any = movDom.getBoundingClientRect() - const clientRectTarget: any = targetDom.getBoundingClientRect() + const clientRectMov: any = movDom.getBoundingClientRect(); + const clientRectTarget: any = targetDom.getBoundingClientRect(); // 要素の大きさを取得 - const TargetWidth: number = targetDom.clientWidth - const TargetHeight: number = targetDom.clientHeight + const TargetWidth: number = targetDom.clientWidth; + const TargetHeight: number = targetDom.clientHeight; // 画面の左端から、要素の左端までの距離 - const xM: number = clientRectMov.left - const xT: number = clientRectTarget.left + const xM: number = clientRectMov.left; + const xT: number = clientRectTarget.left; // 画面の上端から、要素の上端までの距離 - const yM: number = clientRectMov.top - const yT: number = clientRectTarget.top + const yM: number = clientRectMov.top; + const yT: number = clientRectTarget.top; // 目標惑星中心までの距離(px)とArctanへの引数 - let disX: number = xT - xM - const disY: number = yT - yM - let arcvalue: number + let disX: number = xT - xM; + const disY: number = yT - yM; + let arcvalue: number; if (disX < 0) { - arcvalue = -disY / disX + arcvalue = -disY / disX; } else { - arcvalue = disY / disX + arcvalue = disY / disX; } - const deg: number = (Math.atan(arcvalue) * 180) / Math.PI - 4 + const deg: number = (Math.atan(arcvalue) * 180) / Math.PI - 4; const MissileTransforms = anime({ - targets: '#project-page-container .destroy-action', + targets: "#project-page-container .destroy-action", rotate: { value: -deg, duration: 1000, - easing: 'easeInQuart', + easing: "easeInQuart" }, translateX: { value: disX - TargetWidth, duration: 1780, - easing: 'easeInExpo', - delay: 500, + easing: "easeInExpo", + delay: 500 }, traslateY: { value: disY + TargetHeight, duration: 1780, - easing: 'easeInExpo', - delay: 500, - }, - }) + easing: "easeInExpo", + delay: 500 + } + }); setTimeout(() => { - this.destroyPlanets(selectedProject.length !== 0 ? selectedProject : selectedAssignments) - }, 2450) + this.destroyPlanets( + selectedProject.length !== 0 ? selectedProject : selectedAssignments + ); + }, 2450); } showSuccessFlash(successMessage: string) { Alert.success(successMessage, { - position: 'top-right', - effect: 'jelly', + position: "top-right", + effect: "jelly", timeout: 3000, - offset: 80, - }) + offset: 80 + }); } showErrorFlash(errorMessage: string) { Alert.error(errorMessage, { - position: 'top-right', - effect: 'jelly', + position: "top-right", + effect: "jelly", timeout: 3000, - offset: 80, - }) + offset: 80 + }); } // 削除されたAssignmentIdをcanvasのidから特定し、destroyedAssignmentsに格納 removeAssignmentData(parent: any) { _.forEach(parent, (destroyDom: any) => { - const destroyedCvs: any = destroyDom.children[1] - const destroyedAssignmentId: string = destroyedCvs.id.split('-')[0] - this.props.destroyAssignment(destroyedAssignmentId) - }) + const destroyedCvs: any = destroyDom.children[1]; + const destroyedAssignmentId: string = destroyedCvs.id.split("-")[0]; + this.props.destroyAssignment(destroyedAssignmentId); + }); } // 削除されたProjectIdをcanvasのidから特定し、destroyedProjectに格納 removeProjectData(destroyDom: any) { - const destroyedCvs: any = destroyDom[0].firstChild - const destroyedProjectId: string = destroyedCvs.id.split('-')[0] + const destroyedCvs: any = destroyDom[0].firstChild; + const destroyedProjectId: string = destroyedCvs.id.split("-")[0]; this.props .destroyProject(destroyedProjectId) .then(() => { - this.showSuccessFlash('Successfully destroyed. Moving to mypage...') + this.showSuccessFlash("Successfully destroyed. Moving to mypage..."); setTimeout(() => { - this.props.history.push(`/users/${this.props.currentUser.id}`) - }, 3000) + this.props.history.push(`/users/${this.props.currentUser.id}`); + }, 3000); }) .catch(() => - this.showErrorFlash('Sorry, something went wrong. Please reload and try again...') - ) + this.showErrorFlash( + "Sorry, something went wrong. Please reload and try again..." + ) + ); } destroyPlanets(selectedPlanetIds: any) { - const target_ids: any = selectedPlanetIds - const isProject: boolean = this.props.selectedProject.length !== 0 + const target_ids: any = selectedPlanetIds; + const isProject: boolean = this.props.selectedProject.length !== 0; - const parent: any = [] - const canvasEl: any = [] - const ctx: any = [] + const parent: any = []; + const canvasEl: any = []; + const ctx: any = []; if (target_ids.length > 0) { target_ids.forEach((id: string) => { - const tar: any = document.getElementById(id) - parent.push(tar.parentNode) - canvasEl.push(tar) - ctx.push(tar.getContext('2d')) - }) + const tar: any = document.getElementById(id); + parent.push(tar.parentNode); + canvasEl.push(tar); + ctx.push(tar.getContext("2d")); + }); } - const numberOfParticules: number = 70 - const colors: string[] = ['#FFF', '#FFF', '#FFF', '#FFF'] + const numberOfParticules: number = 70; + const colors: string[] = ["#FFF", "#FFF", "#FFF", "#FFF"]; - let pointerX: number = 0 - let pointerY: number = 0 + let pointerX: number = 0; + let pointerY: number = 0; function setCanvasSize() { if (isProject) { - const target = canvasEl[0] - target.style.width = '100vw' - target.style.height = '100vh' - target.width = 1000 - target.height = 600 - target.style.zIndex = 500 - target.getContext('2d').scale(2, 2) + const target = canvasEl[0]; + target.style.width = "100vw"; + target.style.height = "100vh"; + target.width = 1000; + target.height = 600; + target.style.zIndex = 500; + target.getContext("2d").scale(2, 2); } else { canvasEl.forEach((target: any, i: number) => { - target.style.width = parent[i].parentNode.clientWidth + 'px' - target.style.height = parent[i].parentNode.clientHeight + 'px' - target.style.top = `-${parent[i].parentNode.clientWidth / 2}px` - target.style.left = `-${parent[i].parentNode.clientHeight / 2}px` - target.width = parent[i].parentNode.clientWidth - target.height = parent[i].parentNode.clientHeight - target.style.zIndex = 500 - target.getContext('2d').scale(2, 2) - }) + target.style.width = parent[i].parentNode.clientWidth + "px"; + target.style.height = parent[i].parentNode.clientHeight + "px"; + target.style.top = `-${parent[i].parentNode.clientWidth / 2}px`; + target.style.left = `-${parent[i].parentNode.clientHeight / 2}px`; + target.width = parent[i].parentNode.clientWidth; + target.height = parent[i].parentNode.clientHeight; + target.style.zIndex = 500; + target.getContext("2d").scale(2, 2); + }); } } function updateCoords() { if (isProject) { - pointerX = 300 - pointerY = 150 + pointerX = 300; + pointerY = 150; } else { - pointerX = 60 - pointerY = 60 + pointerX = 60; + pointerY = 60; } } function removeImg() { _.forEach(parent, (doc: any) => { - const child: any = isProject ? doc.children[0] : doc.children[1] + const child: any = isProject ? doc.children[0] : doc.children[1]; if (!isProject) { - if (child.classList.contains('warning-animation')) { - child.classList.remove('warning-animation') + if (child.classList.contains("warning-animation")) { + child.classList.remove("warning-animation"); } } - doc.removeChild(child) - }) + doc.removeChild(child); + }); } function removeDestroyImg() { - const targetDom: any = document.getElementById('project-page-container') - const movDom: any = document.getElementsByClassName('destroy-action')[0] + const targetDom: any = document.getElementById("project-page-container"); + const movDom: any = document.getElementsByClassName("destroy-action")[0]; - targetDom.removeChild(movDom) + targetDom.removeChild(movDom); } function setParticuleDirection(p: any) { - const angle: any = (anime.random(0, 360) * Math.PI) / 180 - const value: any = anime.random(50, 180) - const radius: any = [-1, 1][anime.random(0, 1)] * value + const angle: any = (anime.random(0, 360) * Math.PI) / 180; + const value: any = anime.random(50, 180); + const radius: any = [-1, 1][anime.random(0, 1)] * value; return { x: p.x + radius * Math.cos(angle), - y: p.y + radius * Math.sin(angle), - } + y: p.y + radius * Math.sin(angle) + }; } function createParticule(x: number, y: number) { - let p: any = {} - p.x = x - p.y = y - p.color = colors[anime.random(0, colors.length - 1)] - p.radius = anime.random(10, 20) - p.endPos = setParticuleDirection(p) + let p: any = {}; + p.x = x; + p.y = y; + p.color = colors[anime.random(0, colors.length - 1)]; + p.radius = anime.random(10, 20); + p.endPos = setParticuleDirection(p); p.draw = function() { ctx.forEach((tar: any) => { - tar.beginPath() - tar.arc(p.x, p.y, p.radius, 0, 2 * Math.PI, true) - tar.fillStyle = p.color - tar.fill() - }) - } - return p + tar.beginPath(); + tar.arc(p.x, p.y, p.radius, 0, 2 * Math.PI, true); + tar.fillStyle = p.color; + tar.fill(); + }); + }; + return p; } function renderParticule(anim: any) { for (let i = 0; i < anim.animatables.length; i++) { - anim.animatables[i].target.draw() + anim.animatables[i].target.draw(); } } function animateParticules(x: number, y: number) { - const particules = [] + const particules = []; for (let i = 0; i < numberOfParticules; i++) { - particules.push(createParticule(x, y)) + particules.push(createParticule(x, y)); } anime.timeline().add({ targets: particules, x: function(p: any) { - return p.endPos.x + return p.endPos.x; }, y: function(p: any) { - return p.endPos.y + return p.endPos.y; }, radius: 0.1, duration: anime.random(1200, 1800), - easing: 'easeOutExpo', - update: renderParticule, - }) + easing: "easeOutExpo", + update: renderParticule + }); } function clear() { ctx.forEach((val: any, i: number) => { - val.clearRect(0, 0, canvasEl[i].width, canvasEl[i].height) - }) + val.clearRect(0, 0, canvasEl[i].width, canvasEl[i].height); + }); } const render: anime.AnimeInstance = anime({ targets: null, duration: Infinity, - update: clear, - }) - - setCanvasSize() - window.addEventListener('resize', setCanvasSize, false) - render.play() - updateCoords() - removeImg() - removeDestroyImg() - animateParticules(pointerX, pointerY) - this.props.resetDestroyAction() - this.props.resetSelectedAssignment() - this.props.resetSelectedProject() - this.props.motionControll() + update: clear + }); + + setCanvasSize(); + window.addEventListener("resize", setCanvasSize, false); + render.play(); + updateCoords(); + removeImg(); + removeDestroyImg(); + animateParticules(pointerX, pointerY); + this.props.resetDestroyAction(); + this.props.resetSelectedAssignment(); + this.props.resetSelectedProject(); + this.props.motionControll(); if (isProject) { - this.removeProjectData(parent) + this.removeProjectData(parent); } else { - this.removeAssignmentData(parent) + this.removeAssignmentData(parent); } } render() { - const { icon, actionBtnClass, onClick } = this.props - return + const { icon, actionBtnClass, onClick } = this.props; + return ( + + ); } } @@ -336,13 +358,13 @@ export default connect( destroyedAssignments, selectedDestroyAction, modalOpen, - selectedProject, + selectedProject }: any) => ({ selectedAssignments, destroyedAssignments, selectedDestroyAction, modalOpen, - selectedProject, + selectedProject }), { resetDestroyAction, @@ -350,6 +372,6 @@ export default connect( destroyAssignment, resetSelectedAssignment, destroyProject, - resetSelectedProject, + resetSelectedProject } -)(Missle) +)(Missle); diff --git a/src/javascripts/components/molecules/mypage-orbit.tsx b/src/javascripts/components/molecules/mypage-orbit.tsx index 78b5fb1..bfe39c4 100644 --- a/src/javascripts/components/molecules/mypage-orbit.tsx +++ b/src/javascripts/components/molecules/mypage-orbit.tsx @@ -1,117 +1,131 @@ -import * as React from 'react' -import { connect } from 'react-redux' -import _ from 'lodash' +import * as React from "react"; +import { connect } from "react-redux"; +import _ from "lodash"; -import PopupBox from '../atoms/popup-box' -import Planet from '../molecules/planet' +import PopupBox from "../atoms/popup-box"; +import Planet from "../molecules/planet"; -import { setCurrentProject, fetchRevolvingProjects } from '../../actions/projects' -import { setModalStatus } from '../../actions/common' +import { + setCurrentProject, + fetchRevolvingProjects +} from "../../actions/projects"; +import { setModalStatus } from "../../actions/common"; interface MypageOrbitProps { - history: any - match: any + history: any; + match: any; - modalOpen: any - revolvingProjects: any + modalOpen: any; + revolvingProjects: any; - setModalStatus: any - setCurrentProject: any - fetchRevolvingProjects: any + setModalStatus: any; + setCurrentProject: any; + fetchRevolvingProjects: any; } class MypageOrbit extends React.Component { componentDidMount() { - this.setDrop() - if (!this.props.revolvingProjects) this.props.fetchRevolvingProjects() + this.setDrop(); + if (!this.props.revolvingProjects) this.props.fetchRevolvingProjects(); } setDrop() { // Droppable area - const target = document.getElementById('mypage-circle') + const target = document.getElementById("mypage-circle"); // Entering into the droppable area target.addEventListener( - 'dragenter', + "dragenter", () => { - if (!target.classList.contains('circle-shadow')) { - target.classList.add('circle-shadow') + if (!target.classList.contains("circle-shadow")) { + target.classList.add("circle-shadow"); } }, false - ) + ); // Leaving from the droppable area target.addEventListener( - 'dragleave', + "dragleave", () => { - if (target.classList.contains('circle-shadow')) { - target.classList.remove('circle-shadow') + if (target.classList.contains("circle-shadow")) { + target.classList.remove("circle-shadow"); } }, false - ) + ); // Over the droppable area target.addEventListener( - 'dragover', + "dragover", (e: any) => { - e.preventDefault() + e.preventDefault(); }, false - ) + ); // Drop target.addEventListener( - 'drop', + "drop", (e: any) => { - e.preventDefault() - if (target.classList.contains('circle-shadow')) { - target.classList.remove('circle-shadow') + e.preventDefault(); + if (target.classList.contains("circle-shadow")) { + target.classList.remove("circle-shadow"); } if (!this.props.modalOpen) { - this.props.setModalStatus('form-project') + this.props.setModalStatus("form-project"); } }, false - ) + ); } onClickProjectPlanet(projectId: string) { // TODO: プロジェクトページへ遷移する前になんらかのアニメーション追加(Fadeoutとか) - this.props.setCurrentProject(this.props.revolvingProjects[projectId], () => { - this.props.history.push(`${this.props.match.url}/projects`) - }) + this.props.setCurrentProject( + this.props.revolvingProjects[projectId], + () => { + this.props.history.push(`${this.props.match.url}/projects`); + } + ); } render() { - const { revolvingProjects }: any = this.props + const { revolvingProjects }: any = this.props; if (!revolvingProjects) { return (
    - ) + ); } - const pos: any = ['top', 'right', 'left', 'bottom'] - const projectList: any = _.map(revolvingProjects, (project: any, index: any) => { - return ( -
    + const pos: any = ["top", "right", "left", "bottom"]; + const projectList: any = _.map( + revolvingProjects, + (project: any, index: any) => { + return (
    - - +
    + + +
    -
    - ) - }) + ); + } + ); return (
    @@ -119,11 +133,11 @@ class MypageOrbit extends React.Component { {projectList}
    - ) + ); } } export default connect( ({ revolvingProjects, modalOpen }: any) => ({ revolvingProjects, modalOpen }), { setModalStatus, setCurrentProject, fetchRevolvingProjects } -)(MypageOrbit) +)(MypageOrbit); diff --git a/src/javascripts/components/molecules/mypage-user-info.tsx b/src/javascripts/components/molecules/mypage-user-info.tsx index f320ef5..170bae7 100644 --- a/src/javascripts/components/molecules/mypage-user-info.tsx +++ b/src/javascripts/components/molecules/mypage-user-info.tsx @@ -1,6 +1,6 @@ -import * as React from 'react' -import UserImg from '../atoms/user-img' -import WelcomeUser from '../atoms/welcome-user' +import * as React from "react"; +import UserImg from "../atoms/user-img"; +import WelcomeUser from "../atoms/welcome-user"; // なんかもう少しいいコンポーネント名ないかな // currentUserの実態がわかるdefault定義をしたい @@ -9,6 +9,6 @@ const MypageUserInfo: React.SFC = ({ currentUser = null }: any) => (
    -) +); -export default MypageUserInfo +export default MypageUserInfo; diff --git a/src/javascripts/components/molecules/planet-holder-list.tsx b/src/javascripts/components/molecules/planet-holder-list.tsx index a57139a..320a6bf 100644 --- a/src/javascripts/components/molecules/planet-holder-list.tsx +++ b/src/javascripts/components/molecules/planet-holder-list.tsx @@ -1,21 +1,23 @@ -import * as React from 'react' +import * as React from "react"; -import PlanetList from '../molecules/planet-list' +import PlanetList from "../molecules/planet-list"; -import { FixedStarImgs, NormalPlanetImgs } from '../../constants/images' +import { FixedStarImgs, NormalPlanetImgs } from "../../constants/images"; interface PlanetHolderListProps { - pathname: any + pathname: any; } const PlanetHolderList: React.SFC = ({ pathname }) => { - const PlanetImgs = pathname.includes('projects') ? NormalPlanetImgs : FixedStarImgs + const PlanetImgs = pathname.includes("projects") + ? NormalPlanetImgs + : FixedStarImgs; const planetList = Object.keys(PlanetImgs).map(key => { - return - }) + return ; + }); - return
      {planetList}
    -} + return
      {planetList}
    ; +}; -export default PlanetHolderList +export default PlanetHolderList; diff --git a/src/javascripts/components/molecules/planet-holder.tsx b/src/javascripts/components/molecules/planet-holder.tsx index b383bb3..3fe6db5 100644 --- a/src/javascripts/components/molecules/planet-holder.tsx +++ b/src/javascripts/components/molecules/planet-holder.tsx @@ -1,12 +1,12 @@ -import * as React from 'react' -import PlanetHolderOpener from '../atoms/buttons/planet-holder-opener' -import PlanetHolderList from '../molecules/planet-holder-list' +import * as React from "react"; +import PlanetHolderOpener from "../atoms/buttons/planet-holder-opener"; +import PlanetHolderList from "../molecules/planet-holder-list"; const PlanetHolder = ({ pathname, currentUser }: any) => (
    -) +); -export default PlanetHolder +export default PlanetHolder; diff --git a/src/javascripts/components/molecules/planet-list.tsx b/src/javascripts/components/molecules/planet-list.tsx index 612df8b..8100313 100644 --- a/src/javascripts/components/molecules/planet-list.tsx +++ b/src/javascripts/components/molecules/planet-list.tsx @@ -1,36 +1,36 @@ -import * as React from 'react' -import { connect } from 'react-redux' +import * as React from "react"; +import { connect } from "react-redux"; -import Planet from './planet' +import Planet from "./planet"; -import { setSelectedStar, resetSelectedStar } from '../../actions/common' +import { setSelectedStar, resetSelectedStar } from "../../actions/common"; interface PlanetListProps { - planetType: string + planetType: string; - selectedStar: any + selectedStar: any; - setSelectedStar: any - resetSelectedStar: any + setSelectedStar: any; + resetSelectedStar: any; } class PlanetList extends React.Component { componentDidMount() { - this.setDragnDrop() + this.setDragnDrop(); } setDragnDrop() { // Draggable Element - const target = document.getElementById(this.props.planetType) + const target = document.getElementById(this.props.planetType); // Start of dragging target.addEventListener( - 'dragstart', + "dragstart", () => { - this.props.setSelectedStar(this.props.planetType) + this.props.setSelectedStar(this.props.planetType); }, false - ) + ); // During dragging // target.addEventListener('drag', () => {}, false) @@ -40,17 +40,17 @@ class PlanetList extends React.Component { } render() { - const { planetType } = this.props + const { planetType } = this.props; return (
  • - ) + ); } } export default connect( ({ selectedStar }: any) => ({ selectedStar }), { setSelectedStar, resetSelectedStar } -)(PlanetList) +)(PlanetList); diff --git a/src/javascripts/components/molecules/planet.tsx b/src/javascripts/components/molecules/planet.tsx index 79ff74a..837be4e 100644 --- a/src/javascripts/components/molecules/planet.tsx +++ b/src/javascripts/components/molecules/planet.tsx @@ -1,93 +1,106 @@ -import * as React from 'react' -import { connect } from 'react-redux' -import Alert from 'react-s-alert' +import * as React from "react"; +import { connect } from "react-redux"; +import Alert from "react-s-alert"; -import CheckMark from '../atoms/check-mark' -import PlanetImg from '../atoms/planet-img' +import CheckMark from "../atoms/check-mark"; +import PlanetImg from "../atoms/planet-img"; -import { selectAssignment, disselectAssignment } from '../../actions/assignments' -import { selectProject, disselectProject } from '../../actions/projects' +import { + selectAssignment, + disselectAssignment +} from "../../actions/assignments"; +import { selectProject, disselectProject } from "../../actions/projects"; -import { PlanetImgs } from '../../constants/images' +import { PlanetImgs } from "../../constants/images"; interface PlanetProps { - className: string - planetType: string + className: string; + planetType: string; - selectedProject: any - selectedAssignments: any + selectedProject: any; + selectedAssignments: any; - selectAssignment: any - disselectAssignment: any - selectProject: any - disselectProject: any + selectAssignment: any; + disselectAssignment: any; + selectProject: any; + disselectProject: any; } class Planet extends React.Component { onMouseOver(e: any) { - const targetPlanet = e.target.parentNode.parentNode.firstChild // e.g. div.detail-ballon - const firstClass = targetPlanet.classList[0] + const targetPlanet = e.target.parentNode.parentNode.firstChild; // e.g. div.detail-ballon + const firstClass = targetPlanet.classList[0]; - if (firstClass && firstClass.includes('popup')) { - targetPlanet.style.display = 'block' + if (firstClass && firstClass.includes("popup")) { + targetPlanet.style.display = "block"; } } onMouseOut(e: any) { - const targetPlanet: any = e.target.parentNode.parentNode.firstChild - const firstClass = targetPlanet.classList[0] + const targetPlanet: any = e.target.parentNode.parentNode.firstChild; + const firstClass = targetPlanet.classList[0]; - if (firstClass && firstClass.includes('popup')) { - targetPlanet.style.display = 'none' + if (firstClass && firstClass.includes("popup")) { + targetPlanet.style.display = "none"; } } showErrorFlash(errorMessage: string) { Alert.error(errorMessage, { - position: 'top-right', - effect: 'jelly', + position: "top-right", + effect: "jelly", timeout: 3000, - offset: 80, - }) + offset: 80 + }); } onSelected(e: any) { // TODO: ifがネストしているなど可読性が低いので要リファクタリング // この条件分岐は仕様的にリファクタは厳しいと思います - const target: any = e.target.parentNode.children[1] // e.target = .planet-img-container -> div.mark-container - const targetPlanet: any = e.target.parentNode.parentNode // id #planet-2-Earth - const selectedPlanet: string = targetPlanet.id.split('-') // Array(planet, 2, Earth) - - if (target.style === 'undefined') return - - if (target.style.display === 'block') { - target.style.display = 'none' - if (selectedPlanet[0] === 'planet') { - this.props.disselectAssignment(`${selectedPlanet[1]}-${selectedPlanet[2]}`) + const target: any = e.target.parentNode.children[1]; // e.target = .planet-img-container -> div.mark-container + const targetPlanet: any = e.target.parentNode.parentNode; // id #planet-2-Earth + const selectedPlanet: string = targetPlanet.id.split("-"); // Array(planet, 2, Earth) + + if (target.style === "undefined") return; + + if (target.style.display === "block") { + target.style.display = "none"; + if (selectedPlanet[0] === "planet") { + this.props.disselectAssignment( + `${selectedPlanet[1]}-${selectedPlanet[2]}` + ); } else { - this.props.disselectProject(`${selectedPlanet[1]}-${selectedPlanet[2]}`) + this.props.disselectProject( + `${selectedPlanet[1]}-${selectedPlanet[2]}` + ); } - } else if (target.style.display === '' || target.style.display === 'none') { - if (selectedPlanet[0] === 'planet') { + } else if (target.style.display === "" || target.style.display === "none") { + if (selectedPlanet[0] === "planet") { if (this.props.selectedProject.length === 0) { - target.style.display = 'block' - this.props.selectAssignment(`${selectedPlanet[1]}-${selectedPlanet[2]}`) + target.style.display = "block"; + this.props.selectAssignment( + `${selectedPlanet[1]}-${selectedPlanet[2]}` + ); } else { - this.showErrorFlash('Unable to select both fixed star and planets at the same time...') + this.showErrorFlash( + "Unable to select both fixed star and planets at the same time..." + ); } } else { if (this.props.selectedAssignments.length === 0) { - target.style.display = 'block' - this.props.selectProject(`${selectedPlanet[1]}-${selectedPlanet[2]}`) + target.style.display = "block"; + this.props.selectProject(`${selectedPlanet[1]}-${selectedPlanet[2]}`); } else { - this.showErrorFlash('Unable to select both fixed star and planets at the same time...') + this.showErrorFlash( + "Unable to select both fixed star and planets at the same time..." + ); } } } } render() { - const { className, planetType } = this.props + const { className, planetType } = this.props; return (
    {
    - ) + ); } } export default connect( - ({ selectedProject, selectedAssignments }: any) => ({ selectedProject, selectedAssignments }), + ({ selectedProject, selectedAssignments }: any) => ({ + selectedProject, + selectedAssignments + }), { selectAssignment, disselectAssignment, selectProject, disselectProject } -)(Planet) +)(Planet); diff --git a/src/javascripts/components/molecules/project-bar.tsx b/src/javascripts/components/molecules/project-bar.tsx index 1676a3c..d3c46f7 100644 --- a/src/javascripts/components/molecules/project-bar.tsx +++ b/src/javascripts/components/molecules/project-bar.tsx @@ -1,26 +1,29 @@ -import * as React from 'react' -import { connect } from 'react-redux' -import _ from 'lodash' +import * as React from "react"; +import { connect } from "react-redux"; +import _ from "lodash"; -import FixedStarInList from '../atoms/fixed-star-in-list' -import { fetchRevolvingAssignments } from '../../actions/assignments' -import { changeCurrentProject } from '../../actions/projects' +import FixedStarInList from "../atoms/fixed-star-in-list"; +import { fetchRevolvingAssignments } from "../../actions/assignments"; +import { changeCurrentProject } from "../../actions/projects"; -import '../../../stylesheets/project_bar.scss' +import "../../../stylesheets/project_bar.scss"; interface Props { - currentProject: any + currentProject: any; - changeCurrentProject: any - revolvingProjects: any - fetchRevolvingAssignments: any + changeCurrentProject: any; + revolvingProjects: any; + fetchRevolvingAssignments: any; } class ProjectBar extends React.Component { onClickFixedStarOnBar(nextProjectId: any) { - this.props.changeCurrentProject(this.props.revolvingProjects[nextProjectId], () => { - this.props.fetchRevolvingAssignments(nextProjectId) - }) + this.props.changeCurrentProject( + this.props.revolvingProjects[nextProjectId], + () => { + this.props.fetchRevolvingAssignments(nextProjectId); + } + ); } render() { @@ -33,19 +36,19 @@ class ProjectBar extends React.Component { className="revolving-project" onClick={this.onClickFixedStarOnBar.bind(this, project.id)} /> - ) + ); } - }) + }); return (
      {ProjectList}
    - ) + ); } } export default connect( ({ revolvingProjects }: any) => ({ revolvingProjects }), { changeCurrentProject, fetchRevolvingAssignments } -)(ProjectBar) +)(ProjectBar); diff --git a/src/javascripts/components/molecules/project-page-link.tsx b/src/javascripts/components/molecules/project-page-link.tsx index 38c7b1b..de64b28 100644 --- a/src/javascripts/components/molecules/project-page-link.tsx +++ b/src/javascripts/components/molecules/project-page-link.tsx @@ -1,34 +1,40 @@ -import * as React from 'react' -import { connect } from 'react-redux' -import _ from 'lodash' +import * as React from "react"; +import { connect } from "react-redux"; +import _ from "lodash"; -import PlanetImg from '../atoms/planet-img' +import PlanetImg from "../atoms/planet-img"; -import { setCurrentProject, fetchRevolvingProjects } from '../../actions/projects' +import { + setCurrentProject, + fetchRevolvingProjects +} from "../../actions/projects"; -import { PlanetImgs } from '../../constants/images' +import { PlanetImgs } from "../../constants/images"; interface ProjectPageLinkProps { - history: any - match: any + history: any; + match: any; - revolvingProjects: any + revolvingProjects: any; - setCurrentProject: any - fetchRevolvingProjects: any + setCurrentProject: any; + fetchRevolvingProjects: any; } class ProjectPageLink extends React.Component { componentDidMount() { if (!this.props.revolvingProjects) { - this.props.fetchRevolvingProjects() + this.props.fetchRevolvingProjects(); } } onClickProjectPlanet(projectId: string) { - const url = this.props.match.url.replace(/\/history/, '') - this.props.setCurrentProject(this.props.revolvingProjects[projectId], () => { - this.props.history.push(`${url}/projects`) - }) + const url = this.props.match.url.replace(/\/history/, ""); + this.props.setCurrentProject( + this.props.revolvingProjects[projectId], + () => { + this.props.history.push(`${url}/projects`); + } + ); } render() { @@ -43,14 +49,14 @@ class ProjectPageLink extends React.Component { >
    - ) + ); })}
    - ) + ); } } export default connect( ({ revolvingProjects }: any) => ({ revolvingProjects }), { setCurrentProject, fetchRevolvingProjects } -)(ProjectPageLink) +)(ProjectPageLink); diff --git a/src/javascripts/components/molecules/revival.tsx b/src/javascripts/components/molecules/revival.tsx index 0139ebb..159d715 100644 --- a/src/javascripts/components/molecules/revival.tsx +++ b/src/javascripts/components/molecules/revival.tsx @@ -1,70 +1,79 @@ -import * as React from 'react' -import { connect } from 'react-redux' -import anime from 'animejs' +import * as React from "react"; +import { connect } from "react-redux"; +import anime from "animejs"; -import ActionBtn from '../atoms/buttons/action-btn' +import ActionBtn from "../atoms/buttons/action-btn"; -import { restoreAssignment, resetSelectedAssignment } from '../../actions/assignments' -import { resetDestroyAction } from '../../actions/common' +import { + restoreAssignment, + resetSelectedAssignment +} from "../../actions/assignments"; +import { resetDestroyAction } from "../../actions/common"; interface RevivalProps { - icon: string - actionBtnClass: string - onClick: () => void + icon: string; + actionBtnClass: string; + onClick: () => void; - selectedAssignments: any + selectedAssignments: any; - modalOpen: any - selectedDestroyAction: any + modalOpen: any; + selectedDestroyAction: any; - resetSelectedAssignment: any - restoreAssignment: any - resetDestroyAction: any + resetSelectedAssignment: any; + restoreAssignment: any; + resetDestroyAction: any; } class Revival extends React.Component { componentDidUpdate() { - if (this.props.selectedAssignments.length === 0) return - if (this.props.modalOpen !== '') return - if (this.props.selectedDestroyAction !== 'Revival') return - this.iginiteRevivalAnimation() + if (this.props.selectedAssignments.length === 0) return; + if (this.props.modalOpen !== "") return; + if (this.props.selectedDestroyAction !== "Revival") return; + this.iginiteRevivalAnimation(); } iginiteRevivalAnimation() { Promise.resolve() .then(() => { this.props.selectedAssignments.forEach((assignment: string) => { - this.removeImg(assignment) + this.removeImg(assignment); setTimeout(() => { - this.props.restoreAssignment(assignment.split('-')[0]) - }, 1000) - }) + this.props.restoreAssignment(assignment.split("-")[0]); + }, 1000); + }); }) .then(() => { - this.props.resetDestroyAction() - this.props.resetSelectedAssignment() - }) + this.props.resetDestroyAction(); + this.props.resetSelectedAssignment(); + }); } removeImg(assignmentId: string) { anime({ targets: `#planet-${assignmentId} .stored-planet`, rotate: { - value: '6turn', + value: "6turn", duration: 1500, - easing: 'easeInExpo', + easing: "easeInExpo" }, opacity: { value: [1, 0], duration: 1500, - easing: 'easeInExpo', - }, - }) + easing: "easeInExpo" + } + }); } render() { - const { icon, actionBtnClass, onClick } = this.props + const { icon, actionBtnClass, onClick } = this.props; - return + return ( + + ); } } @@ -72,7 +81,7 @@ export default connect( ({ selectedAssignments, selectedDestroyAction, modalOpen }: any) => ({ selectedAssignments, selectedDestroyAction, - modalOpen, + modalOpen }), { restoreAssignment, resetSelectedAssignment, resetDestroyAction } -)(Revival) +)(Revival); diff --git a/src/javascripts/components/molecules/stored-planet-list.tsx b/src/javascripts/components/molecules/stored-planet-list.tsx index 1ad2cd4..61635b3 100644 --- a/src/javascripts/components/molecules/stored-planet-list.tsx +++ b/src/javascripts/components/molecules/stored-planet-list.tsx @@ -1,20 +1,20 @@ -import * as React from 'react' -import { connect } from 'react-redux' -import _ from 'lodash' +import * as React from "react"; +import { connect } from "react-redux"; +import _ from "lodash"; -import Planet from './planet' -import PopupBox from '../atoms/popup-box' +import Planet from "./planet"; +import PopupBox from "../atoms/popup-box"; interface StoredPlanetListProps { - selectedAssignments: any + selectedAssignments: any; - destroyedAssignments: any + destroyedAssignments: any; } class StoredPlanetList extends React.Component { renderList() { - const contentList: any = [] - const { destroyedAssignments } = this.props + const contentList: any = []; + const { destroyedAssignments } = this.props; function renderPlanetDays(dayDestroyedAssignments: any) { _.forEach(dayDestroyedAssignments, (assignment: any) => { @@ -25,95 +25,98 @@ class StoredPlanetList extends React.Component { className="stored-planet-container" > - +
    - ) - }) + ); + }); } function renderPlanetYears(yearDestroyedAssignments: any) { - const days: any = Object.keys(yearDestroyedAssignments) // + const days: any = Object.keys(yearDestroyedAssignments); // days.forEach((day: any) => { contentList.push(
    {day}
    - ) - renderPlanetDays(yearDestroyedAssignments[day]) - }) + ); + renderPlanetDays(yearDestroyedAssignments[day]); + }); } function renderStoredPlanetList() { - if (!destroyedAssignments) return - const years: any = Object.keys(destroyedAssignments) // + if (!destroyedAssignments) return; + const years: any = Object.keys(destroyedAssignments); // years.forEach((year: any) => { contentList.push(
    {year}
    - ) - renderPlanetYears(destroyedAssignments[year]) - }) + ); + renderPlanetYears(destroyedAssignments[year]); + }); } // ゴリ押しアルゴリズム function iterator(collection: any, howMany: number) { - let count = 0 + let count = 0; function next() { - let index = howMany * count - let result = collection.slice(index, index + howMany) - count += 1 - return result + let index = howMany * count; + let result = collection.slice(index, index + howMany); + count += 1; + return result; } function hasNext() { - let index = howMany * count - return collection.slice(index, index + howMany).length > 0 + let index = howMany * count; + return collection.slice(index, index + howMany).length > 0; } - return { next: next, hasNext: hasNext } + return { next: next, hasNext: hasNext }; } - renderStoredPlanetList() + renderStoredPlanetList(); - const itered = iterator(contentList, 6) - const result: any = [] - let count: number = 0 + const itered = iterator(contentList, 6); + const result: any = []; + let count: number = 0; while (itered.hasNext()) { if (count % 2 === 0) { itered.next().forEach((assignment: any) => { - result.push(assignment) - }) + result.push(assignment); + }); } else { - let tmpList = itered.next().reverse() + let tmpList = itered.next().reverse(); tmpList.forEach((assignment: any) => { - result.push(assignment) - }) + result.push(assignment); + }); } - count += 1 + count += 1; } - return result + return result; } render() { - const { destroyedAssignments } = this.props - if (!destroyedAssignments) return
    Loading....
    - if (Object.keys(destroyedAssignments).length === 0) return
    - const contentList = this.renderList() + const { destroyedAssignments } = this.props; + if (!destroyedAssignments) return
    Loading....
    ; + if (Object.keys(destroyedAssignments).length === 0) return
    ; + const contentList = this.renderList(); return (
    {_.forEach(contentList, (content: any) => { - return content + return content; })}
    - ) + ); } } export default connect( ({ selectedAssignments, destroyedAssignments }: any) => ({ selectedAssignments, - destroyedAssignments, + destroyedAssignments }), {} -)(StoredPlanetList) +)(StoredPlanetList); diff --git a/src/javascripts/components/molecules/user-img-updater.tsx b/src/javascripts/components/molecules/user-img-updater.tsx index 4125622..5044b43 100644 --- a/src/javascripts/components/molecules/user-img-updater.tsx +++ b/src/javascripts/components/molecules/user-img-updater.tsx @@ -1,12 +1,12 @@ -import * as React from 'react' -import UserImg from '../atoms/user-img' -import SelectUserImgBtn from '../atoms/buttons/select-user-img-btn' +import * as React from "react"; +import UserImg from "../atoms/user-img"; +import SelectUserImgBtn from "../atoms/buttons/select-user-img-btn"; const UserImgUpdater = ({ currentUser }: any) => (
    -) +); -export default UserImgUpdater +export default UserImgUpdater; diff --git a/src/javascripts/components/organisms/footer.tsx b/src/javascripts/components/organisms/footer.tsx index 85013a9..9bf4620 100644 --- a/src/javascripts/components/organisms/footer.tsx +++ b/src/javascripts/components/organisms/footer.tsx @@ -1,46 +1,46 @@ -import * as React from 'react' +import * as React from "react"; -import PlanetHolder from '../molecules/planet-holder' -import FooterActionBtnList from '../molecules/footer-action-btn-list' -import ConfirmModal from './modals/confirm-modal' -import FormModal from './modals/form-modal' -import TutorialModal from './modals/tutorial-modal' +import PlanetHolder from "../molecules/planet-holder"; +import FooterActionBtnList from "../molecules/footer-action-btn-list"; +import ConfirmModal from "./modals/confirm-modal"; +import FormModal from "./modals/form-modal"; +import TutorialModal from "./modals/tutorial-modal"; -import '../../../stylesheets/destroy_animate.scss' +import "../../../stylesheets/destroy_animate.scss"; interface FooterProps { - currentUser: any - pathname: any - history: any + currentUser: any; + pathname: any; + history: any; } class Footer extends React.Component { componentDidMount() { - let planet_list: any = document.getElementById('planet-list') - planet_list.style.display = 'none' + let planet_list: any = document.getElementById("planet-list"); + planet_list.style.display = "none"; } motionControll() { const orbitalMove: any = [ - document.getElementsByClassName('primo-orbit-motion'), - document.getElementsByClassName('secundus-orbit-motion'), - document.getElementsByClassName('tertius-orbit-motion'), - document.getElementsByClassName('satelite-orbit-motion'), - ] + document.getElementsByClassName("primo-orbit-motion"), + document.getElementsByClassName("secundus-orbit-motion"), + document.getElementsByClassName("tertius-orbit-motion"), + document.getElementsByClassName("satelite-orbit-motion") + ]; for (const target of orbitalMove) { for (let i = 0; i < target.length; i++) { - target[i].classList.toggle('pause-animation') - target[i].classList.toggle('start-animation') - target[i].firstChild.classList.toggle('pause-animation') - target[i].firstChild.classList.toggle('start-animation') + target[i].classList.toggle("pause-animation"); + target[i].classList.toggle("start-animation"); + target[i].firstChild.classList.toggle("pause-animation"); + target[i].firstChild.classList.toggle("start-animation"); } } } render() { - const { currentUser, pathname, history }: any = this.props - const rootPath = `/users/${currentUser.id}` + const { currentUser, pathname, history }: any = this.props; + const rootPath = `/users/${currentUser.id}`; return ( - ) + ); } } -export default Footer +export default Footer; diff --git a/src/javascripts/components/organisms/header.tsx b/src/javascripts/components/organisms/header.tsx index 8c6526a..d6b398e 100644 --- a/src/javascripts/components/organisms/header.tsx +++ b/src/javascripts/components/organisms/header.tsx @@ -1,8 +1,8 @@ import styled from "@emotion/styled"; -import * as React from 'react' +import * as React from "react"; import Img from "../atoms/Image"; -import HeaderRightLinks from '../molecules/HeaderRightLinks' +import HeaderRightLinks from "../molecules/HeaderRightLinks"; interface Props extends React.Attributes { currentUser: any; @@ -10,11 +10,12 @@ interface Props extends React.Attributes { pathname: any; } -const Header:React.FC = ({ currentUser, history, pathname }) => { - const rootPath = `/users/${currentUser.id}` - const isLeftSideLinkShow = /^\/users\/[1-9]\d*\/projects$/.test(pathname) || - pathname === `${rootPath}/history` || - pathname === `${rootPath}/edit` +const Header: React.FC = ({ currentUser, history, pathname }) => { + const rootPath = `/users/${currentUser.id}`; + const isLeftSideLinkShow = + /^\/users\/[1-9]\d*\/projects$/.test(pathname) || + pathname === `${rootPath}/history` || + pathname === `${rootPath}/edit`; function onLeftSideLinkClick() { history.push(rootPath); @@ -23,13 +24,24 @@ const Header:React.FC = ({ currentUser, history, pathname }) => { return ( - {currentUser.name} + + {currentUser.name} + {currentUser.name} - + - ) -} + ); +}; const Root = styled.div` margin-top: 20px; @@ -43,8 +55,8 @@ const Root = styled.div` z-index: 1000; `; -const LeftSideLink = styled.div<{isShow: boolean}>` - display: ${(isShow) => isShow ? "flex" : "none"}; +const LeftSideLink = styled.div<{ isShow: boolean }>` + display: ${isShow => (isShow ? "flex" : "none")}; justify-content: flex-start; flex-wrap: wrap; align-items: center; @@ -84,4 +96,4 @@ const UserName = styled.div` letter-spacing: 5px; `; -export default Header +export default Header; diff --git a/src/javascripts/components/organisms/history-page-main.tsx b/src/javascripts/components/organisms/history-page-main.tsx index 51bc75a..bd08ada 100644 --- a/src/javascripts/components/organisms/history-page-main.tsx +++ b/src/javascripts/components/organisms/history-page-main.tsx @@ -1,21 +1,24 @@ -import * as React from 'react' -import { connect } from 'react-redux' -import Alert from 'react-s-alert' +import * as React from "react"; +import { connect } from "react-redux"; +import Alert from "react-s-alert"; -import HistoryCanvas from '../molecules/history-canvas' -import StoredPlanetList from '../molecules/stored-planet-list' +import HistoryCanvas from "../molecules/history-canvas"; +import StoredPlanetList from "../molecules/stored-planet-list"; interface HistoryPageMainProps { - history: any - match: any + history: any; + match: any; } -const HistoryPageMain: React.SFC = ({ history, match }) => ( +const HistoryPageMain: React.SFC = ({ + history, + match +}) => (
    -) +); -export default HistoryPageMain +export default HistoryPageMain; diff --git a/src/javascripts/components/organisms/modals/confirm-modal.tsx b/src/javascripts/components/organisms/modals/confirm-modal.tsx index becd34d..3b8403e 100644 --- a/src/javascripts/components/organisms/modals/confirm-modal.tsx +++ b/src/javascripts/components/organisms/modals/confirm-modal.tsx @@ -1,88 +1,93 @@ -import * as React from 'react' -import { connect } from 'react-redux' -import Modal from 'react-modal' +import * as React from "react"; +import { connect } from "react-redux"; +import Modal from "react-modal"; -import ConfirmBtn from '../../atoms/buttons/confirm-btn' +import ConfirmBtn from "../../atoms/buttons/confirm-btn"; -import { resetDestroyAction, resetModalStatus } from '../../../actions/common' +import { resetDestroyAction, resetModalStatus } from "../../../actions/common"; -import '../../../../stylesheets/modal.scss' +import "../../../../stylesheets/modal.scss"; interface ConfirmModalProps { - motionControll: () => void + motionControll: () => void; - modalOpen: string - resetDestroyAction: any - resetModalStatus: any + modalOpen: string; + resetDestroyAction: any; + resetModalStatus: any; } interface ConfirmModalState { - destroy: string - restore: string + destroy: string; + restore: string; } const customStyles: any = { overlay: { - zIndex: '1000', - backgroundColor: 'rgba(13, 25, 36, 0)', + zIndex: "1000", + backgroundColor: "rgba(13, 25, 36, 0)" }, content: { - display: 'flex', - justifyContent: 'center', - flexWrap: 'wrap', - width: '400px', - height: '100px', - backgroundColor: 'rgba(13, 25, 36, 0.7)', - top: '50%', - left: '50%', - right: 'auto', - bottom: 'auto', - padding: '10px', - marginRight: '-50%', - color: '#fff', - transform: 'translate(-50%, -50%)', - }, -} + display: "flex", + justifyContent: "center", + flexWrap: "wrap", + width: "400px", + height: "100px", + backgroundColor: "rgba(13, 25, 36, 0.7)", + top: "50%", + left: "50%", + right: "auto", + bottom: "auto", + padding: "10px", + marginRight: "-50%", + color: "#fff", + transform: "translate(-50%, -50%)" + } +}; -Modal.setAppElement('#app') +Modal.setAppElement("#app"); -class ConfirmModal extends React.Component { +class ConfirmModal extends React.Component< + ConfirmModalProps, + ConfirmModalState +> { constructor(props: any) { - super(props) + super(props); this.state = { - destroy: '本当に選択タスクを破壊しますか?', - restore: '本当に選択したタスクを元の場所に戻しますか?', - } + destroy: "本当に選択タスクを破壊しますか?", + restore: "本当に選択したタスクを元の場所に戻しますか?" + }; } igniteAction() { - this.props.resetModalStatus() + this.props.resetModalStatus(); } closeModal(/*isDestroy*/) { - this.props.resetDestroyAction() - this.props.resetModalStatus() - this.props.motionControll() + this.props.resetDestroyAction(); + this.props.resetModalStatus(); + this.props.motionControll(); } render() { - const actionTypes = ['Missile', 'Meteorite', 'BlackHole', 'Revival'] - const { modalOpen } = this.props - const { destroy, restore } = this.state + const actionTypes = ["Missile", "Meteorite", "BlackHole", "Revival"]; + const { modalOpen } = this.props; + const { destroy, restore } = this.state; return ( -
    {modalOpen !== 'Revival' ? destroy : restore}
    +
    + {modalOpen !== "Revival" ? destroy : restore} +
    - ) + ); } } @@ -90,6 +95,6 @@ export default connect( ({ modalOpen }: any) => ({ modalOpen }), { resetDestroyAction, - resetModalStatus, + resetModalStatus } -)(ConfirmModal) +)(ConfirmModal); diff --git a/src/javascripts/components/organisms/modals/form-modal.tsx b/src/javascripts/components/organisms/modals/form-modal.tsx index 7fc9c61..9547f0b 100644 --- a/src/javascripts/components/organisms/modals/form-modal.tsx +++ b/src/javascripts/components/organisms/modals/form-modal.tsx @@ -1,98 +1,98 @@ -import * as React from 'react' -import { connect } from 'react-redux' -import Modal from 'react-modal' +import * as React from "react"; +import { connect } from "react-redux"; +import Modal from "react-modal"; -import AssignmentForm from '../../molecules/forms/assignment-form' -import SubAssignmentForm from '../../molecules/forms/subassignmnet-form' -import ProjectForm from '../../molecules/forms/project-form' +import AssignmentForm from "../../molecules/forms/assignment-form"; +import SubAssignmentForm from "../../molecules/forms/subassignmnet-form"; +import ProjectForm from "../../molecules/forms/project-form"; -import { resetModalStatus, resetSelectedStar } from '../../../actions/common' +import { resetModalStatus, resetSelectedStar } from "../../../actions/common"; -import '../../../../stylesheets/modal.scss' -import '../../../../stylesheets/form_on_modal.scss' +import "../../../../stylesheets/modal.scss"; +import "../../../../stylesheets/form_on_modal.scss"; interface FormModalProps { - pathname: any + pathname: any; - selectedStar: any - modalOpen: string + selectedStar: any; + modalOpen: string; - resetSelectedStar: any - resetModalStatus: any + resetSelectedStar: any; + resetModalStatus: any; } const customStyles = { overlay: { - zIndex: '500', - backgroundColor: 'rgba(13, 25, 36, 0)', + zIndex: "500", + backgroundColor: "rgba(13, 25, 36, 0)" }, content: { - display: 'flex', - justifyContent: 'center', - flexWrap: 'wrap', - width: '400px', - height: '240px', - backgroundColor: 'rgba(13, 25, 36)', - top: '50%', - left: '50%', - right: 'auto', - bottom: 'auto', - padding: '10px', - marginRight: '-50%', - color: '#fff', - transform: 'translate(-50%, -50%)', - zIndex: '1000', - }, -} + display: "flex", + justifyContent: "center", + flexWrap: "wrap", + width: "400px", + height: "240px", + backgroundColor: "rgba(13, 25, 36)", + top: "50%", + left: "50%", + right: "auto", + bottom: "auto", + padding: "10px", + marginRight: "-50%", + color: "#fff", + transform: "translate(-50%, -50%)", + zIndex: "1000" + } +}; -Modal.setAppElement('#app') +Modal.setAppElement("#app"); class FormModal extends React.Component { componentDidMount() { - document.addEventListener('click', (e: any) => { - const isOverlayArea = e.target.classList.contains('ReactModal__Overlay') + document.addEventListener("click", (e: any) => { + const isOverlayArea = e.target.classList.contains("ReactModal__Overlay"); if (isOverlayArea) { - this.props.resetSelectedStar() - this.props.resetModalStatus() + this.props.resetSelectedStar(); + this.props.resetModalStatus(); } - }) + }); } renderForm(orbit: string, assignmentId: string) { - const { pathname } = this.props + const { pathname } = this.props; - if (pathname.includes('project')) { - return orbit !== '' ? ( + if (pathname.includes("project")) { + return orbit !== "" ? ( ) : ( - ) + ); } else { - return + return ; } } render() { - const orbit: string = this.props.modalOpen.includes('form') - ? this.props.modalOpen.split('-')[1] - : '' - const assignmentId: string = this.props.modalOpen.includes('satelite') - ? this.props.modalOpen.split('-')[2] - : '' + const orbit: string = this.props.modalOpen.includes("form") + ? this.props.modalOpen.split("-")[1] + : ""; + const assignmentId: string = this.props.modalOpen.includes("satelite") + ? this.props.modalOpen.split("-")[2] + : ""; return ( {this.renderForm(orbit, assignmentId)} - ) + ); } } export default connect( ({ selectedStar, modalOpen }: any) => ({ selectedStar, modalOpen }), { resetModalStatus, resetSelectedStar } -)(FormModal) +)(FormModal); diff --git a/src/javascripts/components/organisms/modals/tutorial-modal.tsx b/src/javascripts/components/organisms/modals/tutorial-modal.tsx index 9261577..f8c8bee 100644 --- a/src/javascripts/components/organisms/modals/tutorial-modal.tsx +++ b/src/javascripts/components/organisms/modals/tutorial-modal.tsx @@ -1,72 +1,78 @@ -import * as React from 'react' -import { connect } from 'react-redux' -import Modal from 'react-modal' +import * as React from "react"; +import { connect } from "react-redux"; +import Modal from "react-modal"; -import MyPageTutorial from '../../atoms/mypage-tutorial' -import ProjectPageTutorial from '../../atoms/projectpage-tutorial' -import ConfirmBtn from '../../atoms/buttons/confirm-btn' +import MyPageTutorial from "../../atoms/mypage-tutorial"; +import ProjectPageTutorial from "../../atoms/projectpage-tutorial"; +import ConfirmBtn from "../../atoms/buttons/confirm-btn"; -import { removeFirstVisitFlag } from '../../../actions/users' +import { removeFirstVisitFlag } from "../../../actions/users"; -import '../../../../stylesheets/tutorial_modal.scss' +import "../../../../stylesheets/tutorial_modal.scss"; interface TutorialModalProps { - currentUser: any - pathname: any + currentUser: any; + pathname: any; - removeFirstVisitFlag: any + removeFirstVisitFlag: any; } interface TutorialModalState { - isFirstMyPgae: boolean - isFirstProjectPage: boolean + isFirstMyPgae: boolean; + isFirstProjectPage: boolean; } const customStyles: any = { overlay: { - zIndex: '1000', - backgroundColor: 'rgba(13, 25, 36, 0)', + zIndex: "1000", + backgroundColor: "rgba(13, 25, 36, 0)" }, content: { - display: 'flex', - justifyContent: 'center', - flexWrap: 'wrap', - width: '550px', - backgroundColor: 'rgba(13, 25, 36, 0.9)', - top: '50%', - left: '50%', - right: 'auto', - bottom: 'auto', - padding: '10px', - marginRight: '-50%', - color: '#fff', - transform: 'translate(-50%, -50%)', - }, -} + display: "flex", + justifyContent: "center", + flexWrap: "wrap", + width: "550px", + backgroundColor: "rgba(13, 25, 36, 0.9)", + top: "50%", + left: "50%", + right: "auto", + bottom: "auto", + padding: "10px", + marginRight: "-50%", + color: "#fff", + transform: "translate(-50%, -50%)" + } +}; -Modal.setAppElement('#app') +Modal.setAppElement("#app"); -class TutorialModal extends React.Component { +class TutorialModal extends React.Component< + TutorialModalProps, + TutorialModalState +> { constructor(props: any) { - super(props) + super(props); this.state = { isFirstMyPgae: - props.currentUser.first_visit_flag && props.pathname === `/users/${props.currentUser.id}`, - isFirstProjectPage: props.currentUser.first_visit_flag && props.pathname.includes('projects'), - } + props.currentUser.first_visit_flag && + props.pathname === `/users/${props.currentUser.id}`, + isFirstProjectPage: + props.currentUser.first_visit_flag && + props.pathname.includes("projects") + }; } closeModal() { - this.setState({ isFirstMyPgae: false }) + this.setState({ isFirstMyPgae: false }); if (this.state.isFirstProjectPage) { - this.props.removeFirstVisitFlag(this.props.currentUser) - this.setState({ isFirstProjectPage: false }) + this.props.removeFirstVisitFlag(this.props.currentUser); + this.setState({ isFirstProjectPage: false }); } } render() { - const { isFirstMyPgae, isFirstProjectPage } = this.state + const { isFirstMyPgae, isFirstProjectPage } = this.state; return (
    - {isFirstMyPgae && !isFirstProjectPage ? : } + {isFirstMyPgae && !isFirstProjectPage ? ( + + ) : ( + + )}
    - ) + ); } } export default connect( null, { - removeFirstVisitFlag, + removeFirstVisitFlag } -)(TutorialModal) +)(TutorialModal); diff --git a/src/javascripts/components/organisms/mypage-main.tsx b/src/javascripts/components/organisms/mypage-main.tsx index 0b9dde0..8b322df 100644 --- a/src/javascripts/components/organisms/mypage-main.tsx +++ b/src/javascripts/components/organisms/mypage-main.tsx @@ -1,22 +1,26 @@ -import * as React from 'react' -import { Redirect } from 'react-router-dom' -import Alert from 'react-s-alert' -import MypageUserInfo from '../molecules/mypage-user-info' -import MypageOrbit from '../molecules/mypage-orbit' +import * as React from "react"; +import { Redirect } from "react-router-dom"; +import Alert from "react-s-alert"; +import MypageUserInfo from "../molecules/mypage-user-info"; +import MypageOrbit from "../molecules/mypage-orbit"; -import '../../../stylesheets/mypage.scss' +import "../../../stylesheets/mypage.scss"; interface MyPageMainProps { - currentUser: any - match: any - history: any + currentUser: any; + match: any; + history: any; } -const MyPageMain: React.SFC = ({ currentUser, match, history }) => { - if (!currentUser) return
    Loading....
    +const MyPageMain: React.SFC = ({ + currentUser, + match, + history +}) => { + if (!currentUser) return
    Loading....
    ; if (currentUser.id !== parseInt(match.params.userId, 10)) { - return + return ; } return ( @@ -25,7 +29,7 @@ const MyPageMain: React.SFC = ({ currentUser, match, history })
    - ) -} + ); +}; -export default MyPageMain +export default MyPageMain; diff --git a/src/javascripts/components/organisms/project-page-main.tsx b/src/javascripts/components/organisms/project-page-main.tsx index 5f9044e..25b1ca6 100644 --- a/src/javascripts/components/organisms/project-page-main.tsx +++ b/src/javascripts/components/organisms/project-page-main.tsx @@ -1,13 +1,13 @@ -import * as React from 'react' -import Alert from 'react-s-alert' -import FixedStar from '../molecules/fixed-star' -import CircleOrbit from '../molecules/circle-orbit' -import ProjectBar from '../molecules/project-bar' +import * as React from "react"; +import Alert from "react-s-alert"; +import FixedStar from "../molecules/fixed-star"; +import CircleOrbit from "../molecules/circle-orbit"; +import ProjectBar from "../molecules/project-bar"; -import '../../../stylesheets/project_page.scss' +import "../../../stylesheets/project_page.scss"; interface Props { - currentProject: any + currentProject: any; } const ProjectPageMain: React.SFC = ({ currentProject }) => ( @@ -21,6 +21,6 @@ const ProjectPageMain: React.SFC = ({ currentProject }) => (
    -) +); -export default ProjectPageMain +export default ProjectPageMain; diff --git a/src/javascripts/components/organisms/setting-page-main.tsx b/src/javascripts/components/organisms/setting-page-main.tsx index aa90cc0..09c9ef3 100644 --- a/src/javascripts/components/organisms/setting-page-main.tsx +++ b/src/javascripts/components/organisms/setting-page-main.tsx @@ -1,20 +1,23 @@ -import * as React from 'react' -import Alert from 'react-s-alert' -import UserImgUpdater from '../molecules/user-img-updater' -import ProfileUpdateForm from '../molecules/forms/profile-update-form' -import SignOutBtn from '../atoms/buttons/sign-out-btn' +import * as React from "react"; +import Alert from "react-s-alert"; +import UserImgUpdater from "../molecules/user-img-updater"; +import ProfileUpdateForm from "../molecules/forms/profile-update-form"; +import SignOutBtn from "../atoms/buttons/sign-out-btn"; interface SettingPageMainProps { - currentUser: any - history: any + currentUser: any; + history: any; } -const SettingPageMain: React.SFC = ({ currentUser, history }) => ( +const SettingPageMain: React.SFC = ({ + currentUser, + history +}) => (
    -) +); -export default SettingPageMain +export default SettingPageMain; diff --git a/src/javascripts/components/pages/guests/TopPage.tsx b/src/javascripts/components/pages/guests/TopPage.tsx index e69de29..1f56f10 100644 --- a/src/javascripts/components/pages/guests/TopPage.tsx +++ b/src/javascripts/components/pages/guests/TopPage.tsx @@ -0,0 +1,104 @@ +import styled from "@emotion/styled"; +import * as React from "react"; + +import Alert from "react-s-alert"; +import Button from "../../atoms/Button"; +import Img from "../../atoms/Image"; + +import { TopPageImgs } from "../../../constants/images"; +import TopLogo from "../../../images/index/logo.png"; +import Planet from "../../../images/index/top_earth.png"; + +import SignInForm from "../../molecules/forms/signin-form"; +import SignUpForm from "../../molecules/forms/signup-form"; + +interface Props extends React.Attributes { + currentUser: any; + pathname: any; + history: any; +} + +const TopPage: React.FC = ({ currentUser, pathname, history }) => { + const [isSignIn, setSignIn] = React.useState(true); + + function onTopPageButtonClick() { + setSignIn(!isSignIn); + } + + return ( + + <_Button onClick={onTopPageButtonClick}> + {isSignIn ? ( + sign-up + ) : ( + sign-in + )} + + + + logo + + + {isSignIn ? ( + + ) : ( + + )} + + + top page planet + + + ); +}; + +const Root = styled.div` + height: 100%; + margin: 0 auto; + position: relative; +`; + +const _Button = styled(Button)` + display: block; + position: fixed; + top: 10px; + right: 10px; + z-index: 1000; +`; + +const Logo = styled.div` + margin: 10px auto; + width: 100%; + text-align: center; + position: absolute; + bottom: 505px; + + img { + margin: 0 auto; + max-width: 550px; + width: 100%; + } +`; + +const SignForm = styled.div` + margin: 0 auto; + width: 100%; + position: absolute; + bottom: 365px; +`; + +const TopPlanet = styled.div` + margin: 0 auto; + width: 100%; + text-align: center; + position: absolute; + bottom: 0; + + img { + margin: auto; + max-width: 900px; + width: 90%; + } +`; + +export default TopPage; diff --git a/src/javascripts/components/pages/users/history-page.tsx b/src/javascripts/components/pages/users/history-page.tsx index d0fc2ae..5198525 100644 --- a/src/javascripts/components/pages/users/history-page.tsx +++ b/src/javascripts/components/pages/users/history-page.tsx @@ -1,14 +1,14 @@ -import * as React from 'react' -import { connect } from 'react-redux' -import Header from '../../organisms/Header' -import HistoryPageMain from '../../organisms/history-page-main' -import Footer from '../../organisms/footer' +import * as React from "react"; +import { connect } from "react-redux"; +import Header from "../../organisms/header"; +import HistoryPageMain from "../../organisms/history-page-main"; +import Footer from "../../organisms/footer"; interface Props { - currentUser: any - location: any - history: any - match: any + currentUser: any; + location: any; + history: any; + match: any; } class HistoryPage extends React.Component { @@ -18,17 +18,27 @@ class HistoryPage extends React.Component { currentUser, history, location: { pathname }, - match, - } = this.props + match + } = this.props; return (
    -
    +
    -
    +
    - ) + ); } } -export default connect(({ currentUser }: any) => ({ currentUser }))(HistoryPage) +export default connect(({ currentUser }: any) => ({ currentUser }))( + HistoryPage +); diff --git a/src/javascripts/components/pages/users/mypage.tsx b/src/javascripts/components/pages/users/mypage.tsx index f5147ed..c0f0331 100644 --- a/src/javascripts/components/pages/users/mypage.tsx +++ b/src/javascripts/components/pages/users/mypage.tsx @@ -1,24 +1,24 @@ -import * as React from 'react' -import { connect } from 'react-redux' +import * as React from "react"; +import { connect } from "react-redux"; -import Header from '../../organisms/Header' -import MyPageMain from '../../organisms/mypage-main' -import Footer from '../../organisms/footer' +import Header from "../../organisms/header"; +import MyPageMain from "../../organisms/mypage-main"; +import Footer from "../../organisms/footer"; -import { fetchRevolvingProjects } from '../../../actions/projects' +import { fetchRevolvingProjects } from "../../../actions/projects"; interface MyPageProps { - currentUser: any - history: any - location: any - match: any + currentUser: any; + history: any; + location: any; + match: any; - fetchRevolvingProjects: any + fetchRevolvingProjects: any; } class MyPage extends React.Component { componentDidMount() { - if (sessionStorage.getItem('jwt')) this.props.fetchRevolvingProjects() + if (sessionStorage.getItem("jwt")) this.props.fetchRevolvingProjects(); } render() { @@ -26,20 +26,28 @@ class MyPage extends React.Component { currentUser, history, location: { pathname }, - match, - } = this.props + match + } = this.props; return (
    -
    +
    -
    +
    - ) + ); } } export default connect( ({ currentUser }: any) => ({ currentUser }), { fetchRevolvingProjects } -)(MyPage) +)(MyPage); diff --git a/src/javascripts/components/pages/users/project-page.tsx b/src/javascripts/components/pages/users/project-page.tsx index d1869f5..52b26db 100644 --- a/src/javascripts/components/pages/users/project-page.tsx +++ b/src/javascripts/components/pages/users/project-page.tsx @@ -1,44 +1,50 @@ -import * as React from 'react' -import { connect } from 'react-redux' -import { Redirect } from 'react-router-dom' +import * as React from "react"; +import { connect } from "react-redux"; +import { Redirect } from "react-router-dom"; -import { fetchRevolvingAssignments } from '../../../actions/assignments' -import { fetchRevolvingProjects, setDefaultProject } from '../../../actions/projects' +import { fetchRevolvingAssignments } from "../../../actions/assignments"; +import { + fetchRevolvingProjects, + setDefaultProject +} from "../../../actions/projects"; -import Header from '../../organisms/Header' -import ProjectPageMain from '../../organisms/project-page-main' -import Footer from '../../organisms/footer' +import Header from "../../organisms/header"; +import ProjectPageMain from "../../organisms/project-page-main"; +import Footer from "../../organisms/footer"; interface Props { - currentUser: any - currentProject: any - history: any - match: any - location: any - revolvingProjects: any - fetchRevolvingAssignments: any - fetchRevolvingProjects: any - setDefaultProject: any + currentUser: any; + currentProject: any; + history: any; + match: any; + location: any; + revolvingProjects: any; + fetchRevolvingAssignments: any; + fetchRevolvingProjects: any; + setDefaultProject: any; } class ProjectPage extends React.Component { componentDidMount() { - const { currentProject, revolvingProjects } = this.props + const { currentProject, revolvingProjects } = this.props; // TODO: リファクタリング if (currentProject) { - this.props.fetchRevolvingAssignments(currentProject.id) + this.props.fetchRevolvingAssignments(currentProject.id); } else if (revolvingProjects) { - this.props.setDefaultProject(revolvingProjects[Object.keys(revolvingProjects)[0]]) + this.props.setDefaultProject( + revolvingProjects[Object.keys(revolvingProjects)[0]] + ); } else { this.props.fetchRevolvingProjects().then(() => { - const { revolvingProjects } = this.props + const { revolvingProjects } = this.props; if (revolvingProjects) { this.props.setDefaultProject( revolvingProjects[Object.keys(revolvingProjects)[0]], - (defaultProjectId: any) => this.props.fetchRevolvingAssignments(defaultProjectId) - ) + (defaultProjectId: any) => + this.props.fetchRevolvingAssignments(defaultProjectId) + ); } - }) + }); } } @@ -48,25 +54,33 @@ class ProjectPage extends React.Component { currentProject, history, match, - location: { pathname }, - } = this.props + location: { pathname } + } = this.props; - if (!currentUser) return
    Loading....
    + if (!currentUser) return
    Loading....
    ; if (currentUser.id !== parseInt(match.params.userId, 10)) { - const correctPath = `/users/${currentUser.id}` - return + const correctPath = `/users/${currentUser.id}`; + return ; } - if (!currentProject) return
    Loading....
    + if (!currentProject) return
    Loading....
    ; return (
    -
    +
    -
    +
    - ) + ); } } @@ -74,11 +88,11 @@ export default connect( ({ currentUser, revolvingProjects, currentProject }: any) => ({ currentUser, revolvingProjects, - currentProject, + currentProject }), { fetchRevolvingAssignments, fetchRevolvingProjects, - setDefaultProject, + setDefaultProject } -)(ProjectPage) +)(ProjectPage); diff --git a/src/javascripts/components/pages/users/setting-page.tsx b/src/javascripts/components/pages/users/setting-page.tsx index c705183..2c2cf86 100644 --- a/src/javascripts/components/pages/users/setting-page.tsx +++ b/src/javascripts/components/pages/users/setting-page.tsx @@ -1,13 +1,13 @@ -import * as React from 'react' -import { connect } from 'react-redux' -import Header from '../../organisms/Header' -import SettingPageMain from '../../organisms/setting-page-main' -import Footer from '../../organisms/footer' +import * as React from "react"; +import { connect } from "react-redux"; +import Header from "../../organisms/header"; +import SettingPageMain from "../../organisms/setting-page-main"; +import Footer from "../../organisms/footer"; interface Props { - currentUser: any - location: any - history: any + currentUser: any; + location: any; + history: any; } class SettingPage extends React.Component { @@ -15,17 +15,27 @@ class SettingPage extends React.Component { const { currentUser, history, - location: { pathname }, - } = this.props + location: { pathname } + } = this.props; return (
    -
    +
    -
    +
    - ) + ); } } -export default connect(({ currentUser }: any) => ({ currentUser }))(SettingPage) +export default connect(({ currentUser }: any) => ({ currentUser }))( + SettingPage +); diff --git a/src/javascripts/constants/Size.ts b/src/javascripts/constants/Size.ts index 50c8931..1134f8e 100644 --- a/src/javascripts/constants/Size.ts +++ b/src/javascripts/constants/Size.ts @@ -1,2 +1,2 @@ -export const HeaderContainerHeight = "60px" -export const HeaderContainerWidth = "130px" +export const HeaderContainerHeight = "60px"; +export const HeaderContainerWidth = "130px"; diff --git a/src/javascripts/constants/action-types.ts b/src/javascripts/constants/action-types.ts index e16a618..b48bc60 100644 --- a/src/javascripts/constants/action-types.ts +++ b/src/javascripts/constants/action-types.ts @@ -1,4 +1,4 @@ -import keyMirror from 'keymirror' +import keyMirror from "keymirror"; export const actionTypes = keyMirror({ // Common @@ -37,5 +37,5 @@ export const actionTypes = keyMirror({ SET_REMOVED_ASSIGNMENTS: null, // SubAssignments - CREATE_SUBASSIGNMENT: null, -}) + CREATE_SUBASSIGNMENT: null +}); diff --git a/src/javascripts/constants/images.ts b/src/javascripts/constants/images.ts index 59c3dc0..b768e4f 100644 --- a/src/javascripts/constants/images.ts +++ b/src/javascripts/constants/images.ts @@ -3,44 +3,44 @@ // ----------------------------------------------------------------------------- // HeaderIcons -import ImgHistoryIcon from '../../images/header/history_icon.png' -import ImgSettingIcon from '../../images/header/setting_icon.png' -import ImgBackIcon from '../../images/header/back_icon.png' -import SignInButton from '../../images/header/sign_in_button.png' -import SignUpButton from '../../images/header/sign_up_button.png' +import ImgHistoryIcon from "../../images/header/history_icon.png"; +import ImgSettingIcon from "../../images/header/setting_icon.png"; +import ImgBackIcon from "../../images/header/back_icon.png"; +import SignInButton from "../../images/header/sign_in_button.png"; +import SignUpButton from "../../images/header/sign_up_button.png"; // planet images -import ImgStar1 from '../../images/planets/star_1.png' -import ImgStar2 from '../../images/planets/star_2.png' -import ImgStar3 from '../../images/planets/star_3.png' -import ImgStar4 from '../../images/planets/star_4.png' -import ImgStar5 from '../../images/planets/star_5.png' -import ImgStar6 from '../../images/planets/star_6.png' -import ImgStar7 from '../../images/planets/star_7.png' -import ImgStar8 from '../../images/planets/star_8.png' -import ImgStar9 from '../../images/planets/star_9.png' -import ImgStar10 from '../../images/planets/star_10.png' -import ImgStar11 from '../../images/planets/star_11.png' -import ImgStar12 from '../../images/planets/star_12.png' -import ImgStar13 from '../../images/planets/star_13.png' -import ImgStar14 from '../../images/planets/star_14.png' -import ImgStar15 from '../../images/planets/star_15.png' +import ImgStar1 from "../../images/planets/star_1.png"; +import ImgStar2 from "../../images/planets/star_2.png"; +import ImgStar3 from "../../images/planets/star_3.png"; +import ImgStar4 from "../../images/planets/star_4.png"; +import ImgStar5 from "../../images/planets/star_5.png"; +import ImgStar6 from "../../images/planets/star_6.png"; +import ImgStar7 from "../../images/planets/star_7.png"; +import ImgStar8 from "../../images/planets/star_8.png"; +import ImgStar9 from "../../images/planets/star_9.png"; +import ImgStar10 from "../../images/planets/star_10.png"; +import ImgStar11 from "../../images/planets/star_11.png"; +import ImgStar12 from "../../images/planets/star_12.png"; +import ImgStar13 from "../../images/planets/star_13.png"; +import ImgStar14 from "../../images/planets/star_14.png"; +import ImgStar15 from "../../images/planets/star_15.png"; // delete icons -import DeleteIcon1 from '../../images/footer/delete_btn_1.png' -import DeleteIcon2 from '../../images/footer/delete_btn_2.png' -import DeleteIcon3 from '../../images/footer/delete_btn_3.png' +import DeleteIcon1 from "../../images/footer/delete_btn_1.png"; +import DeleteIcon2 from "../../images/footer/delete_btn_2.png"; +import DeleteIcon3 from "../../images/footer/delete_btn_3.png"; // revival icons -import RevivalIcon from '../../images/footer/revival_btn.png' +import RevivalIcon from "../../images/footer/revival_btn.png"; // delete action -import MeteoriteImg from '../../images/main/metor.png' -import MissileImg from '../../images/main/missile.png' -import BlackHoleImg from '../../images/main/blackhole.png' +import MeteoriteImg from "../../images/main/metor.png"; +import MissileImg from "../../images/main/missile.png"; +import BlackHoleImg from "../../images/main/blackhole.png"; // Starholder -import ImgHolderOpenImg from '../../images/footer/planet_holder_btn.png' +import ImgHolderOpenImg from "../../images/footer/planet_holder_btn.png"; // ----------------------------------------------------------------------------- // export @@ -49,20 +49,20 @@ import ImgHolderOpenImg from '../../images/footer/planet_holder_btn.png' export const HeaderIcons: any = { HISTORY: ImgHistoryIcon, SETTING: ImgSettingIcon, - BACK: ImgBackIcon, -} + BACK: ImgBackIcon +}; export const TopPageImgs: any = { signIn: SignInButton, - signUp: SignUpButton, -} + signUp: SignUpButton +}; export const FixedStarImgs: any = { Sun: ImgStar11, Venus: ImgStar12, Takoyaki: ImgStar13, - Ball: ImgStar14, -} + Ball: ImgStar14 +}; export const NormalPlanetImgs: any = { Uranus: ImgStar1, @@ -75,8 +75,8 @@ export const NormalPlanetImgs: any = { Mars: ImgStar8, Neputune: ImgStar9, Sirius: ImgStar10, - Egg: ImgStar15, -} + Egg: ImgStar15 +}; export const PlanetImgs: any = { Uranus: ImgStar1, @@ -93,20 +93,20 @@ export const PlanetImgs: any = { Venus: ImgStar12, Takoyaki: ImgStar13, Ball: ImgStar14, - Egg: ImgStar15, -} + Egg: ImgStar15 +}; export const ActionIcons: any = { Revival: RevivalIcon, Meteorite: DeleteIcon1, Missile: DeleteIcon2, - BlackHole: DeleteIcon3, -} + BlackHole: DeleteIcon3 +}; export const DeleteActions: any = { Meteorite: MeteoriteImg, Missile: MissileImg, - BlackHole: BlackHoleImg, -} + BlackHole: BlackHoleImg +}; -export const ImgHolderOpen: any = ImgHolderOpenImg +export const ImgHolderOpen: any = ImgHolderOpenImg; diff --git a/src/javascripts/constants/static-types.ts b/src/javascripts/constants/static-types.ts index a962dc9..a3fee73 100644 --- a/src/javascripts/constants/static-types.ts +++ b/src/javascripts/constants/static-types.ts @@ -2,8 +2,8 @@ // BaseAction // ---------------------------------------------------------- export interface BaseAction { - type: string - payload?: any + type: string; + payload?: any; } // ---------------------------------------------------------- @@ -12,14 +12,14 @@ export interface BaseAction { // Assignments export interface RevolvingAssignmentsState { - primo?: Array - secundus?: Array - tertius?: Array + primo?: Array; + secundus?: Array; + tertius?: Array; } -export type SelectedAssignmentsState = Array +export type SelectedAssignmentsState = Array; -export type DestroyedAssignmentsState = Array +export type DestroyedAssignmentsState = Array; // Projects -export type SelectedProjectsAction = Array +export type SelectedProjectsAction = Array; diff --git a/src/javascripts/constants/url.ts b/src/javascripts/constants/url.ts index b1774a3..db4696e 100644 --- a/src/javascripts/constants/url.ts +++ b/src/javascripts/constants/url.ts @@ -1,3 +1,3 @@ // TODO: developmentとproductionで場合分け -export const ROOT_URL = 'http://localhost:3000' +export const ROOT_URL = "http://localhost:3000"; // export const ROOT_URL = 'https://orbit7.herokuapp.com' diff --git a/src/javascripts/reducers/assignments.ts b/src/javascripts/reducers/assignments.ts index 05c7208..da30852 100644 --- a/src/javascripts/reducers/assignments.ts +++ b/src/javascripts/reducers/assignments.ts @@ -1,11 +1,11 @@ -import { actionTypes } from '../constants/action-types' -import _ from 'lodash' -import moment from 'moment' +import { actionTypes } from "../constants/action-types"; +import _ from "lodash"; +import moment from "moment"; import { RevolvingAssignmentsAction, SelectedAssignmentsAction, - DestroyedAssignmentsAction, -} from '../actions/assignments' + DestroyedAssignmentsAction +} from "../actions/assignments"; // import { // RevolvingAssignmentsState, // SelectedAssignmentsState, @@ -16,34 +16,40 @@ import { * revolvingAssignmentsの利用用途 * stateには、{primo, secundus, tertius}の各軌道上のassignmentsが軌道名をkeyにして格納される */ -export function revolvingAssignments(state: any = null, action: RevolvingAssignmentsAction) { - let cloneState = Object.assign({}, state) +export function revolvingAssignments( + state: any = null, + action: RevolvingAssignmentsAction +) { + let cloneState = Object.assign({}, state); switch (action.type) { case actionTypes.FETCH_REVOLVING_ASSIGNMENTS: - if ('revolvingAssignments' in action.payload) { - return action.payload.revolvingAssignments + if ("revolvingAssignments" in action.payload) { + return action.payload.revolvingAssignments; } - break + break; case actionTypes.CREATE_ASSIGNMENT: - if ('newAssignment' in action.payload) { - const newAssignmentOrbit: 'primo' | 'secundus' | 'tertius' = - action.payload.newAssignment.orbit_pos - cloneState[newAssignmentOrbit].push(action.payload.newAssignment) - return cloneState + if ("newAssignment" in action.payload) { + const newAssignmentOrbit: "primo" | "secundus" | "tertius" = + action.payload.newAssignment.orbit_pos; + cloneState[newAssignmentOrbit].push(action.payload.newAssignment); + return cloneState; } - break + break; case actionTypes.DESTROY_ASSIGNMENT: - if ('destroyedAssignment' in action.payload) { - const { id, orbit_pos } = action.payload.destroyedAssignment - _.remove(cloneState[orbit_pos], (eachAssignment: any) => eachAssignment.id === id) - return cloneState + if ("destroyedAssignment" in action.payload) { + const { id, orbit_pos } = action.payload.destroyedAssignment; + _.remove( + cloneState[orbit_pos], + (eachAssignment: any) => eachAssignment.id === id + ); + return cloneState; } - break + break; default: - return state + return state; } } @@ -52,19 +58,22 @@ export function revolvingAssignments(state: any = null, action: RevolvingAssignm * stateには、ユーザがクリックし、UI上でチェックマーク付きのPlanetに紐付いた"3-Earth"のような * ”assignmentId-planetType”というstringが格納される */ -export function selectedAssignments(state: any = [], action: SelectedAssignmentsAction) { +export function selectedAssignments( + state: any = [], + action: SelectedAssignmentsAction +) { switch (action.type) { case actionTypes.SET_SELECTED_ASSIGNMENT: - return [...state, action.payload.assignmentId] + return [...state, action.payload.assignmentId]; case actionTypes.REMOVE_SELECTED_ASSIGNMENT: - return state.filter((item: any) => item !== action.payload.assignmentId) + return state.filter((item: any) => item !== action.payload.assignmentId); case actionTypes.RESET_SELECTED_ASSIGNMENT: - return [] + return []; default: - return state + return state; } } @@ -72,29 +81,32 @@ export function selectedAssignments(state: any = [], action: SelectedAssignments * destroyedAssignmentsの利用用途 * stateには、UI上からすでに削除され、履歴ページに表示されるためのAssignmentsが格納される */ -export function destroyedAssignments(state: any = null, action: DestroyedAssignmentsAction) { - let cloneState = Object.assign({}, state) +export function destroyedAssignments( + state: any = null, + action: DestroyedAssignmentsAction +) { + let cloneState = Object.assign({}, state); switch (action.type) { case actionTypes.FETCH_DESTROYED_ASSIGNMENTS: - if ('destroyedAssignments' in action.payload) { - return action.payload.destroyedAssignments + if ("destroyedAssignments" in action.payload) { + return action.payload.destroyedAssignments; } - break + break; case actionTypes.RESTORE_ASSIGNMENT: - if ('restoredAssignment' in action.payload) { - const { id, destroyed_at } = action.payload.restoredAssignment - const destroyedYear = moment(destroyed_at).format('YYYY') - const destroyedDate = moment(destroyed_at).format('MM/DD') + if ("restoredAssignment" in action.payload) { + const { id, destroyed_at } = action.payload.restoredAssignment; + const destroyedYear = moment(destroyed_at).format("YYYY"); + const destroyedDate = moment(destroyed_at).format("MM/DD"); _.remove( cloneState[destroyedYear][destroyedDate], (eachAssignment: any) => eachAssignment.id === id - ) - return cloneState + ); + return cloneState; } - break + break; default: - return state + return state; } } diff --git a/src/javascripts/reducers/common.ts b/src/javascripts/reducers/common.ts index ac6652f..bdb73d0 100644 --- a/src/javascripts/reducers/common.ts +++ b/src/javascripts/reducers/common.ts @@ -1,5 +1,9 @@ -import { actionTypes } from '../constants/action-types' -import { SelectedStarAction, IsDestroyIgnitedAction, ModalOpenAction } from '../actions/common' +import { actionTypes } from "../constants/action-types"; +import { + SelectedStarAction, + IsDestroyIgnitedAction, + ModalOpenAction +} from "../actions/common"; /* * selectedStarの利用用途 @@ -8,13 +12,13 @@ import { SelectedStarAction, IsDestroyIgnitedAction, ModalOpenAction } from '../ export function selectedStar(state: any = null, action: SelectedStarAction) { switch (action.type) { case actionTypes.SET_SELECTED_STAR: - return action.payload.star_type + return action.payload.star_type; case actionTypes.RESET_SELECTED_STAR: - return null + return null; default: - return state + return state; } } @@ -22,16 +26,19 @@ export function selectedStar(state: any = null, action: SelectedStarAction) { * selectedDestroyActionの利用用途 * stateには、ユーザが選択したMeteorite or Missle or BlackHole いずれかの破壊モーションの名称が格納される */ -export function selectedDestroyAction(state: any = null, action: IsDestroyIgnitedAction) { +export function selectedDestroyAction( + state: any = null, + action: IsDestroyIgnitedAction +) { switch (action.type) { case actionTypes.SET_DESTROY_ACTION: - return action.payload.status + return action.payload.status; case actionTypes.RESET_DESTROY_ACTION: - return action.payload.status + return action.payload.status; default: - return state + return state; } } @@ -41,15 +48,15 @@ export function selectedDestroyAction(state: any = null, action: IsDestroyIgnite * form-${orbit} は、ModalがProjectもしくはAssignmentを追加するFormを伴う時に用いられる * destroyは、ModalがrojectもしくはAssignmentを削除する時の確認画面として開かれる時に用いられる */ -export function modalOpen(state: any = '', action: ModalOpenAction) { +export function modalOpen(state: any = "", action: ModalOpenAction) { switch (action.type) { case actionTypes.OPEN_MODAL: - return action.payload.status + return action.payload.status; case actionTypes.CLOSE_MODAL: - return '' + return ""; default: - return state + return state; } } diff --git a/src/javascripts/reducers/current-user.ts b/src/javascripts/reducers/current-user.ts index 72379be..509b47b 100644 --- a/src/javascripts/reducers/current-user.ts +++ b/src/javascripts/reducers/current-user.ts @@ -1,25 +1,25 @@ -import { actionTypes } from '../constants/action-types' -import { CurrentUserAction } from '../actions/users' +import { actionTypes } from "../constants/action-types"; +import { CurrentUserAction } from "../actions/users"; // TODO: ファイル名をuser.tsにしてcurrent-userはその一部にする export default (state: any = null, action: CurrentUserAction) => { switch (action.type) { case actionTypes.SET_CURRENT_USER: - return action.payload.currentUser + return action.payload.currentUser; case actionTypes.EXPIRE_CURRENT_USER: - return null + return null; case actionTypes.UPDATE_AVATAR: { - let newUser = Object.assign({}, state) - newUser.avatar = action.payload.newAvatarUrl - return newUser + let newUser = Object.assign({}, state); + newUser.avatar = action.payload.newAvatarUrl; + return newUser; } case actionTypes.UPDATE_PROFILE: - return action.payload.updatedUser + return action.payload.updatedUser; default: - return state + return state; } -} +}; diff --git a/src/javascripts/reducers/index.ts b/src/javascripts/reducers/index.ts index a2024b9..66b9e0c 100644 --- a/src/javascripts/reducers/index.ts +++ b/src/javascripts/reducers/index.ts @@ -1,8 +1,12 @@ -import { combineReducers } from 'redux' -import currentUser from './current-user' -import { revolvingProjects, currentProject, selectedProject } from './projects' -import { revolvingAssignments, destroyedAssignments, selectedAssignments } from './assignments' -import { selectedStar, selectedDestroyAction, modalOpen } from './common' +import { combineReducers } from "redux"; +import currentUser from "./current-user"; +import { revolvingProjects, currentProject, selectedProject } from "./projects"; +import { + revolvingAssignments, + destroyedAssignments, + selectedAssignments +} from "./assignments"; +import { selectedStar, selectedDestroyAction, modalOpen } from "./common"; const rootReducer = combineReducers({ // commmon @@ -21,7 +25,7 @@ const rootReducer = combineReducers({ // Assignments revolvingAssignments, destroyedAssignments, - selectedAssignments, -}) + selectedAssignments +}); -export default rootReducer +export default rootReducer; diff --git a/src/javascripts/reducers/projects.ts b/src/javascripts/reducers/projects.ts index 0772bbb..58ec4a5 100644 --- a/src/javascripts/reducers/projects.ts +++ b/src/javascripts/reducers/projects.ts @@ -1,55 +1,61 @@ -import { actionTypes } from '../constants/action-types' -import _ from 'lodash' +import { actionTypes } from "../constants/action-types"; +import _ from "lodash"; import { RevoivingProjectsAction, CurrentProjectAction, - SelectedProjectAction, -} from '../actions/projects' + SelectedProjectAction +} from "../actions/projects"; /* * revolvingProjectsの利用用途 * stateには、current_userの持つ全Projectのidがkeyとなって格納される */ -export function revolvingProjects(state: any = null, action: RevoivingProjectsAction) { +export function revolvingProjects( + state: any = null, + action: RevoivingProjectsAction +) { switch (action.type) { case actionTypes.FETCH_REVOLVING_PROJECTS: - if ('currentUserAllProjects' in action.payload) { - return _.mapKeys(action.payload.currentUserAllProjects, 'id') + if ("currentUserAllProjects" in action.payload) { + return _.mapKeys(action.payload.currentUserAllProjects, "id"); } - break + break; case actionTypes.CREATE_PROJECT: - if ('newProject' in action.payload) { - const { newProject } = action.payload - return { ...state, [newProject.id]: newProject } + if ("newProject" in action.payload) { + const { newProject } = action.payload; + return { ...state, [newProject.id]: newProject }; } - break + break; // TODO: Project削除のanimationを実装後にテスト case actionTypes.DESTROY_PROJECT: - if ('projectId' in action.payload) { - return _.omit(state, action.payload.projectId) + if ("projectId" in action.payload) { + return _.omit(state, action.payload.projectId); } - break + break; default: - return state + return state; } } /* * currentProjectsの利用用途 * stateには、現在のProjectPageのProjectのオブジェクトが格納される */ -export function currentProject(state: any = null, action: CurrentProjectAction) { +export function currentProject( + state: any = null, + action: CurrentProjectAction +) { switch (action.type) { case actionTypes.SET_CURRENT_PROJECT: - if ('currentProject' in action.payload) { - return action.payload.currentProject + if ("currentProject" in action.payload) { + return action.payload.currentProject; } - break + break; default: - return state + return state; } } @@ -58,18 +64,21 @@ export function currentProject(state: any = null, action: CurrentProjectAction) * stateには、ユーザがクリックし、UI上でチェックマーク付きのPlanetに紐付いた"project-3-Earth"のような * ”project-projectId-fixedStarType”というstringが一つのみ格納される */ -export function selectedProject(state: any = [], action: SelectedProjectAction) { +export function selectedProject( + state: any = [], + action: SelectedProjectAction +) { switch (action.type) { case actionTypes.SET_SELECTED_PROJECT: - return [...state, action.payload.projectId] + return [...state, action.payload.projectId]; case actionTypes.REMOVE_SELECTED_PROJECT: - return state.filter((item: any) => item !== action.payload.projectId) + return state.filter((item: any) => item !== action.payload.projectId); case actionTypes.RESET_SELECTED_PROJECT: - return [] + return []; default: - return state + return state; } } diff --git a/tsconfig.json b/tsconfig.json index 14cb279..64c5f9c 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -2,7 +2,7 @@ "compilerOptions": { /* Basic Options */ "target": "es5", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017','ES2018' or 'ESNEXT'. */ - "module": "commonjs", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. */ + "module": "es2015", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. */ "lib": [ "es2018", "dom" @@ -66,6 +66,7 @@ "webpack.config.js", // これしないとエラー起きるけどそこ直せるなら削除した方がいいかも "src/jest.config.js", "src/__mocks__", - "src/__tests__" + "src/__tests__", + "src/javascripts/components/__stories__" ] -} \ No newline at end of file +} diff --git a/tslint.json b/tslint.json index fc6cc47..464a21a 100644 --- a/tslint.json +++ b/tslint.json @@ -7,18 +7,12 @@ "tslint-config-prettier" ], "rules": { - "variable-name": false, - "one-variable-per-declaration": false, + "interface-name": false, "no-console": "error", "no-debugger": true, - "prettier": [ - true, - { - "singleQuote": true, - "trailingComma": "es5", - "semi": false, - "printWidth": 100 - } - ] + "one-variable-per-declaration": false, + "prettier": true, + "quotemark": [true, "double", "avoid-escape"], + "variable-name": false } } diff --git a/yarn.lock b/yarn.lock deleted file mode 100644 index b2b4eb4..0000000 --- a/yarn.lock +++ /dev/null @@ -1,8015 +0,0 @@ -# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. -# yarn lockfile v1 - - -"@babel/code-frame@^7.0.0-beta.35": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0.tgz#06e2ab19bdb535385559aabb5ba59729482800f8" - integrity sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA== - dependencies: - "@babel/highlight" "^7.0.0" - -"@babel/highlight@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.0.0.tgz#f710c38c8d458e6dd9a201afb637fcb781ce99e4" - integrity sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw== - dependencies: - chalk "^2.0.0" - esutils "^2.0.2" - js-tokens "^4.0.0" - -"@babel/runtime@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.2.0.tgz#b03e42eeddf5898e00646e4c840fa07ba8dcad7f" - integrity sha512-oouEibCbHMVdZSDlJBO6bZmID/zA/G/Qx3H1d3rSNPTD+L8UNKvCat7aKWSJ74zYbm5zWGh0GQN0hKj8zYFTCg== - dependencies: - regenerator-runtime "^0.12.0" - -"@iamstarkov/listr-update-renderer@0.4.1": - version "0.4.1" - resolved "https://registry.yarnpkg.com/@iamstarkov/listr-update-renderer/-/listr-update-renderer-0.4.1.tgz#d7c48092a2dcf90fd672b6c8b458649cb350c77e" - integrity sha512-IJyxQWsYDEkf8C8QthBn5N8tIUR9V9je6j3sMIpAkonaadjbvxmRC6RAhpa3RKxndhNnU2M6iNbtJwd7usQYIA== - dependencies: - chalk "^1.1.3" - cli-truncate "^0.2.1" - elegant-spinner "^1.0.1" - figures "^1.7.0" - indent-string "^3.0.0" - log-symbols "^1.0.2" - log-update "^2.3.0" - strip-ansi "^3.0.1" - -"@samverschueren/stream-to-observable@^0.3.0": - version "0.3.0" - resolved "https://registry.yarnpkg.com/@samverschueren/stream-to-observable/-/stream-to-observable-0.3.0.tgz#ecdf48d532c58ea477acfcab80348424f8d0662f" - integrity sha512-MI4Xx6LHs4Webyvi6EbspgyAb4D2Q2VtnCQ1blOJcoLS6mVa8lNN2rkIy1CVxfTUpoyIbCTkXES1rLXztFD1lg== - dependencies: - any-observable "^0.3.0" - -"@types/animejs@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@types/animejs/-/animejs-2.0.1.tgz#f8088e8a0db301ffd4211bebe920d7896aab254c" - integrity sha512-IwmCpzWi8YMnk7cpIsMhnoM54Qc9tfE5MJcuv/71jSeeWS0QVw/aAcTyZatG9phUHW0S0AIqezO+uISqAWkZIg== - -"@types/anymatch@*": - version "1.3.0" - resolved "https://registry.yarnpkg.com/@types/anymatch/-/anymatch-1.3.0.tgz#d1d55958d1fccc5527d4aba29fc9c4b942f563ff" - integrity sha512-7WcbyctkE8GTzogDb0ulRAEw7v8oIS54ft9mQTU7PfM0hp5e+8kpa+HeQ7IQrFbKtJXBKcZ4bh+Em9dTw5L6AQ== - -"@types/body-parser@*": - version "1.17.0" - resolved "https://registry.yarnpkg.com/@types/body-parser/-/body-parser-1.17.0.tgz#9f5c9d9bd04bb54be32d5eb9fc0d8c974e6cf58c" - integrity sha512-a2+YeUjPkztKJu5aIF2yArYFQQp8d51wZ7DavSHjFuY1mqVgidGyzEQ41JIVNy82fXj8yPgy2vJmfIywgESW6w== - dependencies: - "@types/connect" "*" - "@types/node" "*" - -"@types/classnames@^2.2.6": - version "2.2.6" - resolved "https://registry.yarnpkg.com/@types/classnames/-/classnames-2.2.6.tgz#dbe8a666156d556ed018e15a4c65f08937c3f628" - integrity sha512-XHcYvVdbtAxVstjKxuULYqYaWIzHR15yr1pZj4fnGChuBVJlIAp9StJna0ZJNSgxPh4Nac2FL4JM3M11Tm6fqQ== - -"@types/connect@*": - version "3.4.32" - resolved "https://registry.yarnpkg.com/@types/connect/-/connect-3.4.32.tgz#aa0e9616b9435ccad02bc52b5b454ffc2c70ba28" - integrity sha512-4r8qa0quOvh7lGD0pre62CAb1oni1OO6ecJLGCezTmhQ8Fz50Arx9RUszryR8KlgK6avuSXvviL6yWyViQABOg== - dependencies: - "@types/node" "*" - -"@types/events@*": - version "1.2.0" - resolved "https://registry.yarnpkg.com/@types/events/-/events-1.2.0.tgz#81a6731ce4df43619e5c8c945383b3e62a89ea86" - integrity sha512-KEIlhXnIutzKwRbQkGWb/I4HFqBuUykAdHgDED6xqwXJfONCjF5VoE0cXEiurh3XauygxzeDzgtXUqvLkxFzzA== - -"@types/express-serve-static-core@*": - version "4.16.0" - resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.16.0.tgz#fdfe777594ddc1fe8eb8eccce52e261b496e43e7" - integrity sha512-lTeoCu5NxJU4OD9moCgm0ESZzweAx0YqsAcab6OB0EB3+As1OaHtKnaGJvcngQxYsi9UNv0abn4/DRavrRxt4w== - dependencies: - "@types/events" "*" - "@types/node" "*" - "@types/range-parser" "*" - -"@types/express@*": - version "4.16.0" - resolved "https://registry.yarnpkg.com/@types/express/-/express-4.16.0.tgz#6d8bc42ccaa6f35cf29a2b7c3333cb47b5a32a19" - integrity sha512-TtPEYumsmSTtTetAPXlJVf3kEqb6wZK0bZojpJQrnD/djV4q1oB6QQ8aKvKqwNPACoe02GNiy5zDzcYivR5Z2w== - dependencies: - "@types/body-parser" "*" - "@types/express-serve-static-core" "*" - "@types/serve-static" "*" - -"@types/extract-text-webpack-plugin@^3.0.3": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@types/extract-text-webpack-plugin/-/extract-text-webpack-plugin-3.0.3.tgz#b4ef831c7ea7bc0585ccabc61e8b0d6cd69fccc3" - integrity sha512-KvRd5e5k+BVwWBlCm4uZFcV+M2mikKhORahruKxPkriFIDhG6b0fZ8PIYyiok+pk6W5bqFCsQmRk5D86pTmNpA== - dependencies: - "@types/webpack" "*" - -"@types/glob@^7.1.1": - version "7.1.1" - resolved "https://registry.yarnpkg.com/@types/glob/-/glob-7.1.1.tgz#aa59a1c6e3fbc421e07ccd31a944c30eba521575" - integrity sha512-1Bh06cbWJUHMC97acuD6UMG29nMt0Aqz1vF3guLfG+kHHJhy3AyohZFFxYk2f7Q1SQIrNwvncxAE0N/9s70F2w== - dependencies: - "@types/events" "*" - "@types/minimatch" "*" - "@types/node" "*" - -"@types/history@*": - version "4.7.2" - resolved "https://registry.yarnpkg.com/@types/history/-/history-4.7.2.tgz#0e670ea254d559241b6eeb3894f8754991e73220" - integrity sha512-ui3WwXmjTaY73fOQ3/m3nnajU/Orhi6cEu5rzX+BrAAJxa3eITXZ5ch9suPqtM03OWhAHhPSyBGCN4UKoxO20Q== - -"@types/http-proxy-middleware@*": - version "0.19.0" - resolved "https://registry.yarnpkg.com/@types/http-proxy-middleware/-/http-proxy-middleware-0.19.0.tgz#7cc0d9776994b5675a71c1f4dfa8251db3ea774d" - integrity sha512-EWXjESTc5D1eUKjspTnznZqrCbFI4DR4HgdBR/GZtmOylsb47KCqjegJB41V+9e4y0yYSZqHgTtTUlAWPxk7nw== - dependencies: - "@types/connect" "*" - "@types/http-proxy" "*" - "@types/node" "*" - -"@types/http-proxy@*": - version "1.16.2" - resolved "https://registry.yarnpkg.com/@types/http-proxy/-/http-proxy-1.16.2.tgz#16cb373b52fff2aa2f389d23d940ed4a642349e5" - integrity sha512-GgqePmC3rlsn1nv+kx5OviPuUBU2omhnlXOaJSXFgOdsTcScNFap+OaCb2ip9Bm4m5L8EOehgT5d9M4uNB90zg== - dependencies: - "@types/events" "*" - "@types/node" "*" - -"@types/keymirror@^0.1.1": - version "0.1.1" - resolved "https://registry.yarnpkg.com/@types/keymirror/-/keymirror-0.1.1.tgz#1fe48e6e5e2a969cafecf0f24485ae23c72abd30" - integrity sha1-H+SObl4qlpyv7PDyRIWuI8cqvTA= - -"@types/lodash@^4.14.118": - version "4.14.118" - resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.118.tgz#247bab39bfcc6d910d4927c6e06cbc70ec376f27" - integrity sha512-iiJbKLZbhSa6FYRip/9ZDX6HXhayXLDGY2Fqws9cOkEQ6XeKfaxB0sC541mowZJueYyMnVUmmG+al5/4fCDrgw== - -"@types/mime@*": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@types/mime/-/mime-2.0.0.tgz#5a7306e367c539b9f6543499de8dd519fac37a8b" - integrity sha512-A2TAGbTFdBw9azHbpVd+/FkdW2T6msN1uct1O9bH3vTerEHKZhTXJUQXy+hNq1B0RagfU8U+KBdqiZpxjhOUQA== - -"@types/minimatch@*": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.3.tgz#3dca0e3f33b200fc7d1139c0cd96c1268cadfd9d" - integrity sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA== - -"@types/moment@^2.13.0": - version "2.13.0" - resolved "https://registry.yarnpkg.com/@types/moment/-/moment-2.13.0.tgz#604ebd189bc3bc34a1548689404e61a2a4aac896" - integrity sha1-YE69GJvDvDShVIaJQE5hoqSqyJY= - dependencies: - moment "*" - -"@types/node@*": - version "10.12.15" - resolved "https://registry.yarnpkg.com/@types/node/-/node-10.12.15.tgz#20e85651b62fd86656e57c9c9bc771ab1570bc59" - integrity sha512-9kROxduaN98QghwwHmxXO2Xz3MaWf+I1sLVAA6KJDF5xix+IyXVhds0MAfdNwtcpSrzhaTsNB0/jnL86fgUhqA== - -"@types/node@^10.12.12": - version "10.12.12" - resolved "https://registry.yarnpkg.com/@types/node/-/node-10.12.12.tgz#e15a9d034d9210f00320ef718a50c4a799417c47" - integrity sha512-Pr+6JRiKkfsFvmU/LK68oBRCQeEg36TyAbPhc2xpez24OOZZCuoIhWGTd39VZy6nGafSbxzGouFPTFD/rR1A0A== - -"@types/prettier@^1.15.2": - version "1.15.2" - resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-1.15.2.tgz#91594ea7cb6f3b1f7ea69f32621246654c7cc231" - integrity sha512-XIB0ZCaFZmWUHAa9dBqP5UKXXHwuukmVlP+XcyU94dui2k+l2lG+CHAbt2ffenHPUqoIs5Beh8Pdf2YEq/CZ7A== - -"@types/prop-types@*": - version "15.5.7" - resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.5.7.tgz#c6f1e0d0109ff358b132d98b7b4025c7a7b707c5" - integrity sha512-a6WH0fXkgPNiGIuLjjdpf0n/GnmgWZ4vLuVIJJnDwhmRDPEaiRBcy5ofQPh+EJFua0S1QWmk1745+JqZQGnJ8Q== - -"@types/range-parser@*": - version "1.2.3" - resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.3.tgz#7ee330ba7caafb98090bece86a5ee44115904c2c" - integrity sha512-ewFXqrQHlFsgc09MK5jP5iR7vumV/BYayNC6PgJO2LPe8vrnNFyjQjSppfEngITi0qvfKtzFvgKymGheFM9UOA== - -"@types/react-dom@^16.0.11": - version "16.0.11" - resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-16.0.11.tgz#bd10ccb0d9260343f4b9a49d4f7a8330a5c1f081" - integrity sha512-x6zUx9/42B5Kl2Vl9HlopV8JF64wLpX3c+Pst9kc1HgzrsH+mkehe/zmHMQTplIrR48H2gpU7ZqurQolYu8XBA== - dependencies: - "@types/react" "*" - -"@types/react-modal@^3.6.0": - version "3.6.0" - resolved "https://registry.yarnpkg.com/@types/react-modal/-/react-modal-3.6.0.tgz#57e7c74f2b39b1a90116bdb30aeaac89e5e1866a" - integrity sha512-GBj80Nff06tNJhg1t+PGIINUVC5566La7GYIFuUJSZTI9EmEg88oillz7m5BEVp/DUqvMP0PIG5jeDemJuFA0w== - dependencies: - "@types/react" "*" - -"@types/react-redux@^6.0.10": - version "6.0.11" - resolved "https://registry.yarnpkg.com/@types/react-redux/-/react-redux-6.0.11.tgz#d872254bbcba42465195a5475f40b22502b0407d" - integrity sha512-I3POoeGGwNqZjbK7TfnPJS2C51TFvT0atQPz4M+xpVTrLMjsX37AAfcTF3XUOTnmxHsryEjwJN9r/ScGwSXdtg== - dependencies: - "@types/react" "*" - redux "^4.0.0" - -"@types/react-router-dom@^4.3.1": - version "4.3.1" - resolved "https://registry.yarnpkg.com/@types/react-router-dom/-/react-router-dom-4.3.1.tgz#71fe2918f8f60474a891520def40a63997dafe04" - integrity sha512-GbztJAScOmQ/7RsQfO4cd55RuH1W4g6V1gDW3j4riLlt+8yxYLqqsiMzmyuXBLzdFmDtX/uU2Bpcm0cmudv44A== - dependencies: - "@types/history" "*" - "@types/react" "*" - "@types/react-router" "*" - -"@types/react-router@*": - version "4.4.1" - resolved "https://registry.yarnpkg.com/@types/react-router/-/react-router-4.4.1.tgz#c875dfd0b6fe00efa463eb8e5de8b5f74644b3f5" - integrity sha512-CtQfdcXyMye3vflnQQ2sHU832iDJRoAr4P+7f964KlLYupXU1I5crP1+d/WnCMo6mmtjBjqQvxrtbAbodqerMA== - dependencies: - "@types/history" "*" - "@types/react" "*" - -"@types/react-s-alert@^1.3.2": - version "1.3.2" - resolved "https://registry.yarnpkg.com/@types/react-s-alert/-/react-s-alert-1.3.2.tgz#02a0879c83c64f9b8f89053f1879588341109c23" - integrity sha512-rrq6WpNtyGLxGMP+eGlLLBOdojHhZWDEbNrLlBca0BkOIuamtfFigkIbPnmVAFkzOcTED3mFuKmYu58D+IIUfQ== - dependencies: - "@types/react" "*" - -"@types/react@*", "@types/react@^16.7.13": - version "16.7.13" - resolved "https://registry.yarnpkg.com/@types/react/-/react-16.7.13.tgz#d2369ae78377356d42fb54275d30218e84f2247a" - integrity sha512-WhqrQLAE9z65hfcvWqZfR6qUtIazFRyb8LXqHo8440R53dAQqNkt2OlVJ3FXwqOwAXXg4nfYxt0qgBvE18o5XA== - dependencies: - "@types/prop-types" "*" - csstype "^2.2.0" - -"@types/redux-promise@^0.5.28": - version "0.5.28" - resolved "https://registry.yarnpkg.com/@types/redux-promise/-/redux-promise-0.5.28.tgz#e49d6ed177587be854e82a20a6e8e0610b493e83" - integrity sha512-HNWAIjTeMcdAgl4wI2XQdlrJeJMS/TyohD8Yzf3Ebp0fPR4M9wg4/+EBrbbLAsBrGxmSkXdvy1H2ty21dhlS7A== - dependencies: - redux "^3.6.0" - -"@types/serve-static@*": - version "1.13.2" - resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-1.13.2.tgz#f5ac4d7a6420a99a6a45af4719f4dcd8cd907a48" - integrity sha512-/BZ4QRLpH/bNYgZgwhKEh+5AsboDBcUdlBYgzoLX0fpj3Y2gp6EApyOlM3bK53wQS/OE1SrdSYBAbux2D1528Q== - dependencies: - "@types/express-serve-static-core" "*" - "@types/mime" "*" - -"@types/tapable@*": - version "1.0.4" - resolved "https://registry.yarnpkg.com/@types/tapable/-/tapable-1.0.4.tgz#b4ffc7dc97b498c969b360a41eee247f82616370" - integrity sha512-78AdXtlhpCHT0K3EytMpn4JNxaf5tbqbLcbIRoQIHzpTIyjpxLQKRoxU55ujBXAtg3Nl2h/XWvfDa9dsMOd0pQ== - -"@types/uglify-js@*": - version "3.0.4" - resolved "https://registry.yarnpkg.com/@types/uglify-js/-/uglify-js-3.0.4.tgz#96beae23df6f561862a830b4288a49e86baac082" - integrity sha512-SudIN9TRJ+v8g5pTG8RRCqfqTMNqgWCKKd3vtynhGzkIIjxaicNAMuY5TRadJ6tzDu3Dotf3ngaMILtmOdmWEQ== - dependencies: - source-map "^0.6.1" - -"@types/webpack-dev-server@^3.1.1": - version "3.1.1" - resolved "https://registry.yarnpkg.com/@types/webpack-dev-server/-/webpack-dev-server-3.1.1.tgz#12ae26194b3e1b8a317559592659921f282583c2" - integrity sha512-TnEQPT+OZjWV2kRyNs0RPMDQmBCiLrr/ZhKSgFNF6aM4O/moUAfo2Yu3MIMUjoi3aE/02RH1iVR+Y6mWmXOlVA== - dependencies: - "@types/express" "*" - "@types/http-proxy-middleware" "*" - "@types/serve-static" "*" - "@types/webpack" "*" - -"@types/webpack@*", "@types/webpack@^4.4.20": - version "4.4.20" - resolved "https://registry.yarnpkg.com/@types/webpack/-/webpack-4.4.20.tgz#b2108461ac00d983ed966b0f781b451d6431a936" - integrity sha512-uSVhicDIkh2Phkn0L49eZQb4Ory5q9opiqhjxQGu+onh9mbPEhSF5OuA68dmH240VN1+mavQTmkQ1hqnKZB0gA== - dependencies: - "@types/anymatch" "*" - "@types/node" "*" - "@types/tapable" "*" - "@types/uglify-js" "*" - source-map "^0.6.0" - -"@webassemblyjs/ast@1.7.11": - version "1.7.11" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.7.11.tgz#b988582cafbb2b095e8b556526f30c90d057cace" - integrity sha512-ZEzy4vjvTzScC+SH8RBssQUawpaInUdMTYwYYLh54/s8TuT0gBLuyUnppKsVyZEi876VmmStKsUs28UxPgdvrA== - dependencies: - "@webassemblyjs/helper-module-context" "1.7.11" - "@webassemblyjs/helper-wasm-bytecode" "1.7.11" - "@webassemblyjs/wast-parser" "1.7.11" - -"@webassemblyjs/floating-point-hex-parser@1.7.11": - version "1.7.11" - resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.7.11.tgz#a69f0af6502eb9a3c045555b1a6129d3d3f2e313" - integrity sha512-zY8dSNyYcgzNRNT666/zOoAyImshm3ycKdoLsyDw/Bwo6+/uktb7p4xyApuef1dwEBo/U/SYQzbGBvV+nru2Xg== - -"@webassemblyjs/helper-api-error@1.7.11": - version "1.7.11" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.7.11.tgz#c7b6bb8105f84039511a2b39ce494f193818a32a" - integrity sha512-7r1qXLmiglC+wPNkGuXCvkmalyEstKVwcueZRP2GNC2PAvxbLYwLLPr14rcdJaE4UtHxQKfFkuDFuv91ipqvXg== - -"@webassemblyjs/helper-buffer@1.7.11": - version "1.7.11" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.7.11.tgz#3122d48dcc6c9456ed982debe16c8f37101df39b" - integrity sha512-MynuervdylPPh3ix+mKZloTcL06P8tenNH3sx6s0qE8SLR6DdwnfgA7Hc9NSYeob2jrW5Vql6GVlsQzKQCa13w== - -"@webassemblyjs/helper-code-frame@1.7.11": - version "1.7.11" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.7.11.tgz#cf8f106e746662a0da29bdef635fcd3d1248364b" - integrity sha512-T8ESC9KMXFTXA5urJcyor5cn6qWeZ4/zLPyWeEXZ03hj/x9weSokGNkVCdnhSabKGYWxElSdgJ+sFa9G/RdHNw== - dependencies: - "@webassemblyjs/wast-printer" "1.7.11" - -"@webassemblyjs/helper-fsm@1.7.11": - version "1.7.11" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-fsm/-/helper-fsm-1.7.11.tgz#df38882a624080d03f7503f93e3f17ac5ac01181" - integrity sha512-nsAQWNP1+8Z6tkzdYlXT0kxfa2Z1tRTARd8wYnc/e3Zv3VydVVnaeePgqUzFrpkGUyhUUxOl5ML7f1NuT+gC0A== - -"@webassemblyjs/helper-module-context@1.7.11": - version "1.7.11" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-module-context/-/helper-module-context-1.7.11.tgz#d874d722e51e62ac202476935d649c802fa0e209" - integrity sha512-JxfD5DX8Ygq4PvXDucq0M+sbUFA7BJAv/GGl9ITovqE+idGX+J3QSzJYz+LwQmL7fC3Rs+utvWoJxDb6pmC0qg== - -"@webassemblyjs/helper-wasm-bytecode@1.7.11": - version "1.7.11" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.7.11.tgz#dd9a1e817f1c2eb105b4cf1013093cb9f3c9cb06" - integrity sha512-cMXeVS9rhoXsI9LLL4tJxBgVD/KMOKXuFqYb5oCJ/opScWpkCMEz9EJtkonaNcnLv2R3K5jIeS4TRj/drde1JQ== - -"@webassemblyjs/helper-wasm-section@1.7.11": - version "1.7.11" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.7.11.tgz#9c9ac41ecf9fbcfffc96f6d2675e2de33811e68a" - integrity sha512-8ZRY5iZbZdtNFE5UFunB8mmBEAbSI3guwbrsCl4fWdfRiAcvqQpeqd5KHhSWLL5wuxo53zcaGZDBU64qgn4I4Q== - dependencies: - "@webassemblyjs/ast" "1.7.11" - "@webassemblyjs/helper-buffer" "1.7.11" - "@webassemblyjs/helper-wasm-bytecode" "1.7.11" - "@webassemblyjs/wasm-gen" "1.7.11" - -"@webassemblyjs/ieee754@1.7.11": - version "1.7.11" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.7.11.tgz#c95839eb63757a31880aaec7b6512d4191ac640b" - integrity sha512-Mmqx/cS68K1tSrvRLtaV/Lp3NZWzXtOHUW2IvDvl2sihAwJh4ACE0eL6A8FvMyDG9abes3saB6dMimLOs+HMoQ== - dependencies: - "@xtuc/ieee754" "^1.2.0" - -"@webassemblyjs/leb128@1.7.11": - version "1.7.11" - resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.7.11.tgz#d7267a1ee9c4594fd3f7e37298818ec65687db63" - integrity sha512-vuGmgZjjp3zjcerQg+JA+tGOncOnJLWVkt8Aze5eWQLwTQGNgVLcyOTqgSCxWTR4J42ijHbBxnuRaL1Rv7XMdw== - dependencies: - "@xtuc/long" "4.2.1" - -"@webassemblyjs/utf8@1.7.11": - version "1.7.11" - resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.7.11.tgz#06d7218ea9fdc94a6793aa92208160db3d26ee82" - integrity sha512-C6GFkc7aErQIAH+BMrIdVSmW+6HSe20wg57HEC1uqJP8E/xpMjXqQUxkQw07MhNDSDcGpxI9G5JSNOQCqJk4sA== - -"@webassemblyjs/wasm-edit@1.7.11": - version "1.7.11" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.7.11.tgz#8c74ca474d4f951d01dbae9bd70814ee22a82005" - integrity sha512-FUd97guNGsCZQgeTPKdgxJhBXkUbMTY6hFPf2Y4OedXd48H97J+sOY2Ltaq6WGVpIH8o/TGOVNiVz/SbpEMJGg== - dependencies: - "@webassemblyjs/ast" "1.7.11" - "@webassemblyjs/helper-buffer" "1.7.11" - "@webassemblyjs/helper-wasm-bytecode" "1.7.11" - "@webassemblyjs/helper-wasm-section" "1.7.11" - "@webassemblyjs/wasm-gen" "1.7.11" - "@webassemblyjs/wasm-opt" "1.7.11" - "@webassemblyjs/wasm-parser" "1.7.11" - "@webassemblyjs/wast-printer" "1.7.11" - -"@webassemblyjs/wasm-gen@1.7.11": - version "1.7.11" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.7.11.tgz#9bbba942f22375686a6fb759afcd7ac9c45da1a8" - integrity sha512-U/KDYp7fgAZX5KPfq4NOupK/BmhDc5Kjy2GIqstMhvvdJRcER/kUsMThpWeRP8BMn4LXaKhSTggIJPOeYHwISA== - dependencies: - "@webassemblyjs/ast" "1.7.11" - "@webassemblyjs/helper-wasm-bytecode" "1.7.11" - "@webassemblyjs/ieee754" "1.7.11" - "@webassemblyjs/leb128" "1.7.11" - "@webassemblyjs/utf8" "1.7.11" - -"@webassemblyjs/wasm-opt@1.7.11": - version "1.7.11" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.7.11.tgz#b331e8e7cef8f8e2f007d42c3a36a0580a7d6ca7" - integrity sha512-XynkOwQyiRidh0GLua7SkeHvAPXQV/RxsUeERILmAInZegApOUAIJfRuPYe2F7RcjOC9tW3Cb9juPvAC/sCqvg== - dependencies: - "@webassemblyjs/ast" "1.7.11" - "@webassemblyjs/helper-buffer" "1.7.11" - "@webassemblyjs/wasm-gen" "1.7.11" - "@webassemblyjs/wasm-parser" "1.7.11" - -"@webassemblyjs/wasm-parser@1.7.11": - version "1.7.11" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.7.11.tgz#6e3d20fa6a3519f6b084ef9391ad58211efb0a1a" - integrity sha512-6lmXRTrrZjYD8Ng8xRyvyXQJYUQKYSXhJqXOBLw24rdiXsHAOlvw5PhesjdcaMadU/pyPQOJ5dHreMjBxwnQKg== - dependencies: - "@webassemblyjs/ast" "1.7.11" - "@webassemblyjs/helper-api-error" "1.7.11" - "@webassemblyjs/helper-wasm-bytecode" "1.7.11" - "@webassemblyjs/ieee754" "1.7.11" - "@webassemblyjs/leb128" "1.7.11" - "@webassemblyjs/utf8" "1.7.11" - -"@webassemblyjs/wast-parser@1.7.11": - version "1.7.11" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-parser/-/wast-parser-1.7.11.tgz#25bd117562ca8c002720ff8116ef9072d9ca869c" - integrity sha512-lEyVCg2np15tS+dm7+JJTNhNWq9yTZvi3qEhAIIOaofcYlUp0UR5/tVqOwa/gXYr3gjwSZqw+/lS9dscyLelbQ== - dependencies: - "@webassemblyjs/ast" "1.7.11" - "@webassemblyjs/floating-point-hex-parser" "1.7.11" - "@webassemblyjs/helper-api-error" "1.7.11" - "@webassemblyjs/helper-code-frame" "1.7.11" - "@webassemblyjs/helper-fsm" "1.7.11" - "@xtuc/long" "4.2.1" - -"@webassemblyjs/wast-printer@1.7.11": - version "1.7.11" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.7.11.tgz#c4245b6de242cb50a2cc950174fdbf65c78d7813" - integrity sha512-m5vkAsuJ32QpkdkDOUPGSltrg8Cuk3KBx4YrmAGQwCZPRdUHXxG4phIOuuycLemHFr74sWL9Wthqss4fzdzSwg== - dependencies: - "@webassemblyjs/ast" "1.7.11" - "@webassemblyjs/wast-parser" "1.7.11" - "@xtuc/long" "4.2.1" - -"@xtuc/ieee754@^1.2.0": - version "1.2.0" - resolved "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790" - integrity sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA== - -"@xtuc/long@4.2.1": - version "4.2.1" - resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.1.tgz#5c85d662f76fa1d34575766c5dcd6615abcd30d8" - integrity sha512-FZdkNBDqBRHKQ2MEbSC17xnPFOhZxeJ2YGSfr2BKf3sujG49Qe3bB+rGCwQfIaA7WHnGeGkSijX4FuBCdrzW/g== - -abab@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.0.tgz#aba0ab4c5eee2d4c79d3487d85450fb2376ebb0f" - integrity sha512-sY5AXXVZv4Y1VACTtR11UJCPHHudgY5i26Qj5TypE6DKlIApbwb5uqhXcJ5UUGbvZNRh7EeIoW+LrJumBsKp7w== - -abbrev@1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" - integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== - -accepts@~1.3.4, accepts@~1.3.5: - version "1.3.5" - resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.5.tgz#eb777df6011723a3b14e8a72c0805c8e86746bd2" - integrity sha1-63d99gEXI6OxTopywIBcjoZ0a9I= - dependencies: - mime-types "~2.1.18" - negotiator "0.6.1" - -acorn-dynamic-import@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/acorn-dynamic-import/-/acorn-dynamic-import-3.0.0.tgz#901ceee4c7faaef7e07ad2a47e890675da50a278" - integrity sha512-zVWV8Z8lislJoOKKqdNMOB+s6+XV5WERty8MnKBeFgwA+19XJjJHs2RP5dzM57FftIs+jQnRToLiWazKr6sSWg== - dependencies: - acorn "^5.0.0" - -acorn-globals@^4.1.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-4.3.0.tgz#e3b6f8da3c1552a95ae627571f7dd6923bb54103" - integrity sha512-hMtHj3s5RnuhvHPowpBYvJVj3rAar82JiDQHvGs1zO0l10ocX/xEdBShNHTJaboucJUsScghp74pH3s7EnHHQw== - dependencies: - acorn "^6.0.1" - acorn-walk "^6.0.1" - -acorn-walk@^6.0.1: - version "6.1.1" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-6.1.1.tgz#d363b66f5fac5f018ff9c3a1e7b6f8e310cc3913" - integrity sha512-OtUw6JUTgxA2QoqqmrmQ7F2NYqiBPi/L2jqHyFtllhOUvXYQXf0Z1CYUinIfyT4bTCGmrA7gX9FvHA81uzCoVw== - -acorn@^5.0.0, acorn@^5.5.3, acorn@^5.6.2: - version "5.7.3" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.7.3.tgz#67aa231bf8812974b85235a96771eb6bd07ea279" - integrity sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw== - -acorn@^6.0.1: - version "6.0.4" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.0.4.tgz#77377e7353b72ec5104550aa2d2097a2fd40b754" - integrity sha512-VY4i5EKSKkofY2I+6QLTbTTN/UvEQPCo6eiwzzSaSWfpaDhOmStMCMod6wmuPciNq+XS0faCglFu2lHZpdHUtg== - -ajv-errors@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d" - integrity sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ== - -ajv-keywords@^3.1.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.2.0.tgz#e86b819c602cf8821ad637413698f1dec021847a" - integrity sha1-6GuBnGAs+IIa1jdBNpjx3sAhhHo= - -ajv@^6.1.0, ajv@^6.5.5: - version "6.6.1" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.6.1.tgz#6360f5ed0d80f232cc2b294c362d5dc2e538dd61" - integrity sha512-ZoJjft5B+EJBjUyu9C9Hc0OZyPZSSlOF+plzouTrg6UlA8f+e/n8NIgBFG/9tppJtpPWfthHakK7juJdNDODww== - dependencies: - fast-deep-equal "^2.0.1" - fast-json-stable-stringify "^2.0.0" - json-schema-traverse "^0.4.1" - uri-js "^4.2.2" - -amdefine@>=0.0.4: - version "1.0.1" - resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" - integrity sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU= - -animejs@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/animejs/-/animejs-2.2.0.tgz#35eefdfc535b81949c9cb06f0b3e60c02e6fdc80" - integrity sha1-Ne79/FNbgZScnLBvCz5gwC5v3IA= - -ansi-colors@^3.0.0: - version "3.2.3" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.3.tgz#57d35b8686e851e2cc04c403f1c00203976a1813" - integrity sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw== - -ansi-escapes@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.1.0.tgz#f73207bb81207d75fd6c83f125af26eea378ca30" - integrity sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw== - -ansi-html@0.0.7: - version "0.0.7" - resolved "https://registry.yarnpkg.com/ansi-html/-/ansi-html-0.0.7.tgz#813584021962a9e9e6fd039f940d12f56ca7859e" - integrity sha1-gTWEAhliqenm/QOflA0S9WynhZ4= - -ansi-regex@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" - integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= - -ansi-regex@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" - integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= - -ansi-styles@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" - integrity sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4= - -ansi-styles@^3.2.0, ansi-styles@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" - integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== - dependencies: - color-convert "^1.9.0" - -any-observable@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/any-observable/-/any-observable-0.3.0.tgz#af933475e5806a67d0d7df090dd5e8bef65d119b" - integrity sha512-/FQM1EDkTsf63Ub2C6O7GuYFDsSXUwsaZDurV0np41ocwq0jthUAYCmhBX9f+KwlaCgIuWyr/4WlUQUBfKfZog== - -anymatch@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" - integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw== - dependencies: - micromatch "^3.1.4" - normalize-path "^2.1.1" - -append-transform@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/append-transform/-/append-transform-0.4.0.tgz#d76ebf8ca94d276e247a36bad44a4b74ab611991" - integrity sha1-126/jKlNJ24keja61EpLdKthGZE= - dependencies: - default-require-extensions "^1.0.0" - -aproba@^1.0.3, aproba@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" - integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== - -are-we-there-yet@~1.1.2: - version "1.1.5" - resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz#4b35c2944f062a8bfcda66410760350fe9ddfc21" - integrity sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w== - dependencies: - delegates "^1.0.0" - readable-stream "^2.0.6" - -argparse@^1.0.7: - version "1.0.10" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" - integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== - dependencies: - sprintf-js "~1.0.2" - -arr-diff@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf" - integrity sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8= - dependencies: - arr-flatten "^1.0.1" - -arr-diff@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" - integrity sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA= - -arr-flatten@^1.0.1, arr-flatten@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" - integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== - -arr-union@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" - integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= - -array-equal@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93" - integrity sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM= - -array-find-index@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" - integrity sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E= - -array-flatten@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" - integrity sha1-ml9pkFGx5wczKPKgCJaLZOopVdI= - -array-flatten@^2.1.0: - version "2.1.2" - resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-2.1.2.tgz#24ef80a28c1a893617e2149b0c6d0d788293b099" - integrity sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ== - -array-union@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" - integrity sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk= - dependencies: - array-uniq "^1.0.1" - -array-uniq@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" - integrity sha1-r2rId6Jcx/dOBYiUdThY39sk/bY= - -array-unique@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53" - integrity sha1-odl8yvy8JiXMcPrc6zalDFiwGlM= - -array-unique@^0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" - integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= - -array.prototype.flat@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.2.1.tgz#812db8f02cad24d3fab65dd67eabe3b8903494a4" - integrity sha512-rVqIs330nLJvfC7JqYvEWwqVr5QjYF1ib02i3YJtR/fICO6527Tjpc/e4Mvmxh3GIePPreRXMdaGyC99YphWEw== - dependencies: - define-properties "^1.1.2" - es-abstract "^1.10.0" - function-bind "^1.1.1" - -arrify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" - integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= - -asap@~2.0.3: - version "2.0.6" - resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" - integrity sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY= - -asn1.js@^4.0.0: - version "4.10.1" - resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.10.1.tgz#b9c2bf5805f1e64aadeed6df3a2bfafb5a73f5a0" - integrity sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw== - dependencies: - bn.js "^4.0.0" - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - -asn1@~0.2.3: - version "0.2.4" - resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.4.tgz#8d2475dfab553bb33e77b54e59e880bb8ce23136" - integrity sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg== - dependencies: - safer-buffer "~2.1.0" - -assert-plus@1.0.0, assert-plus@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" - integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= - -assert@^1.1.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/assert/-/assert-1.4.1.tgz#99912d591836b5a6f5b345c0f07eefc08fc65d91" - integrity sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE= - dependencies: - util "0.10.3" - -assign-symbols@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" - integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c= - -astral-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9" - integrity sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg== - -async-each@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d" - integrity sha1-GdOGodntxufByF04iu28xW0zYC0= - -async-foreach@^0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/async-foreach/-/async-foreach-0.1.3.tgz#36121f845c0578172de419a97dbeb1d16ec34542" - integrity sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI= - -async-limiter@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.0.tgz#78faed8c3d074ab81f22b4e985d79e8738f720f8" - integrity sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg== - -async@^1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" - integrity sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo= - -async@^2.1.4, async@^2.4.1, async@^2.5.0: - version "2.6.1" - resolved "https://registry.yarnpkg.com/async/-/async-2.6.1.tgz#b245a23ca71930044ec53fa46aa00a3e87c6a610" - integrity sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ== - dependencies: - lodash "^4.17.10" - -asynckit@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" - integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= - -atob@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" - integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== - -aws-sign2@~0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" - integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= - -aws4@^1.8.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.8.0.tgz#f0e003d9ca9e7f59c7a508945d7b2ef9a04a542f" - integrity sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ== - -axios@^0.18.0: - version "0.18.0" - resolved "https://registry.yarnpkg.com/axios/-/axios-0.18.0.tgz#32d53e4851efdc0a11993b6cd000789d70c05102" - integrity sha1-MtU+SFHv3AoRmTts0AB4nXDAUQI= - dependencies: - follow-redirects "^1.3.0" - is-buffer "^1.1.5" - -babel-code-frame@^6.22.0, babel-code-frame@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" - integrity sha1-Y/1D99weO7fONZR9uP42mj9Yx0s= - dependencies: - chalk "^1.1.3" - esutils "^2.0.2" - js-tokens "^3.0.2" - -babel-core@^6.0.0, babel-core@^6.26.0: - version "6.26.3" - resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.3.tgz#b2e2f09e342d0f0c88e2f02e067794125e75c207" - integrity sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA== - dependencies: - babel-code-frame "^6.26.0" - babel-generator "^6.26.0" - babel-helpers "^6.24.1" - babel-messages "^6.23.0" - babel-register "^6.26.0" - babel-runtime "^6.26.0" - babel-template "^6.26.0" - babel-traverse "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - convert-source-map "^1.5.1" - debug "^2.6.9" - json5 "^0.5.1" - lodash "^4.17.4" - minimatch "^3.0.4" - path-is-absolute "^1.0.1" - private "^0.1.8" - slash "^1.0.0" - source-map "^0.5.7" - -babel-generator@^6.18.0, babel-generator@^6.26.0: - version "6.26.1" - resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.1.tgz#1844408d3b8f0d35a404ea7ac180f087a601bd90" - integrity sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA== - dependencies: - babel-messages "^6.23.0" - babel-runtime "^6.26.0" - babel-types "^6.26.0" - detect-indent "^4.0.0" - jsesc "^1.3.0" - lodash "^4.17.4" - source-map "^0.5.7" - trim-right "^1.0.1" - -babel-helpers@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2" - integrity sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI= - dependencies: - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-jest@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-23.6.0.tgz#a644232366557a2240a0c083da6b25786185a2f1" - integrity sha512-lqKGG6LYXYu+DQh/slrQ8nxXQkEkhugdXsU6St7GmhVS7Ilc/22ArwqXNJrf0QaOBjZB0360qZMwXqDYQHXaew== - dependencies: - babel-plugin-istanbul "^4.1.6" - babel-preset-jest "^23.2.0" - -babel-messages@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" - integrity sha1-8830cDhYA1sqKVHG7F7fbGLyYw4= - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-istanbul@^4.1.6: - version "4.1.6" - resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-4.1.6.tgz#36c59b2192efce81c5b378321b74175add1c9a45" - integrity sha512-PWP9FQ1AhZhS01T/4qLSKoHGY/xvkZdVBGlKM/HuxxS3+sC66HhTNR7+MpbO/so/cz/wY94MeSWJuP1hXIPfwQ== - dependencies: - babel-plugin-syntax-object-rest-spread "^6.13.0" - find-up "^2.1.0" - istanbul-lib-instrument "^1.10.1" - test-exclude "^4.2.1" - -babel-plugin-jest-hoist@^23.2.0: - version "23.2.0" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-23.2.0.tgz#e61fae05a1ca8801aadee57a6d66b8cefaf44167" - integrity sha1-5h+uBaHKiAGq3uV6bWa4zvr0QWc= - -babel-plugin-syntax-object-rest-spread@^6.13.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz#fd6536f2bce13836ffa3a5458c4903a597bb3bf5" - integrity sha1-/WU28rzhODb/o6VFjEkDpZe7O/U= - -babel-preset-jest@^23.2.0: - version "23.2.0" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-23.2.0.tgz#8ec7a03a138f001a1a8fb1e8113652bf1a55da46" - integrity sha1-jsegOhOPABoaj7HoETZSvxpV2kY= - dependencies: - babel-plugin-jest-hoist "^23.2.0" - babel-plugin-syntax-object-rest-spread "^6.13.0" - -babel-register@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.26.0.tgz#6ed021173e2fcb486d7acb45c6009a856f647071" - integrity sha1-btAhFz4vy0htestFxgCahW9kcHE= - dependencies: - babel-core "^6.26.0" - babel-runtime "^6.26.0" - core-js "^2.5.0" - home-or-tmp "^2.0.0" - lodash "^4.17.4" - mkdirp "^0.5.1" - source-map-support "^0.4.15" - -babel-runtime@^6.22.0, babel-runtime@^6.23.0, babel-runtime@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" - integrity sha1-llxwWGaOgrVde/4E/yM3vItWR/4= - dependencies: - core-js "^2.4.0" - regenerator-runtime "^0.11.0" - -babel-template@^6.16.0, babel-template@^6.24.1, babel-template@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02" - integrity sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI= - dependencies: - babel-runtime "^6.26.0" - babel-traverse "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - lodash "^4.17.4" - -babel-traverse@^6.0.0, babel-traverse@^6.18.0, babel-traverse@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee" - integrity sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4= - dependencies: - babel-code-frame "^6.26.0" - babel-messages "^6.23.0" - babel-runtime "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - debug "^2.6.8" - globals "^9.18.0" - invariant "^2.2.2" - lodash "^4.17.4" - -babel-types@^6.0.0, babel-types@^6.18.0, babel-types@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497" - integrity sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc= - dependencies: - babel-runtime "^6.26.0" - esutils "^2.0.2" - lodash "^4.17.4" - to-fast-properties "^1.0.3" - -babylon@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" - integrity sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ== - -balanced-match@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" - integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= - -base64-js@^1.0.2: - version "1.3.0" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.0.tgz#cab1e6118f051095e58b5281aea8c1cd22bfc0e3" - integrity sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw== - -base@^0.11.1: - version "0.11.2" - resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" - integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== - dependencies: - cache-base "^1.0.1" - class-utils "^0.3.5" - component-emitter "^1.2.1" - define-property "^1.0.0" - isobject "^3.0.1" - mixin-deep "^1.2.0" - pascalcase "^0.1.1" - -batch@0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/batch/-/batch-0.6.1.tgz#dc34314f4e679318093fc760272525f94bf25c16" - integrity sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY= - -bcrypt-pbkdf@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" - integrity sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4= - dependencies: - tweetnacl "^0.14.3" - -big.js@^3.1.3: - version "3.2.0" - resolved "https://registry.yarnpkg.com/big.js/-/big.js-3.2.0.tgz#a5fc298b81b9e0dca2e458824784b65c52ba588e" - integrity sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q== - -binary-extensions@^1.0.0: - version "1.12.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.12.0.tgz#c2d780f53d45bba8317a8902d4ceeaf3a6385b14" - integrity sha512-DYWGk01lDcxeS/K9IHPGWfT8PsJmbXRtRd2Sx72Tnb8pcYZQFF1oSDb8hJtS1vhp212q1Rzi5dUf9+nq0o9UIg== - -block-stream@*: - version "0.0.9" - resolved "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz#13ebfe778a03205cfe03751481ebb4b3300c126a" - integrity sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo= - dependencies: - inherits "~2.0.0" - -bluebird@^3.5.1: - version "3.5.3" - resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.3.tgz#7d01c6f9616c9a51ab0f8c549a79dfe6ec33efa7" - integrity sha512-/qKPUQlaW1OyR51WeCPBvRnAlnZFUJkCSG5HzGnuIqhgyJtF+T94lFnn33eiazjRm2LAHVy2guNnaq48X9SJuw== - -bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0: - version "4.11.8" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.8.tgz#2cde09eb5ee341f484746bb0309b3253b1b1442f" - integrity sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA== - -body-parser@1.18.3: - version "1.18.3" - resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.18.3.tgz#5b292198ffdd553b3a0f20ded0592b956955c8b4" - integrity sha1-WykhmP/dVTs6DyDe0FkrlWlVyLQ= - dependencies: - bytes "3.0.0" - content-type "~1.0.4" - debug "2.6.9" - depd "~1.1.2" - http-errors "~1.6.3" - iconv-lite "0.4.23" - on-finished "~2.3.0" - qs "6.5.2" - raw-body "2.3.3" - type-is "~1.6.16" - -bonjour@^3.5.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/bonjour/-/bonjour-3.5.0.tgz#8e890a183d8ee9a2393b3844c691a42bcf7bc9f5" - integrity sha1-jokKGD2O6aI5OzhExpGkK897yfU= - dependencies: - array-flatten "^2.1.0" - deep-equal "^1.0.1" - dns-equal "^1.0.0" - dns-txt "^2.0.2" - multicast-dns "^6.0.1" - multicast-dns-service-types "^1.1.0" - -boolbase@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" - integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= - -brace-expansion@^1.1.7: - version "1.1.11" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" - integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== - dependencies: - balanced-match "^1.0.0" - concat-map "0.0.1" - -braces@^1.8.2: - version "1.8.5" - resolved "https://registry.yarnpkg.com/braces/-/braces-1.8.5.tgz#ba77962e12dff969d6b76711e914b737857bf6a7" - integrity sha1-uneWLhLf+WnWt2cR6RS3N4V79qc= - dependencies: - expand-range "^1.8.1" - preserve "^0.2.0" - repeat-element "^1.1.2" - -braces@^2.3.0, braces@^2.3.1: - version "2.3.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" - integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== - dependencies: - arr-flatten "^1.1.0" - array-unique "^0.3.2" - extend-shallow "^2.0.1" - fill-range "^4.0.0" - isobject "^3.0.1" - repeat-element "^1.1.2" - snapdragon "^0.8.1" - snapdragon-node "^2.0.1" - split-string "^3.0.2" - to-regex "^3.0.1" - -brorand@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" - integrity sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8= - -browser-process-hrtime@^0.1.2: - version "0.1.3" - resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-0.1.3.tgz#616f00faef1df7ec1b5bf9cfe2bdc3170f26c7b4" - integrity sha512-bRFnI4NnjO6cnyLmOV/7PVoDEMJChlcfN0z4s1YMBY989/SvlfMI1lgCnkFUs53e9gQF+w7qu7XdllSTiSl8Aw== - -browser-resolve@^1.11.3: - version "1.11.3" - resolved "https://registry.yarnpkg.com/browser-resolve/-/browser-resolve-1.11.3.tgz#9b7cbb3d0f510e4cb86bdbd796124d28b5890af6" - integrity sha512-exDi1BYWB/6raKHmDTCicQfTkqwN5fioMFV4j8BsfMU4R2DK/QfZfK7kOVkmWCNANf0snkBzqGqAJBao9gZMdQ== - dependencies: - resolve "1.1.7" - -browserify-aes@^1.0.0, browserify-aes@^1.0.4: - version "1.2.0" - resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" - integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA== - dependencies: - buffer-xor "^1.0.3" - cipher-base "^1.0.0" - create-hash "^1.1.0" - evp_bytestokey "^1.0.3" - inherits "^2.0.1" - safe-buffer "^5.0.1" - -browserify-cipher@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.1.tgz#8d6474c1b870bfdabcd3bcfcc1934a10e94f15f0" - integrity sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w== - dependencies: - browserify-aes "^1.0.4" - browserify-des "^1.0.0" - evp_bytestokey "^1.0.0" - -browserify-des@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.2.tgz#3af4f1f59839403572f1c66204375f7a7f703e9c" - integrity sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A== - dependencies: - cipher-base "^1.0.1" - des.js "^1.0.0" - inherits "^2.0.1" - safe-buffer "^5.1.2" - -browserify-rsa@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.0.1.tgz#21e0abfaf6f2029cf2fafb133567a701d4135524" - integrity sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ= - dependencies: - bn.js "^4.1.0" - randombytes "^2.0.1" - -browserify-sign@^4.0.0: - version "4.0.4" - resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.0.4.tgz#aa4eb68e5d7b658baa6bf6a57e630cbd7a93d298" - integrity sha1-qk62jl17ZYuqa/alfmMMvXqT0pg= - dependencies: - bn.js "^4.1.1" - browserify-rsa "^4.0.0" - create-hash "^1.1.0" - create-hmac "^1.1.2" - elliptic "^6.0.0" - inherits "^2.0.1" - parse-asn1 "^5.0.0" - -browserify-zlib@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.2.0.tgz#2869459d9aa3be245fe8fe2ca1f46e2e7f54d73f" - integrity sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA== - dependencies: - pako "~1.0.5" - -bser@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/bser/-/bser-2.0.0.tgz#9ac78d3ed5d915804fd87acb158bc797147a1719" - integrity sha1-mseNPtXZFYBP2HrLFYvHlxR6Fxk= - dependencies: - node-int64 "^0.4.0" - -buffer-from@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" - integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== - -buffer-indexof@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/buffer-indexof/-/buffer-indexof-1.1.1.tgz#52fabcc6a606d1a00302802648ef68f639da268c" - integrity sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g== - -buffer-xor@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" - integrity sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk= - -buffer@^4.3.0: - version "4.9.1" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.1.tgz#6d1bb601b07a4efced97094132093027c95bc298" - integrity sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg= - dependencies: - base64-js "^1.0.2" - ieee754 "^1.1.4" - isarray "^1.0.0" - -builtin-modules@^1.0.0, builtin-modules@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" - integrity sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8= - -builtin-status-codes@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" - integrity sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug= - -bytes@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" - integrity sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg= - -cacache@^11.0.2: - version "11.3.1" - resolved "https://registry.yarnpkg.com/cacache/-/cacache-11.3.1.tgz#d09d25f6c4aca7a6d305d141ae332613aa1d515f" - integrity sha512-2PEw4cRRDu+iQvBTTuttQifacYjLPhET+SYO/gEFMy8uhi+jlJREDAjSF5FWSdV/Aw5h18caHA7vMTw2c+wDzA== - dependencies: - bluebird "^3.5.1" - chownr "^1.0.1" - figgy-pudding "^3.1.0" - glob "^7.1.2" - graceful-fs "^4.1.11" - lru-cache "^4.1.3" - mississippi "^3.0.0" - mkdirp "^0.5.1" - move-concurrently "^1.0.1" - promise-inflight "^1.0.1" - rimraf "^2.6.2" - ssri "^6.0.0" - unique-filename "^1.1.0" - y18n "^4.0.0" - -cache-base@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" - integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== - dependencies: - collection-visit "^1.0.0" - component-emitter "^1.2.1" - get-value "^2.0.6" - has-value "^1.0.0" - isobject "^3.0.1" - set-value "^2.0.0" - to-object-path "^0.3.0" - union-value "^1.0.0" - unset-value "^1.0.0" - -caller-callsite@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/caller-callsite/-/caller-callsite-2.0.0.tgz#847e0fce0a223750a9a027c54b33731ad3154134" - integrity sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ= - dependencies: - callsites "^2.0.0" - -caller-path@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-2.0.0.tgz#468f83044e369ab2010fac5f06ceee15bb2cb1f4" - integrity sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ= - dependencies: - caller-callsite "^2.0.0" - -callsites@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50" - integrity sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA= - -camelcase-keys@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7" - integrity sha1-MIvur/3ygRkFHvodkyITyRuPkuc= - dependencies: - camelcase "^2.0.0" - map-obj "^1.0.0" - -camelcase@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" - integrity sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8= - -camelcase@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" - integrity sha1-MvxLn82vhF/N9+c7uXysImHwqwo= - -camelcase@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" - integrity sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0= - -camelcase@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.0.0.tgz#03295527d58bd3cd4aa75363f35b2e8d97be2f42" - integrity sha512-faqwZqnWxbxn+F1d399ygeamQNy3lPp/H9H6rNrqYh4FSVCtcY+3cub1MxA8o9mDd55mM8Aghuu/kuyYA6VTsA== - -capture-exit@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/capture-exit/-/capture-exit-1.2.0.tgz#1c5fcc489fd0ab00d4f1ac7ae1072e3173fbab6f" - integrity sha1-HF/MSJ/QqwDU8ax64QcuMXP7q28= - dependencies: - rsvp "^3.3.3" - -caseless@~0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" - integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= - -chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" - integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg= - dependencies: - ansi-styles "^2.2.1" - escape-string-regexp "^1.0.2" - has-ansi "^2.0.0" - strip-ansi "^3.0.0" - supports-color "^2.0.0" - -chalk@^2.0.0, chalk@^2.0.1, chalk@^2.3.0, chalk@^2.3.1, chalk@^2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.1.tgz#18c49ab16a037b6eb0152cc83e3471338215b66e" - integrity sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ== - dependencies: - ansi-styles "^3.2.1" - escape-string-regexp "^1.0.5" - supports-color "^5.3.0" - -cheerio@^1.0.0-rc.2: - version "1.0.0-rc.2" - resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-1.0.0-rc.2.tgz#4b9f53a81b27e4d5dac31c0ffd0cfa03cc6830db" - integrity sha1-S59TqBsn5NXawxwP/Qz6A8xoMNs= - dependencies: - css-select "~1.2.0" - dom-serializer "~0.1.0" - entities "~1.1.1" - htmlparser2 "^3.9.1" - lodash "^4.15.0" - parse5 "^3.0.1" - -chokidar@^2.0.0, chokidar@^2.0.2: - version "2.0.4" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.0.4.tgz#356ff4e2b0e8e43e322d18a372460bbcf3accd26" - integrity sha512-z9n7yt9rOvIJrMhvDtDictKrkFHeihkNl6uWMmZlmL6tJtX9Cs+87oK+teBx+JIgzvbX3yZHT3eF8vpbDxHJXQ== - dependencies: - anymatch "^2.0.0" - async-each "^1.0.0" - braces "^2.3.0" - glob-parent "^3.1.0" - inherits "^2.0.1" - is-binary-path "^1.0.0" - is-glob "^4.0.0" - lodash.debounce "^4.0.8" - normalize-path "^2.1.1" - path-is-absolute "^1.0.0" - readdirp "^2.0.0" - upath "^1.0.5" - optionalDependencies: - fsevents "^1.2.2" - -chownr@^1.0.1, chownr@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.1.tgz#54726b8b8fff4df053c42187e801fb4412df1494" - integrity sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g== - -chrome-trace-event@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.0.tgz#45a91bd2c20c9411f0963b5aaeb9a1b95e09cc48" - integrity sha512-xDbVgyfDTT2piup/h8dK/y4QZfJRSa73bw1WZ8b4XM1o7fsFubUVGYcE+1ANtOzJJELGpYoG2961z0Z6OAld9A== - dependencies: - tslib "^1.9.0" - -ci-info@^1.5.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.6.0.tgz#2ca20dbb9ceb32d4524a683303313f0304b1e497" - integrity sha512-vsGdkwSCDpWmP80ncATX7iea5DWQemg1UgCW5J8tqjU3lYw4FBYuj89J0CTVomA7BEfvSZd84GmHko+MxFQU2A== - -cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de" - integrity sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q== - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - -class-utils@^0.3.5: - version "0.3.6" - resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" - integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== - dependencies: - arr-union "^3.1.0" - define-property "^0.2.5" - isobject "^3.0.0" - static-extend "^0.1.1" - -classnames@^2.2.6: - version "2.2.6" - resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.2.6.tgz#43935bffdd291f326dad0a205309b38d00f650ce" - integrity sha512-JR/iSQOSt+LQIWwrwEzJ9uk0xfN3mTVYMwt1Ir5mUcSN6pU+V4zQFFaJsclJbPuAUQH+yfWef6tm7l1quW3C8Q== - -cli-cursor@^2.0.0, cli-cursor@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" - integrity sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU= - dependencies: - restore-cursor "^2.0.0" - -cli-truncate@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-0.2.1.tgz#9f15cfbb0705005369216c626ac7d05ab90dd574" - integrity sha1-nxXPuwcFAFNpIWxiasfQWrkN1XQ= - dependencies: - slice-ansi "0.0.4" - string-width "^1.0.1" - -cliui@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" - integrity sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0= - dependencies: - string-width "^1.0.1" - strip-ansi "^3.0.1" - wrap-ansi "^2.0.0" - -cliui@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-4.1.0.tgz#348422dbe82d800b3022eef4f6ac10bf2e4d1b49" - integrity sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ== - dependencies: - string-width "^2.1.1" - strip-ansi "^4.0.0" - wrap-ansi "^2.0.0" - -clone-deep@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-2.0.2.tgz#00db3a1e173656730d1188c3d6aced6d7ea97713" - integrity sha512-SZegPTKjCgpQH63E+eN6mVEEPdQBOUzjyJm5Pora4lrwWRFS8I0QAxV/KD6vV/i0WuijHZWQC1fMsPEdxfdVCQ== - dependencies: - for-own "^1.0.0" - is-plain-object "^2.0.4" - kind-of "^6.0.0" - shallow-clone "^1.0.0" - -co@^4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" - integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ= - -code-point-at@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" - integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= - -collection-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" - integrity sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA= - dependencies: - map-visit "^1.0.0" - object-visit "^1.0.0" - -color-convert@^1.9.0: - version "1.9.3" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" - integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== - dependencies: - color-name "1.1.3" - -color-name@1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" - integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= - -colors@0.5.x: - version "0.5.1" - resolved "https://registry.yarnpkg.com/colors/-/colors-0.5.1.tgz#7d0023eaeb154e8ee9fce75dcb923d0ed1667774" - integrity sha1-fQAj6usVTo7p/Oddy5I9DtFmd3Q= - -combined-stream@^1.0.6, combined-stream@~1.0.6: - version "1.0.7" - resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.7.tgz#2d1d24317afb8abe95d6d2c0b07b57813539d828" - integrity sha512-brWl9y6vOB1xYPZcpZde3N9zDByXTosAeMDo4p1wzo6UMOX4vumB+TP1RZ76sfE6Md68Q0NJSrE/gbezd4Ul+w== - dependencies: - delayed-stream "~1.0.0" - -commander@^2.12.1, commander@^2.14.1, commander@^2.9.0: - version "2.19.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.19.0.tgz#f6198aa84e5b83c46054b94ddedbfed5ee9ff12a" - integrity sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg== - -commander@~2.17.1: - version "2.17.1" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.17.1.tgz#bd77ab7de6de94205ceacc72f1716d29f20a77bf" - integrity sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg== - -commondir@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" - integrity sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs= - -component-emitter@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6" - integrity sha1-E3kY1teCg/ffemt8WmPhQOaUJeY= - -compressible@~2.0.14: - version "2.0.15" - resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.15.tgz#857a9ab0a7e5a07d8d837ed43fe2defff64fe212" - integrity sha512-4aE67DL33dSW9gw4CI2H/yTxqHLNcxp0yS6jB+4h+wr3e43+1z7vm0HU9qXOH8j+qjKuL8+UtkOxYQSMq60Ylw== - dependencies: - mime-db ">= 1.36.0 < 2" - -compression@^1.5.2: - version "1.7.3" - resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.3.tgz#27e0e176aaf260f7f2c2813c3e440adb9f1993db" - integrity sha512-HSjyBG5N1Nnz7tF2+O7A9XUhyjru71/fwgNb7oIsEVHR0WShfs2tIS/EySLgiTe98aOK18YDlMXpzjCXY/n9mg== - dependencies: - accepts "~1.3.5" - bytes "3.0.0" - compressible "~2.0.14" - debug "2.6.9" - on-headers "~1.0.1" - safe-buffer "5.1.2" - vary "~1.1.2" - -concat-map@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" - integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= - -concat-stream@^1.5.0: - version "1.6.2" - resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" - integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw== - dependencies: - buffer-from "^1.0.0" - inherits "^2.0.3" - readable-stream "^2.2.2" - typedarray "^0.0.6" - -connect-history-api-fallback@^1.3.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-1.5.0.tgz#b06873934bc5e344fef611a196a6faae0aee015a" - integrity sha1-sGhzk0vF40T+9hGhlqb6rgruAVo= - -console-browserify@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.1.0.tgz#f0241c45730a9fc6323b206dbf38edc741d0bb10" - integrity sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA= - dependencies: - date-now "^0.1.4" - -console-control-strings@^1.0.0, console-control-strings@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" - integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= - -constants-browserify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" - integrity sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U= - -content-disposition@0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.2.tgz#0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4" - integrity sha1-DPaLud318r55YcOoUXjLhdunjLQ= - -content-type@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" - integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== - -convert-source-map@^1.4.0, convert-source-map@^1.5.1: - version "1.6.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.6.0.tgz#51b537a8c43e0f04dec1993bffcdd504e758ac20" - integrity sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A== - dependencies: - safe-buffer "~5.1.1" - -cookie-signature@1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" - integrity sha1-4wOogrNCzD7oylE6eZmXNNqzriw= - -cookie@0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb" - integrity sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s= - -copy-concurrently@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/copy-concurrently/-/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0" - integrity sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A== - dependencies: - aproba "^1.1.1" - fs-write-stream-atomic "^1.0.8" - iferr "^0.1.5" - mkdirp "^0.5.1" - rimraf "^2.5.4" - run-queue "^1.0.0" - -copy-descriptor@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" - integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= - -core-js@^1.0.0: - version "1.2.7" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636" - integrity sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY= - -core-js@^2.4.0, core-js@^2.5.0: - version "2.6.0" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.0.tgz#1e30793e9ee5782b307e37ffa22da0eacddd84d4" - integrity sha512-kLRC6ncVpuEW/1kwrOXYX6KQASCVtrh1gQr/UiaVgFlf9WE5Vp+lNe5+h3LuMr5PAucWnnEXwH0nQHRH/gpGtw== - -core-util-is@1.0.2, core-util-is@~1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" - integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= - -cosmiconfig@5.0.6: - version "5.0.6" - resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.0.6.tgz#dca6cf680a0bd03589aff684700858c81abeeb39" - integrity sha512-6DWfizHriCrFWURP1/qyhsiFvYdlJzbCzmtFWh744+KyWsJo5+kPzUZZaMRSSItoYc0pxFX7gEO7ZC1/gN/7AQ== - dependencies: - is-directory "^0.3.1" - js-yaml "^3.9.0" - parse-json "^4.0.0" - -cosmiconfig@^5.0.7: - version "5.0.7" - resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.0.7.tgz#39826b292ee0d78eda137dfa3173bd1c21a43b04" - integrity sha512-PcLqxTKiDmNT6pSpy4N6KtuPwb53W+2tzNvwOZw0WH9N6O0vLIBq0x8aj8Oj75ere4YcGi48bDFCL+3fRJdlNA== - dependencies: - import-fresh "^2.0.0" - is-directory "^0.3.1" - js-yaml "^3.9.0" - parse-json "^4.0.0" - -create-ecdh@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.3.tgz#c9111b6f33045c4697f144787f9254cdc77c45ff" - integrity sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw== - dependencies: - bn.js "^4.1.0" - elliptic "^6.0.0" - -create-hash@^1.1.0, create-hash@^1.1.2: - version "1.2.0" - resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196" - integrity sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg== - dependencies: - cipher-base "^1.0.1" - inherits "^2.0.1" - md5.js "^1.3.4" - ripemd160 "^2.0.1" - sha.js "^2.4.0" - -create-hmac@^1.1.0, create-hmac@^1.1.2, create-hmac@^1.1.4: - version "1.1.7" - resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff" - integrity sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg== - dependencies: - cipher-base "^1.0.3" - create-hash "^1.1.0" - inherits "^2.0.1" - ripemd160 "^2.0.0" - safe-buffer "^5.0.1" - sha.js "^2.4.8" - -create-react-context@^0.2.2: - version "0.2.3" - resolved "https://registry.yarnpkg.com/create-react-context/-/create-react-context-0.2.3.tgz#9ec140a6914a22ef04b8b09b7771de89567cb6f3" - integrity sha512-CQBmD0+QGgTaxDL3OX1IDXYqjkp2It4RIbcb99jS6AEg27Ga+a9G3JtK6SIu0HBwPLZlmwt9F7UwWA4Bn92Rag== - dependencies: - fbjs "^0.8.0" - gud "^1.0.0" - -cross-spawn@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-3.0.1.tgz#1256037ecb9f0c5f79e3d6ef135e30770184b982" - integrity sha1-ElYDfsufDF9549bvE14wdwGEuYI= - dependencies: - lru-cache "^4.0.1" - which "^1.2.9" - -cross-spawn@^5.0.1: - version "5.1.0" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" - integrity sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk= - dependencies: - lru-cache "^4.0.1" - shebang-command "^1.2.0" - which "^1.2.9" - -cross-spawn@^6.0.0, cross-spawn@^6.0.5: - version "6.0.5" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" - integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== - dependencies: - nice-try "^1.0.4" - path-key "^2.0.1" - semver "^5.5.0" - shebang-command "^1.2.0" - which "^1.2.9" - -crypto-browserify@^3.11.0: - version "3.12.0" - resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec" - integrity sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg== - dependencies: - browserify-cipher "^1.0.0" - browserify-sign "^4.0.0" - create-ecdh "^4.0.0" - create-hash "^1.1.0" - create-hmac "^1.1.0" - diffie-hellman "^5.0.0" - inherits "^2.0.1" - pbkdf2 "^3.0.3" - public-encrypt "^4.0.0" - randombytes "^2.0.0" - randomfill "^1.0.3" - -css-loader@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-1.0.1.tgz#6885bb5233b35ec47b006057da01cc640b6b79fe" - integrity sha512-+ZHAZm/yqvJ2kDtPne3uX0C+Vr3Zn5jFn2N4HywtS5ujwvsVkyg0VArEXpl3BgczDA8anieki1FIzhchX4yrDw== - dependencies: - babel-code-frame "^6.26.0" - css-selector-tokenizer "^0.7.0" - icss-utils "^2.1.0" - loader-utils "^1.0.2" - lodash "^4.17.11" - postcss "^6.0.23" - postcss-modules-extract-imports "^1.2.0" - postcss-modules-local-by-default "^1.2.0" - postcss-modules-scope "^1.1.0" - postcss-modules-values "^1.3.0" - postcss-value-parser "^3.3.0" - source-list-map "^2.0.0" - -css-select@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/css-select/-/css-select-1.2.0.tgz#2b3a110539c5355f1cd8d314623e870b121ec858" - integrity sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg= - dependencies: - boolbase "~1.0.0" - css-what "2.1" - domutils "1.5.1" - nth-check "~1.0.1" - -css-selector-tokenizer@^0.7.0: - version "0.7.1" - resolved "https://registry.yarnpkg.com/css-selector-tokenizer/-/css-selector-tokenizer-0.7.1.tgz#a177271a8bca5019172f4f891fc6eed9cbf68d5d" - integrity sha512-xYL0AMZJ4gFzJQsHUKa5jiWWi2vH77WVNg7JYRyewwj6oPh4yb/y6Y9ZCw9dsj/9UauMhtuxR+ogQd//EdEVNA== - dependencies: - cssesc "^0.1.0" - fastparse "^1.1.1" - regexpu-core "^1.0.0" - -css-what@2.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.2.tgz#c0876d9d0480927d7d4920dcd72af3595649554d" - integrity sha512-wan8dMWQ0GUeF7DGEPVjhHemVW/vy6xUYmFzRY8RYqgA0JtXC9rJmbScBjqSu6dg9q0lwPQy6ZAmJVr3PPTvqQ== - -cssesc@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-0.1.0.tgz#c814903e45623371a0477b40109aaafbeeaddbb4" - integrity sha1-yBSQPkViM3GgR3tAEJqq++6t27Q= - -cssom@0.3.x, "cssom@>= 0.3.2 < 0.4.0": - version "0.3.4" - resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.4.tgz#8cd52e8a3acfd68d3aed38ee0a640177d2f9d797" - integrity sha512-+7prCSORpXNeR4/fUP3rL+TzqtiFfhMvTd7uEqMdgPvLPt4+uzFUeufx5RHjGTACCargg/DiEt/moMQmvnfkog== - -cssstyle@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-1.1.1.tgz#18b038a9c44d65f7a8e428a653b9f6fe42faf5fb" - integrity sha512-364AI1l/M5TYcFH83JnOH/pSqgaNnKmYgKrm0didZMGKWjQB60dymwWy1rKUgL3J1ffdq9xVi2yGLHdSjjSNog== - dependencies: - cssom "0.3.x" - -csstype@^2.2.0: - version "2.5.8" - resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.5.8.tgz#4ce5aa16ea0d562ef9105fa3ae2676f199586a35" - integrity sha512-r4DbsyNJ7slwBSKoGesxDubRWJ71ghG8W2+1HcsDlAo12KGca9dDLv0u98tfdFw7ldBdoA7XmCnI6Q8LpAJXaQ== - -currently-unhandled@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" - integrity sha1-mI3zP+qxke95mmE2nddsF635V+o= - dependencies: - array-find-index "^1.0.1" - -cyclist@~0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/cyclist/-/cyclist-0.2.2.tgz#1b33792e11e914a2fd6d6ed6447464444e5fa640" - integrity sha1-GzN5LhHpFKL9bW7WRHRkRE5fpkA= - -dashdash@^1.12.0: - version "1.14.1" - resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" - integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA= - dependencies: - assert-plus "^1.0.0" - -data-urls@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-1.1.0.tgz#15ee0582baa5e22bb59c77140da8f9c76963bbfe" - integrity sha512-YTWYI9se1P55u58gL5GkQHW4P6VJBJ5iBT+B5a7i2Tjadhv52paJG0qHX4A0OR6/t52odI64KP2YvFpkDOi3eQ== - dependencies: - abab "^2.0.0" - whatwg-mimetype "^2.2.0" - whatwg-url "^7.0.0" - -date-fns@^1.27.2: - version "1.30.1" - resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-1.30.1.tgz#2e71bf0b119153dbb4cc4e88d9ea5acfb50dc05c" - integrity sha512-hBSVCvSmWC+QypYObzwGOd9wqdDpOt+0wl0KbU+R+uuZBS1jN8VsD1ss3irQDknRj5NvxiTF6oj/nDRnN/UQNw== - -date-now@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b" - integrity sha1-6vQ5/U1ISK105cx9vvIAZyueNFs= - -debug@2.6.9, debug@^2.1.2, debug@^2.2.0, debug@^2.3.3, debug@^2.6.8, debug@^2.6.9: - version "2.6.9" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" - integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== - dependencies: - ms "2.0.0" - -debug@=3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" - integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g== - dependencies: - ms "2.0.0" - -debug@^3.1.0, debug@^3.2.5: - version "3.2.6" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" - integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== - dependencies: - ms "^2.1.1" - -debug@^4.0.1: - version "4.1.0" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.0.tgz#373687bffa678b38b1cd91f861b63850035ddc87" - integrity sha512-heNPJUJIqC+xB6ayLAMHaIrmN9HKa7aQO8MGqKpvCA+uJYVcvR6l5kgdrhRuwPFHU7P5/A1w0BjByPHwpfTDKg== - dependencies: - ms "^2.1.1" - -decamelize@^1.1.1, decamelize@^1.1.2, decamelize@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" - integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= - -decamelize@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-2.0.0.tgz#656d7bbc8094c4c788ea53c5840908c9c7d063c7" - integrity sha512-Ikpp5scV3MSYxY39ymh45ZLEecsTdv/Xj2CaQfI8RLMuwi7XvjX9H/fhraiSuU+C5w5NTDu4ZU72xNiZnurBPg== - dependencies: - xregexp "4.0.0" - -decode-uri-component@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" - integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= - -dedent@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" - integrity sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw= - -deep-equal@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" - integrity sha1-9dJgKStmDghO/0zbyfCK0yR0SLU= - -deep-extend@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" - integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== - -deep-is@~0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" - integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= - -deepmerge@^2.1.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-2.2.1.tgz#5d3ff22a01c00f645405a2fbc17d0778a1801170" - integrity sha512-R9hc1Xa/NOBi9WRVUWg19rl1UB7Tt4kuPd+thNJgFZoxXsTz7ncaPaeIm+40oSGuP33DfMb4sZt1QIGiJzC4EA== - -default-gateway@^2.6.0: - version "2.7.2" - resolved "https://registry.yarnpkg.com/default-gateway/-/default-gateway-2.7.2.tgz#b7ef339e5e024b045467af403d50348db4642d0f" - integrity sha512-lAc4i9QJR0YHSDFdzeBQKfZ1SRDG3hsJNEkrpcZa8QhBfidLAilT60BDEIVUUGqosFp425KOgB3uYqcnQrWafQ== - dependencies: - execa "^0.10.0" - ip-regex "^2.1.0" - -default-require-extensions@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/default-require-extensions/-/default-require-extensions-1.0.0.tgz#f37ea15d3e13ffd9b437d33e1a75b5fb97874cb8" - integrity sha1-836hXT4T/9m0N9M+GnW1+5eHTLg= - dependencies: - strip-bom "^2.0.0" - -define-properties@^1.1.2: - version "1.1.3" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" - integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== - dependencies: - object-keys "^1.0.12" - -define-property@^0.2.5: - version "0.2.5" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" - integrity sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY= - dependencies: - is-descriptor "^0.1.0" - -define-property@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" - integrity sha1-dp66rz9KY6rTr56NMEybvnm/sOY= - dependencies: - is-descriptor "^1.0.0" - -define-property@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" - integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== - dependencies: - is-descriptor "^1.0.2" - isobject "^3.0.1" - -del@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/del/-/del-3.0.0.tgz#53ecf699ffcbcb39637691ab13baf160819766e5" - integrity sha1-U+z2mf/LyzljdpGrE7rxYIGXZuU= - dependencies: - globby "^6.1.0" - is-path-cwd "^1.0.0" - is-path-in-cwd "^1.0.0" - p-map "^1.1.1" - pify "^3.0.0" - rimraf "^2.2.8" - -delayed-stream@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" - integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= - -delegates@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" - integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= - -depd@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" - integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= - -des.js@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.0.tgz#c074d2e2aa6a8a9a07dbd61f9a15c2cd83ec8ecc" - integrity sha1-wHTS4qpqipoH29YfmhXCzYPsjsw= - dependencies: - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - -destroy@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" - integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA= - -detect-indent@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208" - integrity sha1-920GQ1LN9Docts5hnE7jqUdd4gg= - dependencies: - repeating "^2.0.0" - -detect-libc@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" - integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= - -detect-newline@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2" - integrity sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I= - -detect-node@^2.0.3: - version "2.0.4" - resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.4.tgz#014ee8f8f669c5c58023da64b8179c083a28c46c" - integrity sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw== - -diff@^3.2.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12" - integrity sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA== - -diffie-hellman@^5.0.0: - version "5.0.3" - resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875" - integrity sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg== - dependencies: - bn.js "^4.1.0" - miller-rabin "^4.0.0" - randombytes "^2.0.0" - -discontinuous-range@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/discontinuous-range/-/discontinuous-range-1.0.0.tgz#e38331f0844bba49b9a9cb71c771585aab1bc65a" - integrity sha1-44Mx8IRLukm5qctxx3FYWqsbxlo= - -dns-equal@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/dns-equal/-/dns-equal-1.0.0.tgz#b39e7f1da6eb0a75ba9c17324b34753c47e0654d" - integrity sha1-s55/HabrCnW6nBcySzR1PEfgZU0= - -dns-packet@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/dns-packet/-/dns-packet-1.3.1.tgz#12aa426981075be500b910eedcd0b47dd7deda5a" - integrity sha512-0UxfQkMhYAUaZI+xrNZOz/as5KgDU0M/fQ9b6SpkyLbk3GEswDi6PADJVaYJradtRVsRIlF1zLyOodbcTCDzUg== - dependencies: - ip "^1.1.0" - safe-buffer "^5.0.1" - -dns-txt@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/dns-txt/-/dns-txt-2.0.2.tgz#b91d806f5d27188e4ab3e7d107d881a1cc4642b6" - integrity sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY= - dependencies: - buffer-indexof "^1.0.0" - -doctrine@0.7.2: - version "0.7.2" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-0.7.2.tgz#7cb860359ba3be90e040b26b729ce4bfa654c523" - integrity sha1-fLhgNZujvpDgQLJrcpzkv6ZUxSM= - dependencies: - esutils "^1.1.6" - isarray "0.0.1" - -dom-serializer@0, dom-serializer@~0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.0.tgz#073c697546ce0780ce23be4a28e293e40bc30c82" - integrity sha1-BzxpdUbOB4DOI75KKOKT5AvDDII= - dependencies: - domelementtype "~1.1.1" - entities "~1.1.1" - -dom-walk@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/dom-walk/-/dom-walk-0.1.1.tgz#672226dc74c8f799ad35307df936aba11acd6018" - integrity sha1-ZyIm3HTI95mtNTB9+TaroRrNYBg= - -domain-browser@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda" - integrity sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA== - -domelementtype@1, domelementtype@^1.3.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.1.tgz#d048c44b37b0d10a7f2a3d5fee3f4333d790481f" - integrity sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w== - -domelementtype@~1.1.1: - version "1.1.3" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.1.3.tgz#bd28773e2642881aec51544924299c5cd822185b" - integrity sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs= - -domexception@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/domexception/-/domexception-1.0.1.tgz#937442644ca6a31261ef36e3ec677fe805582c90" - integrity sha512-raigMkn7CJNNo6Ihro1fzG7wr3fHuYVytzquZKX5n0yizGsTcYgzdIUwj1X9pK0VvjeihV+XiclP+DjwbsSKug== - dependencies: - webidl-conversions "^4.0.2" - -domhandler@^2.3.0: - version "2.4.2" - resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.4.2.tgz#8805097e933d65e85546f726d60f5eb88b44f803" - integrity sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA== - dependencies: - domelementtype "1" - -domutils@1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf" - integrity sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8= - dependencies: - dom-serializer "0" - domelementtype "1" - -domutils@^1.5.1: - version "1.7.0" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.7.0.tgz#56ea341e834e06e6748af7a1cb25da67ea9f8c2a" - integrity sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg== - dependencies: - dom-serializer "0" - domelementtype "1" - -duplexify@^3.4.2, duplexify@^3.6.0: - version "3.6.1" - resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.6.1.tgz#b1a7a29c4abfd639585efaecce80d666b1e34125" - integrity sha512-vM58DwdnKmty+FSPzT14K9JXb90H+j5emaR4KYbr2KTIz00WHGbWOe5ghQTx233ZCLZtrGDALzKwcjEtSt35mA== - dependencies: - end-of-stream "^1.0.0" - inherits "^2.0.1" - readable-stream "^2.0.0" - stream-shift "^1.0.0" - -ecc-jsbn@~0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" - integrity sha1-OoOpBOVDUyh4dMVkt1SThoSamMk= - dependencies: - jsbn "~0.1.0" - safer-buffer "^2.1.0" - -ee-first@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" - integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= - -elegant-spinner@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/elegant-spinner/-/elegant-spinner-1.0.1.tgz#db043521c95d7e303fd8f345bedc3349cfb0729e" - integrity sha1-2wQ1IcldfjA/2PNFvtwzSc+wcp4= - -elliptic@^6.0.0: - version "6.4.1" - resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.1.tgz#c2d0b7776911b86722c632c3c06c60f2f819939a" - integrity sha512-BsXLz5sqX8OHcsh7CqBMztyXARmGQ3LWPtGjJi6DiJHq5C/qvi9P3OqgswKSDftbu8+IoI/QDTAm2fFnQ9SZSQ== - dependencies: - bn.js "^4.4.0" - brorand "^1.0.1" - hash.js "^1.0.0" - hmac-drbg "^1.0.0" - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - minimalistic-crypto-utils "^1.0.0" - -emojis-list@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389" - integrity sha1-TapNnbAPmBmIDHn6RXrlsJof04k= - -encodeurl@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" - integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= - -encoding@^0.1.11: - version "0.1.12" - resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb" - integrity sha1-U4tm8+5izRq1HsMjgp0flIDHS+s= - dependencies: - iconv-lite "~0.4.13" - -end-of-stream@^1.0.0, end-of-stream@^1.1.0: - version "1.4.1" - resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.1.tgz#ed29634d19baba463b6ce6b80a37213eab71ec43" - integrity sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q== - dependencies: - once "^1.4.0" - -enhanced-resolve@^4.0.0, enhanced-resolve@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz#41c7e0bfdfe74ac1ffe1e57ad6a5c6c9f3742a7f" - integrity sha512-F/7vkyTtyc/llOIn8oWclcB25KdRaiPBpZYDgJHgh/UHtpgT2p2eldQgtQnLtUvfMKPKxbRaQM/hHkvLHt1Vng== - dependencies: - graceful-fs "^4.1.2" - memory-fs "^0.4.0" - tapable "^1.0.0" - -entities@^1.1.1, entities@~1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56" - integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w== - -enzyme-adapter-react-16@^1.7.1: - version "1.7.1" - resolved "https://registry.yarnpkg.com/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.7.1.tgz#c37c4cb0fd75e88a063154a7a88096474914496a" - integrity sha512-OQXKgfHWyHN3sFu2nKj3mhgRcqIPIJX6aOzq5AHVFES4R9Dw/vCBZFMPyaG81g2AZ5DogVh39P3MMNUbqNLTcw== - dependencies: - enzyme-adapter-utils "^1.9.0" - function.prototype.name "^1.1.0" - object.assign "^4.1.0" - object.values "^1.0.4" - prop-types "^15.6.2" - react-is "^16.6.1" - react-test-renderer "^16.0.0-0" - -enzyme-adapter-utils@^1.9.0: - version "1.9.0" - resolved "https://registry.yarnpkg.com/enzyme-adapter-utils/-/enzyme-adapter-utils-1.9.0.tgz#3997c20f3387fdcd932b155b3740829ea10aa86c" - integrity sha512-uMe4xw4l/Iloh2Fz+EO23XUYMEQXj5k/5ioLUXCNOUCI8Dml5XQMO9+QwUq962hBsY5qftfHHns+d990byWHvg== - dependencies: - function.prototype.name "^1.1.0" - object.assign "^4.1.0" - prop-types "^15.6.2" - semver "^5.6.0" - -enzyme-to-json@^3.3.5: - version "3.3.5" - resolved "https://registry.yarnpkg.com/enzyme-to-json/-/enzyme-to-json-3.3.5.tgz#f8eb82bd3d5941c9d8bc6fd9140030777d17d0af" - integrity sha512-DmH1wJ68HyPqKSYXdQqB33ZotwfUhwQZW3IGXaNXgR69Iodaoj8TF/D9RjLdz4pEhGq2Tx2zwNUIjBuqoZeTgA== - dependencies: - lodash "^4.17.4" - -enzyme@^3.8.0: - version "3.8.0" - resolved "https://registry.yarnpkg.com/enzyme/-/enzyme-3.8.0.tgz#646d2d5d0798cb98fdec39afcee8a53237b47ad5" - integrity sha512-bfsWo5nHyZm1O1vnIsbwdfhU989jk+squU9NKvB+Puwo5j6/Wg9pN5CO0YJelm98Dao3NPjkDZk+vvgwpMwYxw== - dependencies: - array.prototype.flat "^1.2.1" - cheerio "^1.0.0-rc.2" - function.prototype.name "^1.1.0" - has "^1.0.3" - is-boolean-object "^1.0.0" - is-callable "^1.1.4" - is-number-object "^1.0.3" - is-string "^1.0.4" - is-subset "^0.1.1" - lodash.escape "^4.0.1" - lodash.isequal "^4.5.0" - object-inspect "^1.6.0" - object-is "^1.0.1" - object.assign "^4.1.0" - object.entries "^1.0.4" - object.values "^1.0.4" - raf "^3.4.0" - rst-selector-parser "^2.2.3" - string.prototype.trim "^1.1.2" - -errno@^0.1.3, errno@~0.1.7: - version "0.1.7" - resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.7.tgz#4684d71779ad39af177e3f007996f7c67c852618" - integrity sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg== - dependencies: - prr "~1.0.1" - -error-ex@^1.2.0, error-ex@^1.3.1: - version "1.3.2" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" - integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== - dependencies: - is-arrayish "^0.2.1" - -es-abstract@^1.10.0, es-abstract@^1.5.0, es-abstract@^1.5.1, es-abstract@^1.6.1: - version "1.12.0" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.12.0.tgz#9dbbdd27c6856f0001421ca18782d786bf8a6165" - integrity sha512-C8Fx/0jFmV5IPoMOFPA9P9G5NtqW+4cOPit3MIuvR2t7Ag2K15EJTpxnHAYTzL+aYQJIESYeXZmDBfOBE1HcpA== - dependencies: - es-to-primitive "^1.1.1" - function-bind "^1.1.1" - has "^1.0.1" - is-callable "^1.1.3" - is-regex "^1.0.4" - -es-to-primitive@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.0.tgz#edf72478033456e8dda8ef09e00ad9650707f377" - integrity sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg== - dependencies: - is-callable "^1.1.4" - is-date-object "^1.0.1" - is-symbol "^1.0.2" - -escape-html@~1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" - integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= - -escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.4, escape-string-regexp@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" - integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= - -escodegen@^1.9.1: - version "1.11.0" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.11.0.tgz#b27a9389481d5bfd5bec76f7bb1eb3f8f4556589" - integrity sha512-IeMV45ReixHS53K/OmfKAIztN/igDHzTJUhZM3k1jMhIZWjk45SMwAtBsEXiJp3vSPmTcu6CXn7mDvFHRN66fw== - dependencies: - esprima "^3.1.3" - estraverse "^4.2.0" - esutils "^2.0.2" - optionator "^0.8.1" - optionalDependencies: - source-map "~0.6.1" - -eslint-plugin-prettier@^2.2.0: - version "2.7.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-2.7.0.tgz#b4312dcf2c1d965379d7f9d5b5f8aaadc6a45904" - integrity sha512-CStQYJgALoQBw3FsBzH0VOVDRnJ/ZimUlpLm226U8qgqYJfPOY/CPK6wyRInMxh73HSKg5wyRwdS4BVYYHwokA== - dependencies: - fast-diff "^1.1.1" - jest-docblock "^21.0.0" - -eslint-scope@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.0.tgz#50bf3071e9338bcdc43331794a0cb533f0136172" - integrity sha512-1G6UTDi7Jc1ELFwnR58HV4fK9OQK4S6N985f166xqXxpjU6plxFISJa2Ba9KCQuFa8RCnj/lSFJbHo7UFDBnUA== - dependencies: - esrecurse "^4.1.0" - estraverse "^4.1.1" - -esprima@^3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633" - integrity sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM= - -esprima@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" - integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== - -esrecurse@^4.1.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.1.tgz#007a3b9fdbc2b3bb87e4879ea19c92fdbd3942cf" - integrity sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ== - dependencies: - estraverse "^4.1.0" - -estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" - integrity sha1-De4/7TH81GlhjOc0IJn8GvoL2xM= - -esutils@^1.1.6: - version "1.1.6" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-1.1.6.tgz#c01ccaa9ae4b897c6d0c3e210ae52f3c7a844375" - integrity sha1-wBzKqa5LiXxtDD4hCuUvPHqEQ3U= - -esutils@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" - integrity sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs= - -etag@~1.8.1: - version "1.8.1" - resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" - integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= - -eventemitter3@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-3.1.0.tgz#090b4d6cdbd645ed10bf750d4b5407942d7ba163" - integrity sha512-ivIvhpq/Y0uSjcHDcOIccjmYjGLcP09MFGE7ysAwkAvkXfpZlC985pH2/ui64DKazbTW/4kN3yqozUxlXzI6cA== - -events@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/events/-/events-1.1.1.tgz#9ebdb7635ad099c70dcc4c2a1f5004288e8bd924" - integrity sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ= - -eventsource@^1.0.7: - version "1.0.7" - resolved "https://registry.yarnpkg.com/eventsource/-/eventsource-1.0.7.tgz#8fbc72c93fcd34088090bc0a4e64f4b5cee6d8d0" - integrity sha512-4Ln17+vVT0k8aWq+t/bF5arcS3EpT9gYtW66EPacdj/mAFevznsnyoHLPy2BA8gbIQeIHoPsvwmfBftfcG//BQ== - dependencies: - original "^1.0.0" - -evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02" - integrity sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA== - dependencies: - md5.js "^1.3.4" - safe-buffer "^5.1.1" - -exec-sh@^0.2.0: - version "0.2.2" - resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.2.2.tgz#2a5e7ffcbd7d0ba2755bdecb16e5a427dfbdec36" - integrity sha512-FIUCJz1RbuS0FKTdaAafAByGS0CPvU3R0MeHxgtl+djzCc//F8HakL8GzmVNZanasTbTAY/3DRFA0KpVqj/eAw== - dependencies: - merge "^1.2.0" - -execa@^0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-0.10.0.tgz#ff456a8f53f90f8eccc71a96d11bdfc7f082cb50" - integrity sha512-7XOMnz8Ynx1gGo/3hyV9loYNPWM94jG3+3T3Y8tsfSstFmETmENCMU/A/zj8Lyaj1lkgEepKepvd6240tBRvlw== - dependencies: - cross-spawn "^6.0.0" - get-stream "^3.0.0" - is-stream "^1.1.0" - npm-run-path "^2.0.0" - p-finally "^1.0.0" - signal-exit "^3.0.0" - strip-eof "^1.0.0" - -execa@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-0.7.0.tgz#944becd34cc41ee32a63a9faf27ad5a65fc59777" - integrity sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c= - dependencies: - cross-spawn "^5.0.1" - get-stream "^3.0.0" - is-stream "^1.1.0" - npm-run-path "^2.0.0" - p-finally "^1.0.0" - signal-exit "^3.0.0" - strip-eof "^1.0.0" - -execa@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" - integrity sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA== - dependencies: - cross-spawn "^6.0.0" - get-stream "^4.0.0" - is-stream "^1.1.0" - npm-run-path "^2.0.0" - p-finally "^1.0.0" - signal-exit "^3.0.0" - strip-eof "^1.0.0" - -exenv@^1.2.0: - version "1.2.2" - resolved "https://registry.yarnpkg.com/exenv/-/exenv-1.2.2.tgz#2ae78e85d9894158670b03d47bec1f03bd91bb9d" - integrity sha1-KueOhdmJQVhnCwPUe+wfA72Ru50= - -exit@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" - integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw= - -expand-brackets@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b" - integrity sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s= - dependencies: - is-posix-bracket "^0.1.0" - -expand-brackets@^2.1.4: - version "2.1.4" - resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" - integrity sha1-t3c14xXOMPa27/D4OwQVGiJEliI= - dependencies: - debug "^2.3.3" - define-property "^0.2.5" - extend-shallow "^2.0.1" - posix-character-classes "^0.1.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -expand-range@^1.8.1: - version "1.8.2" - resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337" - integrity sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc= - dependencies: - fill-range "^2.1.0" - -expect@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/expect/-/expect-23.6.0.tgz#1e0c8d3ba9a581c87bd71fb9bc8862d443425f98" - integrity sha512-dgSoOHgmtn/aDGRVFWclQyPDKl2CQRq0hmIEoUAuQs/2rn2NcvCWcSCovm6BLeuB/7EZuLGu2QfnR+qRt5OM4w== - dependencies: - ansi-styles "^3.2.0" - jest-diff "^23.6.0" - jest-get-type "^22.1.0" - jest-matcher-utils "^23.6.0" - jest-message-util "^23.4.0" - jest-regex-util "^23.3.0" - -express@^4.16.2: - version "4.16.4" - resolved "https://registry.yarnpkg.com/express/-/express-4.16.4.tgz#fddef61926109e24c515ea97fd2f1bdbf62df12e" - integrity sha512-j12Uuyb4FMrd/qQAm6uCHAkPtO8FDTRJZBDd5D2KOL2eLaz1yUNdUB/NOIyq0iU4q4cFarsUCrnFDPBcnksuOg== - dependencies: - accepts "~1.3.5" - array-flatten "1.1.1" - body-parser "1.18.3" - content-disposition "0.5.2" - content-type "~1.0.4" - cookie "0.3.1" - cookie-signature "1.0.6" - debug "2.6.9" - depd "~1.1.2" - encodeurl "~1.0.2" - escape-html "~1.0.3" - etag "~1.8.1" - finalhandler "1.1.1" - fresh "0.5.2" - merge-descriptors "1.0.1" - methods "~1.1.2" - on-finished "~2.3.0" - parseurl "~1.3.2" - path-to-regexp "0.1.7" - proxy-addr "~2.0.4" - qs "6.5.2" - range-parser "~1.2.0" - safe-buffer "5.1.2" - send "0.16.2" - serve-static "1.13.2" - setprototypeof "1.1.0" - statuses "~1.4.0" - type-is "~1.6.16" - utils-merge "1.0.1" - vary "~1.1.2" - -extend-shallow@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" - integrity sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8= - dependencies: - is-extendable "^0.1.0" - -extend-shallow@^3.0.0, extend-shallow@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" - integrity sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg= - dependencies: - assign-symbols "^1.0.0" - is-extendable "^1.0.1" - -extend@~3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" - integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== - -extglob@^0.3.1: - version "0.3.2" - resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1" - integrity sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE= - dependencies: - is-extglob "^1.0.0" - -extglob@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" - integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== - dependencies: - array-unique "^0.3.2" - define-property "^1.0.0" - expand-brackets "^2.1.4" - extend-shallow "^2.0.1" - fragment-cache "^0.2.1" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -extract-text-webpack-plugin@^4.0.0-beta.0: - version "4.0.0-beta.0" - resolved "https://registry.yarnpkg.com/extract-text-webpack-plugin/-/extract-text-webpack-plugin-4.0.0-beta.0.tgz#f7361d7ff430b42961f8d1321ba8c1757b5d4c42" - integrity sha512-Hypkn9jUTnFr0DpekNam53X47tXn3ucY08BQumv7kdGgeVUBLq3DJHJTi6HNxv4jl9W+Skxjz9+RnK0sJyqqjA== - dependencies: - async "^2.4.1" - loader-utils "^1.1.0" - schema-utils "^0.4.5" - webpack-sources "^1.1.0" - -extsprintf@1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" - integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU= - -extsprintf@^1.2.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" - integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8= - -fast-deep-equal@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49" - integrity sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk= - -fast-diff@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.2.0.tgz#73ee11982d86caaf7959828d519cfe927fac5f03" - integrity sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w== - -fast-json-stable-stringify@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2" - integrity sha1-1RQsDK7msRifh9OnYREGT4bIu/I= - -fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.4: - version "2.0.6" - resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" - integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= - -fastparse@^1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/fastparse/-/fastparse-1.1.2.tgz#91728c5a5942eced8531283c79441ee4122c35a9" - integrity sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ== - -faye-websocket@^0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4" - integrity sha1-TkkvjQTftviQA1B/btvy1QHnxvQ= - dependencies: - websocket-driver ">=0.5.1" - -faye-websocket@~0.11.1: - version "0.11.1" - resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.1.tgz#f0efe18c4f56e4f40afc7e06c719fd5ee6188f38" - integrity sha1-8O/hjE9W5PQK/H4Gxxn9XuYYjzg= - dependencies: - websocket-driver ">=0.5.1" - -fb-watchman@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.0.tgz#54e9abf7dfa2f26cd9b1636c588c1afc05de5d58" - integrity sha1-VOmr99+i8mzZsWNsWIwa/AXeXVg= - dependencies: - bser "^2.0.0" - -fbjs@^0.8.0: - version "0.8.17" - resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.17.tgz#c4d598ead6949112653d6588b01a5cdcd9f90fdd" - integrity sha1-xNWY6taUkRJlPWWIsBpc3Nn5D90= - dependencies: - core-js "^1.0.0" - isomorphic-fetch "^2.1.1" - loose-envify "^1.0.0" - object-assign "^4.1.0" - promise "^7.1.1" - setimmediate "^1.0.5" - ua-parser-js "^0.7.18" - -figgy-pudding@^3.1.0, figgy-pudding@^3.5.1: - version "3.5.1" - resolved "https://registry.yarnpkg.com/figgy-pudding/-/figgy-pudding-3.5.1.tgz#862470112901c727a0e495a80744bd5baa1d6790" - integrity sha512-vNKxJHTEKNThjfrdJwHc7brvM6eVevuO5nTj6ez8ZQ1qbXTvGthucRF7S4vf2cr71QVnT70V34v0S1DyQsti0w== - -figures@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e" - integrity sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4= - dependencies: - escape-string-regexp "^1.0.5" - object-assign "^4.1.0" - -figures@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" - integrity sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI= - dependencies: - escape-string-regexp "^1.0.5" - -file-loader@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-2.0.0.tgz#39749c82f020b9e85901dcff98e8004e6401cfde" - integrity sha512-YCsBfd1ZGCyonOKLxPiKPdu+8ld9HAaMEvJewzz+b2eTF7uL5Zm/HdBF6FjCrpCMRq25Mi0U1gl4pwn2TlH7hQ== - dependencies: - loader-utils "^1.0.2" - schema-utils "^1.0.0" - -filename-regex@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26" - integrity sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY= - -fileset@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/fileset/-/fileset-2.0.3.tgz#8e7548a96d3cc2327ee5e674168723a333bba2a0" - integrity sha1-jnVIqW08wjJ+5eZ0FocjozO7oqA= - dependencies: - glob "^7.0.3" - minimatch "^3.0.3" - -fill-range@^2.1.0: - version "2.2.4" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.4.tgz#eb1e773abb056dcd8df2bfdf6af59b8b3a936565" - integrity sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q== - dependencies: - is-number "^2.1.0" - isobject "^2.0.0" - randomatic "^3.0.0" - repeat-element "^1.1.2" - repeat-string "^1.5.2" - -fill-range@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" - integrity sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc= - dependencies: - extend-shallow "^2.0.1" - is-number "^3.0.0" - repeat-string "^1.6.1" - to-regex-range "^2.1.0" - -finalhandler@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.1.tgz#eebf4ed840079c83f4249038c9d703008301b105" - integrity sha512-Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg== - dependencies: - debug "2.6.9" - encodeurl "~1.0.2" - escape-html "~1.0.3" - on-finished "~2.3.0" - parseurl "~1.3.2" - statuses "~1.4.0" - unpipe "~1.0.0" - -find-cache-dir@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-2.0.0.tgz#4c1faed59f45184530fb9d7fa123a4d04a98472d" - integrity sha512-LDUY6V1Xs5eFskUVYtIwatojt6+9xC9Chnlk/jYOOvn3FAFfSaWddxahDGyNHh0b2dMXa6YW2m0tk8TdVaXHlA== - dependencies: - commondir "^1.0.1" - make-dir "^1.0.0" - pkg-dir "^3.0.0" - -find-parent-dir@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/find-parent-dir/-/find-parent-dir-0.3.0.tgz#33c44b429ab2b2f0646299c5f9f718f376ff8d54" - integrity sha1-M8RLQpqysvBkYpnF+fcY83b/jVQ= - -find-up@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" - integrity sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8= - dependencies: - path-exists "^2.0.0" - pinkie-promise "^2.0.0" - -find-up@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" - integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c= - dependencies: - locate-path "^2.0.0" - -find-up@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" - integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== - dependencies: - locate-path "^3.0.0" - -flush-write-stream@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.0.3.tgz#c5d586ef38af6097650b49bc41b55fabb19f35bd" - integrity sha512-calZMC10u0FMUqoiunI2AiGIIUtUIvifNwkHhNupZH4cbNnW1Itkoh/Nf5HFYmDrwWPjrUxpkZT0KhuCq0jmGw== - dependencies: - inherits "^2.0.1" - readable-stream "^2.0.4" - -flux-standard-action@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/flux-standard-action/-/flux-standard-action-2.0.3.tgz#a73a6c4b25ea19d7051afe093ec108ff33dd8935" - integrity sha512-HR2IjMkqJreoFm1Hx7hmMAtUFeo+ad8hPMYPo8o3YSWjbSq0sMwuXMbv4giB3TXngYB7+svkAJewQwwvwsE6xw== - dependencies: - lodash "^4.0.0" - -follow-redirects@^1.0.0, follow-redirects@^1.3.0: - version "1.5.10" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.5.10.tgz#7b7a9f9aea2fdff36786a94ff643ed07f4ff5e2a" - integrity sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ== - dependencies: - debug "=3.1.0" - -for-in@^0.1.3: - version "0.1.8" - resolved "https://registry.yarnpkg.com/for-in/-/for-in-0.1.8.tgz#d8773908e31256109952b1fdb9b3fa867d2775e1" - integrity sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE= - -for-in@^1.0.1, for-in@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" - integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA= - -for-own@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.5.tgz#5265c681a4f294dabbf17c9509b6763aa84510ce" - integrity sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4= - dependencies: - for-in "^1.0.1" - -for-own@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/for-own/-/for-own-1.0.0.tgz#c63332f415cedc4b04dbfe70cf836494c53cb44b" - integrity sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs= - dependencies: - for-in "^1.0.1" - -forever-agent@~0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" - integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= - -form-data@~2.3.2: - version "2.3.3" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" - integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ== - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.6" - mime-types "^2.1.12" - -formik@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/formik/-/formik-1.4.1.tgz#6fb3d18c4fb59f70503734f40afd91dea4219f72" - integrity sha512-1pjcg65Pn4fuOgQv4cQOn9wDjCQ6f2J1QONDQaP4GfaiRYN/pQx2xtoyGo9ibNr/zR/cmayr1ew7EFaeAPLvsA== - dependencies: - create-react-context "^0.2.2" - deepmerge "^2.1.1" - hoist-non-react-statics "^2.5.5" - lodash "^4.17.11" - lodash-es "^4.17.11" - prop-types "^15.6.1" - react-fast-compare "^2.0.1" - tslib "^1.9.3" - warning "^3.0.0" - -forwarded@~0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.2.tgz#98c23dab1175657b8c0573e8ceccd91b0ff18c84" - integrity sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ= - -fragment-cache@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" - integrity sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk= - dependencies: - map-cache "^0.2.2" - -fresh@0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" - integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac= - -from2@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" - integrity sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8= - dependencies: - inherits "^2.0.1" - readable-stream "^2.0.0" - -fs-extra@^7.0.0: - version "7.0.1" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-7.0.1.tgz#4f189c44aa123b895f722804f55ea23eadc348e9" - integrity sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw== - dependencies: - graceful-fs "^4.1.2" - jsonfile "^4.0.0" - universalify "^0.1.0" - -fs-minipass@^1.2.5: - version "1.2.5" - resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.5.tgz#06c277218454ec288df77ada54a03b8702aacb9d" - integrity sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ== - dependencies: - minipass "^2.2.1" - -fs-write-stream-atomic@^1.0.8: - version "1.0.10" - resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" - integrity sha1-tH31NJPvkR33VzHnCp3tAYnbQMk= - dependencies: - graceful-fs "^4.1.2" - iferr "^0.1.5" - imurmurhash "^0.1.4" - readable-stream "1 || 2" - -fs.realpath@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" - integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= - -fsevents@^1.2.2, fsevents@^1.2.3: - version "1.2.4" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.4.tgz#f41dcb1af2582af3692da36fc55cbd8e1041c426" - integrity sha512-z8H8/diyk76B7q5wg+Ud0+CqzcAF3mBBI/bA5ne5zrRUUIvNkJY//D3BqyH571KuAC4Nr7Rw7CjWX4r0y9DvNg== - dependencies: - nan "^2.9.2" - node-pre-gyp "^0.10.0" - -fstream@^1.0.0, fstream@^1.0.2: - version "1.0.11" - resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.11.tgz#5c1fb1f117477114f0632a0eb4b71b3cb0fd3171" - integrity sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE= - dependencies: - graceful-fs "^4.1.2" - inherits "~2.0.0" - mkdirp ">=0.5 0" - rimraf "2" - -function-bind@^1.0.2, function-bind@^1.1.0, function-bind@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" - integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== - -function.prototype.name@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.0.tgz#8bd763cc0af860a859cc5d49384d74b932cd2327" - integrity sha512-Bs0VRrTz4ghD8pTmbJQD1mZ8A/mN0ur/jGz+A6FBxPDUPkm1tNfF6bhTYPA7i7aF4lZJVr+OXTNNrnnIl58Wfg== - dependencies: - define-properties "^1.1.2" - function-bind "^1.1.1" - is-callable "^1.1.3" - -g-status@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/g-status/-/g-status-2.0.2.tgz#270fd32119e8fc9496f066fe5fe88e0a6bc78b97" - integrity sha512-kQoE9qH+T1AHKgSSD0Hkv98bobE90ILQcXAF4wvGgsr7uFqNvwmh8j+Lq3l0RVt3E3HjSbv2B9biEGcEtpHLCA== - dependencies: - arrify "^1.0.1" - matcher "^1.0.0" - simple-git "^1.85.0" - -gauge@~2.7.3: - version "2.7.4" - resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" - integrity sha1-LANAXHU4w51+s3sxcCLjJfsBi/c= - dependencies: - aproba "^1.0.3" - console-control-strings "^1.0.0" - has-unicode "^2.0.0" - object-assign "^4.1.0" - signal-exit "^3.0.0" - string-width "^1.0.1" - strip-ansi "^3.0.1" - wide-align "^1.1.0" - -gaze@^1.0.0: - version "1.1.3" - resolved "https://registry.yarnpkg.com/gaze/-/gaze-1.1.3.tgz#c441733e13b927ac8c0ff0b4c3b033f28812924a" - integrity sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g== - dependencies: - globule "^1.0.0" - -get-caller-file@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a" - integrity sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w== - -get-own-enumerable-property-symbols@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.0.tgz#b877b49a5c16aefac3655f2ed2ea5b684df8d203" - integrity sha512-CIJYJC4GGF06TakLg8z4GQKvDsx9EMspVxOYih7LerEL/WosUnFIww45CGfxfeKHqlg3twgUrYRT1O3WQqjGCg== - -get-stdin@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" - integrity sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4= - -get-stdin@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-6.0.0.tgz#9e09bf712b360ab9225e812048f71fde9c89657b" - integrity sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g== - -get-stream@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" - integrity sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ= - -get-stream@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" - integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== - dependencies: - pump "^3.0.0" - -get-value@^2.0.3, get-value@^2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" - integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg= - -getpass@^0.1.1: - version "0.1.7" - resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" - integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= - dependencies: - assert-plus "^1.0.0" - -glob-base@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4" - integrity sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q= - dependencies: - glob-parent "^2.0.0" - is-glob "^2.0.0" - -glob-parent@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-2.0.0.tgz#81383d72db054fcccf5336daa902f182f6edbb28" - integrity sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg= - dependencies: - is-glob "^2.0.0" - -glob-parent@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" - integrity sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4= - dependencies: - is-glob "^3.1.0" - path-dirname "^1.0.0" - -glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@~7.1.1: - version "7.1.3" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1" - integrity sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ== - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.0.4" - once "^1.3.0" - path-is-absolute "^1.0.0" - -global-modules-path@^2.3.0: - version "2.3.1" - resolved "https://registry.yarnpkg.com/global-modules-path/-/global-modules-path-2.3.1.tgz#e541f4c800a1a8514a990477b267ac67525b9931" - integrity sha512-y+shkf4InI7mPRHSo2b/k6ix6+NLDtyccYv86whhxrSGX9wjPX1VMITmrDbE1eh7zkzhiWtW2sHklJYoQ62Cxg== - -global@^4.3.0: - version "4.3.2" - resolved "https://registry.yarnpkg.com/global/-/global-4.3.2.tgz#e76989268a6c74c38908b1305b10fc0e394e9d0f" - integrity sha1-52mJJopsdMOJCLEwWxD8DjlOnQ8= - dependencies: - min-document "^2.19.0" - process "~0.5.1" - -globals@^9.18.0: - version "9.18.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" - integrity sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ== - -globby@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c" - integrity sha1-9abXDoOV4hyFj7BInWTfAkJNUGw= - dependencies: - array-union "^1.0.1" - glob "^7.0.3" - object-assign "^4.0.1" - pify "^2.0.0" - pinkie-promise "^2.0.0" - -globule@^1.0.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/globule/-/globule-1.2.1.tgz#5dffb1b191f22d20797a9369b49eab4e9839696d" - integrity sha512-g7QtgWF4uYSL5/dn71WxubOrS7JVGCnFPEnoeChJmBnyR9Mw8nGoEwOgJL/RC2Te0WhbsEUCejfH8SZNJ+adYQ== - dependencies: - glob "~7.1.1" - lodash "~4.17.10" - minimatch "~3.0.2" - -graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6: - version "4.1.15" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.15.tgz#ffb703e1066e8a0eeaa4c8b80ba9253eeefbfb00" - integrity sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA== - -growly@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" - integrity sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE= - -gud@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/gud/-/gud-1.0.0.tgz#a489581b17e6a70beca9abe3ae57de7a499852c0" - integrity sha512-zGEOVKFM5sVPPrYs7J5/hYEw2Pof8KCyOwyhG8sAF26mCAeUFAcYPu1mwB7hhpIP29zOIBaDqwuHdLp0jvZXjw== - -handle-thing@^1.2.5: - version "1.2.5" - resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-1.2.5.tgz#fd7aad726bf1a5fd16dfc29b2f7a6601d27139c4" - integrity sha1-/Xqtcmvxpf0W38KbL3pmAdJxOcQ= - -handlebars@^4.0.3: - version "4.0.12" - resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.0.12.tgz#2c15c8a96d46da5e266700518ba8cb8d919d5bc5" - integrity sha512-RhmTekP+FZL+XNhwS1Wf+bTTZpdLougwt5pcgA1tuz6Jcx0fpH/7z0qd71RKnZHBCxIRBHfBOnio4gViPemNzA== - dependencies: - async "^2.5.0" - optimist "^0.6.1" - source-map "^0.6.1" - optionalDependencies: - uglify-js "^3.1.4" - -har-schema@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" - integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= - -har-validator@~5.1.0: - version "5.1.3" - resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.3.tgz#1ef89ebd3e4996557675eed9893110dc350fa080" - integrity sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g== - dependencies: - ajv "^6.5.5" - har-schema "^2.0.0" - -harmony-reflect@^1.4.6: - version "1.6.1" - resolved "https://registry.yarnpkg.com/harmony-reflect/-/harmony-reflect-1.6.1.tgz#c108d4f2bb451efef7a37861fdbdae72c9bdefa9" - integrity sha512-WJTeyp0JzGtHcuMsi7rw2VwtkvLa+JyfEKJCFyfcS0+CDkjQ5lHPu7zEhFZP+PDSRrEgXa5Ah0l1MbgbE41XjA== - -has-ansi@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" - integrity sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE= - dependencies: - ansi-regex "^2.0.0" - -has-flag@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa" - integrity sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo= - -has-flag@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" - integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= - -has-symbols@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44" - integrity sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q= - -has-unicode@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" - integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= - -has-value@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" - integrity sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8= - dependencies: - get-value "^2.0.3" - has-values "^0.1.4" - isobject "^2.0.0" - -has-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" - integrity sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc= - dependencies: - get-value "^2.0.6" - has-values "^1.0.0" - isobject "^3.0.0" - -has-values@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" - integrity sha1-bWHeldkd/Km5oCCJrThL/49it3E= - -has-values@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" - integrity sha1-lbC2P+whRmGab+V/51Yo1aOe/k8= - dependencies: - is-number "^3.0.0" - kind-of "^4.0.0" - -has@^1.0.1, has@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" - integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== - dependencies: - function-bind "^1.1.1" - -hash-base@^3.0.0: - version "3.0.4" - resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.0.4.tgz#5fc8686847ecd73499403319a6b0a3f3f6ae4918" - integrity sha1-X8hoaEfs1zSZQDMZprCj8/auSRg= - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - -hash.js@^1.0.0, hash.js@^1.0.3: - version "1.1.7" - resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" - integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== - dependencies: - inherits "^2.0.3" - minimalistic-assert "^1.0.1" - -history@^4.7.2: - version "4.7.2" - resolved "https://registry.yarnpkg.com/history/-/history-4.7.2.tgz#22b5c7f31633c5b8021c7f4a8a954ac139ee8d5b" - integrity sha512-1zkBRWW6XweO0NBcjiphtVJVsIQ+SXF29z9DVkceeaSLVMFXHool+fdCZD4spDCfZJCILPILc3bm7Bc+HRi0nA== - dependencies: - invariant "^2.2.1" - loose-envify "^1.2.0" - resolve-pathname "^2.2.0" - value-equal "^0.4.0" - warning "^3.0.0" - -hmac-drbg@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" - integrity sha1-0nRXAQJabHdabFRXk+1QL8DGSaE= - dependencies: - hash.js "^1.0.3" - minimalistic-assert "^1.0.0" - minimalistic-crypto-utils "^1.0.1" - -hoist-non-react-statics@^2.5.0, hoist-non-react-statics@^2.5.5: - version "2.5.5" - resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-2.5.5.tgz#c5903cf409c0dfd908f388e619d86b9c1174cb47" - integrity sha512-rqcy4pJo55FTTLWt+bU8ukscqHeE/e9KWvsOW2b/a3afxQZhwkQdT1rPPCJ0rYXdj4vNcasY8zHTH+jF/qStxw== - -hoist-non-react-statics@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.2.1.tgz#c09c0555c84b38a7ede6912b61efddafd6e75e1e" - integrity sha512-TFsu3TV3YLY+zFTZDrN8L2DTFanObwmBLpWvJs1qfUuEQ5bTAdFcwfx2T/bsCXfM9QHSLvjfP+nihEl0yvozxw== - dependencies: - react-is "^16.3.2" - -home-or-tmp@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8" - integrity sha1-42w/LSyufXRqhX440Y1fMqeILbg= - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.1" - -hosted-git-info@^2.1.4: - version "2.7.1" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.7.1.tgz#97f236977bd6e125408930ff6de3eec6281ec047" - integrity sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w== - -hpack.js@^2.1.6: - version "2.1.6" - resolved "https://registry.yarnpkg.com/hpack.js/-/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2" - integrity sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI= - dependencies: - inherits "^2.0.1" - obuf "^1.0.0" - readable-stream "^2.0.1" - wbuf "^1.1.0" - -html-encoding-sniffer@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz#e70d84b94da53aa375e11fe3a351be6642ca46f8" - integrity sha512-71lZziiDnsuabfdYiUeWdCVyKuqwWi23L8YeIgV9jSSZHCtb6wB1BKWooH7L3tn4/FuZJMVWyNaIDr4RGmaSYw== - dependencies: - whatwg-encoding "^1.0.1" - -html-entities@^1.2.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.2.1.tgz#0df29351f0721163515dfb9e5543e5f6eed5162f" - integrity sha1-DfKTUfByEWNRXfueVUPl9u7VFi8= - -htmlparser2@^3.9.1: - version "3.10.0" - resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.10.0.tgz#5f5e422dcf6119c0d983ed36260ce9ded0bee464" - integrity sha512-J1nEUGv+MkXS0weHNWVKJJ+UrLfePxRWpN3C9bEi9fLxL2+ggW94DQvgYVXsaT30PGwYRIZKNZXuyMhp3Di4bQ== - dependencies: - domelementtype "^1.3.0" - domhandler "^2.3.0" - domutils "^1.5.1" - entities "^1.1.1" - inherits "^2.0.1" - readable-stream "^3.0.6" - -http-deceiver@^1.2.7: - version "1.2.7" - resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" - integrity sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc= - -http-errors@1.6.3, http-errors@~1.6.2, http-errors@~1.6.3: - version "1.6.3" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d" - integrity sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0= - dependencies: - depd "~1.1.2" - inherits "2.0.3" - setprototypeof "1.1.0" - statuses ">= 1.4.0 < 2" - -http-parser-js@>=0.4.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.5.0.tgz#d65edbede84349d0dc30320815a15d39cc3cbbd8" - integrity sha512-cZdEF7r4gfRIq7ezX9J0T+kQmJNOub71dWbgAXVHDct80TKP4MCETtZQ31xyv38UwgzkWPYF/Xc0ge55dW9Z9w== - -http-proxy-middleware@~0.18.0: - version "0.18.0" - resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.18.0.tgz#0987e6bb5a5606e5a69168d8f967a87f15dd8aab" - integrity sha512-Fs25KVMPAIIcgjMZkVHJoKg9VcXcC1C8yb9JUgeDvVXY0S/zgVIhMb+qVswDIgtJe2DfckMSY2d6TuTEutlk6Q== - dependencies: - http-proxy "^1.16.2" - is-glob "^4.0.0" - lodash "^4.17.5" - micromatch "^3.1.9" - -http-proxy@^1.16.2: - version "1.17.0" - resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.17.0.tgz#7ad38494658f84605e2f6db4436df410f4e5be9a" - integrity sha512-Taqn+3nNvYRfJ3bGvKfBSRwy1v6eePlm3oc/aWVxZp57DQr5Eq3xhKJi7Z4hZpS8PC3H4qI+Yly5EmFacGuA/g== - dependencies: - eventemitter3 "^3.0.0" - follow-redirects "^1.0.0" - requires-port "^1.0.0" - -http-signature@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" - integrity sha1-muzZJRFHcvPZW2WmCruPfBj7rOE= - dependencies: - assert-plus "^1.0.0" - jsprim "^1.2.2" - sshpk "^1.7.0" - -https-browserify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" - integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM= - -husky@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/husky/-/husky-1.2.1.tgz#33628f7013e345c1790a4dbe4642ad047f772dee" - integrity sha512-4Ylal3HWhnDvIszuiyLoVrSGI7QLg/ogkNCoHE34c+yZYzb9kBZNrlTOsdw92cGi3cJT8pPb6CdVfxFkLnc8Dg== - dependencies: - cosmiconfig "^5.0.7" - execa "^1.0.0" - find-up "^3.0.0" - get-stdin "^6.0.0" - is-ci "^1.2.1" - pkg-dir "^3.0.0" - please-upgrade-node "^3.1.1" - read-pkg "^4.0.1" - run-node "^1.0.0" - slash "^2.0.0" - -iconv-lite@0.4.23: - version "0.4.23" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.23.tgz#297871f63be507adcfbfca715d0cd0eed84e9a63" - integrity sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA== - dependencies: - safer-buffer ">= 2.1.2 < 3" - -iconv-lite@0.4.24, iconv-lite@^0.4.4, iconv-lite@~0.4.13: - version "0.4.24" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" - integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== - dependencies: - safer-buffer ">= 2.1.2 < 3" - -icss-replace-symbols@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz#06ea6f83679a7749e386cfe1fe812ae5db223ded" - integrity sha1-Bupvg2ead0njhs/h/oEq5dsiPe0= - -icss-utils@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-2.1.0.tgz#83f0a0ec378bf3246178b6c2ad9136f135b1c962" - integrity sha1-g/Cg7DeL8yRheLbCrZE28TWxyWI= - dependencies: - postcss "^6.0.1" - -identity-obj-proxy@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/identity-obj-proxy/-/identity-obj-proxy-3.0.0.tgz#94d2bda96084453ef36fbc5aaec37e0f79f1fc14" - integrity sha1-lNK9qWCERT7zb7xarsN+D3nx/BQ= - dependencies: - harmony-reflect "^1.4.6" - -ieee754@^1.1.4: - version "1.1.12" - resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.12.tgz#50bf24e5b9c8bb98af4964c941cdb0918da7b60b" - integrity sha512-GguP+DRY+pJ3soyIiGPTvdiVXjZ+DbXOxGpXn3eMvNW4x4irjqXm4wHKscC+TfxSJ0yw/S1F24tqdMNsMZTiLA== - -iferr@^0.1.5: - version "0.1.5" - resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" - integrity sha1-xg7taebY/bazEEofy8ocGS3FtQE= - -ignore-walk@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.1.tgz#a83e62e7d272ac0e3b551aaa82831a19b69f82f8" - integrity sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ== - dependencies: - minimatch "^3.0.4" - -import-fresh@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-2.0.0.tgz#d81355c15612d386c61f9ddd3922d4304822a546" - integrity sha1-2BNVwVYS04bGH53dOSLUMEgipUY= - dependencies: - caller-path "^2.0.0" - resolve-from "^3.0.0" - -import-local@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/import-local/-/import-local-1.0.0.tgz#5e4ffdc03f4fe6c009c6729beb29631c2f8227bc" - integrity sha512-vAaZHieK9qjGo58agRBg+bhHX3hoTZU/Oa3GESWLz7t1U62fk63aHuDJJEteXoDeTCcPmUT+z38gkHPZkkmpmQ== - dependencies: - pkg-dir "^2.0.0" - resolve-cwd "^2.0.0" - -import-local@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/import-local/-/import-local-2.0.0.tgz#55070be38a5993cf18ef6db7e961f5bee5c5a09d" - integrity sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ== - dependencies: - pkg-dir "^3.0.0" - resolve-cwd "^2.0.0" - -imurmurhash@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" - integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= - -in-publish@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/in-publish/-/in-publish-2.0.0.tgz#e20ff5e3a2afc2690320b6dc552682a9c7fadf51" - integrity sha1-4g/146KvwmkDILbcVSaCqcf631E= - -indent-string@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80" - integrity sha1-ji1INIdCEhtKghi3oTfppSBJ3IA= - dependencies: - repeating "^2.0.0" - -indent-string@^3.0.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-3.2.0.tgz#4a5fd6d27cc332f37e5419a504dbb837105c9289" - integrity sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok= - -indexof@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d" - integrity sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10= - -inflight@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= - dependencies: - once "^1.3.0" - wrappy "1" - -inherits@2, inherits@2.0.3, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" - integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= - -inherits@2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" - integrity sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE= - -ini@~1.3.0: - version "1.3.5" - resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" - integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw== - -internal-ip@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/internal-ip/-/internal-ip-3.0.1.tgz#df5c99876e1d2eb2ea2d74f520e3f669a00ece27" - integrity sha512-NXXgESC2nNVtU+pqmC9e6R8B1GpKxzsAQhffvh5AL79qKnodd+L7tnEQmTiUAVngqLalPbSqRA7XGIEL5nCd0Q== - dependencies: - default-gateway "^2.6.0" - ipaddr.js "^1.5.2" - -interpret@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.1.0.tgz#7ed1b1410c6a0e0f78cf95d3b8440c63f78b8614" - integrity sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ= - -invariant@^2.2.1, invariant@^2.2.2, invariant@^2.2.4: - version "2.2.4" - resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" - integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA== - dependencies: - loose-envify "^1.0.0" - -invert-kv@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" - integrity sha1-EEqOSqym09jNFXqO+L+rLXo//bY= - -invert-kv@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-2.0.0.tgz#7393f5afa59ec9ff5f67a27620d11c226e3eec02" - integrity sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA== - -ip-regex@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-2.1.0.tgz#fa78bf5d2e6913c911ce9f819ee5146bb6d844e9" - integrity sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk= - -ip@^1.1.0, ip@^1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" - integrity sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo= - -ipaddr.js@1.8.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.8.0.tgz#eaa33d6ddd7ace8f7f6fe0c9ca0440e706738b1e" - integrity sha1-6qM9bd16zo9/b+DJygRA5wZzix4= - -ipaddr.js@^1.5.2: - version "1.8.1" - resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.8.1.tgz#fa4b79fa47fd3def5e3b159825161c0a519c9427" - integrity sha1-+kt5+kf9Pe9eOxWYJRYcClGclCc= - -is-accessor-descriptor@^0.1.6: - version "0.1.6" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" - integrity sha1-qeEss66Nh2cn7u84Q/igiXtcmNY= - dependencies: - kind-of "^3.0.2" - -is-accessor-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" - integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ== - dependencies: - kind-of "^6.0.0" - -is-arrayish@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" - integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= - -is-binary-path@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" - integrity sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg= - dependencies: - binary-extensions "^1.0.0" - -is-boolean-object@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.0.0.tgz#98f8b28030684219a95f375cfbd88ce3405dff93" - integrity sha1-mPiygDBoQhmpXzdc+9iM40Bd/5M= - -is-buffer@^1.1.5: - version "1.1.6" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" - integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== - -is-builtin-module@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe" - integrity sha1-VAVy0096wxGfj3bDDLwbHgN6/74= - dependencies: - builtin-modules "^1.0.0" - -is-callable@^1.1.3, is-callable@^1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75" - integrity sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA== - -is-ci@^1.0.10, is-ci@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.2.1.tgz#e3779c8ee17fccf428488f6e281187f2e632841c" - integrity sha512-s6tfsaQaQi3JNciBH6shVqEDvhGut0SUXr31ag8Pd8BBbVVlcGfWhpPmEOoM6RJ5TFhbypvf5yyRw/VXW1IiWg== - dependencies: - ci-info "^1.5.0" - -is-data-descriptor@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" - integrity sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y= - dependencies: - kind-of "^3.0.2" - -is-data-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" - integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ== - dependencies: - kind-of "^6.0.0" - -is-date-object@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" - integrity sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY= - -is-descriptor@^0.1.0: - version "0.1.6" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" - integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg== - dependencies: - is-accessor-descriptor "^0.1.6" - is-data-descriptor "^0.1.4" - kind-of "^5.0.0" - -is-descriptor@^1.0.0, is-descriptor@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" - integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg== - dependencies: - is-accessor-descriptor "^1.0.0" - is-data-descriptor "^1.0.0" - kind-of "^6.0.2" - -is-directory@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1" - integrity sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE= - -is-dotfile@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1" - integrity sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE= - -is-equal-shallow@^0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz#2238098fc221de0bcfa5d9eac4c45d638aa1c534" - integrity sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ= - dependencies: - is-primitive "^2.0.0" - -is-extendable@^0.1.0, is-extendable@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" - integrity sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik= - -is-extendable@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" - integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== - dependencies: - is-plain-object "^2.0.4" - -is-extglob@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0" - integrity sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA= - -is-extglob@^2.1.0, is-extglob@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" - integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= - -is-finite@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa" - integrity sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko= - dependencies: - number-is-nan "^1.0.0" - -is-fullwidth-code-point@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" - integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs= - dependencies: - number-is-nan "^1.0.0" - -is-fullwidth-code-point@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" - integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= - -is-generator-fn@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-1.0.0.tgz#969d49e1bb3329f6bb7f09089be26578b2ddd46a" - integrity sha1-lp1J4bszKfa7fwkIm+JleLLd1Go= - -is-glob@^2.0.0, is-glob@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863" - integrity sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM= - dependencies: - is-extglob "^1.0.0" - -is-glob@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" - integrity sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo= - dependencies: - is-extglob "^2.1.0" - -is-glob@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.0.tgz#9521c76845cc2610a85203ddf080a958c2ffabc0" - integrity sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A= - dependencies: - is-extglob "^2.1.1" - -is-number-object@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.3.tgz#f265ab89a9f445034ef6aff15a8f00b00f551799" - integrity sha1-8mWrian0RQNO9q/xWo8AsA9VF5k= - -is-number@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f" - integrity sha1-Afy7s5NGOlSPL0ZszhbezknbkI8= - dependencies: - kind-of "^3.0.2" - -is-number@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" - integrity sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU= - dependencies: - kind-of "^3.0.2" - -is-number@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-4.0.0.tgz#0026e37f5454d73e356dfe6564699867c6a7f0ff" - integrity sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ== - -is-obj@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" - integrity sha1-PkcprB9f3gJc19g6iW2rn09n2w8= - -is-observable@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-observable/-/is-observable-1.1.0.tgz#b3e986c8f44de950867cab5403f5a3465005975e" - integrity sha512-NqCa4Sa2d+u7BWc6CukaObG3Fh+CU9bvixbpcXYhy2VvYS7vVGIdAgnIS5Ks3A/cqk4rebLJ9s8zBstT2aKnIA== - dependencies: - symbol-observable "^1.1.0" - -is-path-cwd@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" - integrity sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0= - -is-path-in-cwd@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz#5ac48b345ef675339bd6c7a48a912110b241cf52" - integrity sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ== - dependencies: - is-path-inside "^1.0.0" - -is-path-inside@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.1.tgz#8ef5b7de50437a3fdca6b4e865ef7aa55cb48036" - integrity sha1-jvW33lBDej/cprToZe96pVy0gDY= - dependencies: - path-is-inside "^1.0.1" - -is-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" - integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== - dependencies: - isobject "^3.0.1" - -is-posix-bracket@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4" - integrity sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q= - -is-primitive@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575" - integrity sha1-IHurkWOEmcB7Kt8kCkGochADRXU= - -is-promise@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" - integrity sha1-eaKp7OfwlugPNtKy87wWwf9L8/o= - -is-regex@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" - integrity sha1-VRdIm1RwkbCTDglWVM7SXul+lJE= - dependencies: - has "^1.0.1" - -is-regexp@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-regexp/-/is-regexp-1.0.0.tgz#fd2d883545c46bac5a633e7b9a09e87fa2cb5069" - integrity sha1-/S2INUXEa6xaYz57mgnof6LLUGk= - -is-stream@^1.0.1, is-stream@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" - integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= - -is-string@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.4.tgz#cc3a9b69857d621e963725a24caeec873b826e64" - integrity sha1-zDqbaYV9Yh6WNyWiTK7shzuCbmQ= - -is-subset@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/is-subset/-/is-subset-0.1.1.tgz#8a59117d932de1de00f245fcdd39ce43f1e939a6" - integrity sha1-ilkRfZMt4d4A8kX83TnOQ/HpOaY= - -is-symbol@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.2.tgz#a055f6ae57192caee329e7a860118b497a950f38" - integrity sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw== - dependencies: - has-symbols "^1.0.0" - -is-typedarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" - integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= - -is-utf8@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" - integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI= - -is-windows@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" - integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== - -is-wsl@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" - integrity sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0= - -isarray@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" - integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8= - -isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" - integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= - -isexe@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" - integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= - -isobject@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" - integrity sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk= - dependencies: - isarray "1.0.0" - -isobject@^3.0.0, isobject@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" - integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= - -isomorphic-fetch@^2.1.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz#611ae1acf14f5e81f729507472819fe9733558a9" - integrity sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk= - dependencies: - node-fetch "^1.0.1" - whatwg-fetch ">=0.10.0" - -isstream@~0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" - integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= - -istanbul-api@^1.3.1: - version "1.3.7" - resolved "https://registry.yarnpkg.com/istanbul-api/-/istanbul-api-1.3.7.tgz#a86c770d2b03e11e3f778cd7aedd82d2722092aa" - integrity sha512-4/ApBnMVeEPG3EkSzcw25wDe4N66wxwn+KKn6b47vyek8Xb3NBAcg4xfuQbS7BqcZuTX4wxfD5lVagdggR3gyA== - dependencies: - async "^2.1.4" - fileset "^2.0.2" - istanbul-lib-coverage "^1.2.1" - istanbul-lib-hook "^1.2.2" - istanbul-lib-instrument "^1.10.2" - istanbul-lib-report "^1.1.5" - istanbul-lib-source-maps "^1.2.6" - istanbul-reports "^1.5.1" - js-yaml "^3.7.0" - mkdirp "^0.5.1" - once "^1.4.0" - -istanbul-lib-coverage@^1.2.0, istanbul-lib-coverage@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-1.2.1.tgz#ccf7edcd0a0bb9b8f729feeb0930470f9af664f0" - integrity sha512-PzITeunAgyGbtY1ibVIUiV679EFChHjoMNRibEIobvmrCRaIgwLxNucOSimtNWUhEib/oO7QY2imD75JVgCJWQ== - -istanbul-lib-hook@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/istanbul-lib-hook/-/istanbul-lib-hook-1.2.2.tgz#bc6bf07f12a641fbf1c85391d0daa8f0aea6bf86" - integrity sha512-/Jmq7Y1VeHnZEQ3TL10VHyb564mn6VrQXHchON9Jf/AEcmQ3ZIiyD1BVzNOKTZf/G3gE+kiGK6SmpF9y3qGPLw== - dependencies: - append-transform "^0.4.0" - -istanbul-lib-instrument@^1.10.1, istanbul-lib-instrument@^1.10.2: - version "1.10.2" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-1.10.2.tgz#1f55ed10ac3c47f2bdddd5307935126754d0a9ca" - integrity sha512-aWHxfxDqvh/ZlxR8BBaEPVSWDPUkGD63VjGQn3jcw8jCp7sHEMKcrj4xfJn/ABzdMEHiQNyvDQhqm5o8+SQg7A== - dependencies: - babel-generator "^6.18.0" - babel-template "^6.16.0" - babel-traverse "^6.18.0" - babel-types "^6.18.0" - babylon "^6.18.0" - istanbul-lib-coverage "^1.2.1" - semver "^5.3.0" - -istanbul-lib-report@^1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-1.1.5.tgz#f2a657fc6282f96170aaf281eb30a458f7f4170c" - integrity sha512-UsYfRMoi6QO/doUshYNqcKJqVmFe9w51GZz8BS3WB0lYxAllQYklka2wP9+dGZeHYaWIdcXUx8JGdbqaoXRXzw== - dependencies: - istanbul-lib-coverage "^1.2.1" - mkdirp "^0.5.1" - path-parse "^1.0.5" - supports-color "^3.1.2" - -istanbul-lib-source-maps@^1.2.4, istanbul-lib-source-maps@^1.2.6: - version "1.2.6" - resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.2.6.tgz#37b9ff661580f8fca11232752ee42e08c6675d8f" - integrity sha512-TtbsY5GIHgbMsMiRw35YBHGpZ1DVFEO19vxxeiDMYaeOFOCzfnYVxvl6pOUIZR4dtPhAGpSMup8OyF8ubsaqEg== - dependencies: - debug "^3.1.0" - istanbul-lib-coverage "^1.2.1" - mkdirp "^0.5.1" - rimraf "^2.6.1" - source-map "^0.5.3" - -istanbul-reports@^1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-1.5.1.tgz#97e4dbf3b515e8c484caea15d6524eebd3ff4e1a" - integrity sha512-+cfoZ0UXzWjhAdzosCPP3AN8vvef8XDkWtTfgaN+7L3YTpNYITnCaEkceo5SEYy644VkHka/P1FvkWvrG/rrJw== - dependencies: - handlebars "^4.0.3" - -jest-changed-files@^23.4.2: - version "23.4.2" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-23.4.2.tgz#1eed688370cd5eebafe4ae93d34bb3b64968fe83" - integrity sha512-EyNhTAUWEfwnK0Is/09LxoqNDOn7mU7S3EHskG52djOFS/z+IT0jT3h3Ql61+dklcG7bJJitIWEMB4Sp1piHmA== - dependencies: - throat "^4.0.0" - -jest-cli@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-23.6.0.tgz#61ab917744338f443ef2baa282ddffdd658a5da4" - integrity sha512-hgeD1zRUp1E1zsiyOXjEn4LzRLWdJBV//ukAHGlx6s5mfCNJTbhbHjgxnDUXA8fsKWN/HqFFF6X5XcCwC/IvYQ== - dependencies: - ansi-escapes "^3.0.0" - chalk "^2.0.1" - exit "^0.1.2" - glob "^7.1.2" - graceful-fs "^4.1.11" - import-local "^1.0.0" - is-ci "^1.0.10" - istanbul-api "^1.3.1" - istanbul-lib-coverage "^1.2.0" - istanbul-lib-instrument "^1.10.1" - istanbul-lib-source-maps "^1.2.4" - jest-changed-files "^23.4.2" - jest-config "^23.6.0" - jest-environment-jsdom "^23.4.0" - jest-get-type "^22.1.0" - jest-haste-map "^23.6.0" - jest-message-util "^23.4.0" - jest-regex-util "^23.3.0" - jest-resolve-dependencies "^23.6.0" - jest-runner "^23.6.0" - jest-runtime "^23.6.0" - jest-snapshot "^23.6.0" - jest-util "^23.4.0" - jest-validate "^23.6.0" - jest-watcher "^23.4.0" - jest-worker "^23.2.0" - micromatch "^2.3.11" - node-notifier "^5.2.1" - prompts "^0.1.9" - realpath-native "^1.0.0" - rimraf "^2.5.4" - slash "^1.0.0" - string-length "^2.0.0" - strip-ansi "^4.0.0" - which "^1.2.12" - yargs "^11.0.0" - -jest-config@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-23.6.0.tgz#f82546a90ade2d8c7026fbf6ac5207fc22f8eb1d" - integrity sha512-i8V7z9BeDXab1+VNo78WM0AtWpBRXJLnkT+lyT+Slx/cbP5sZJ0+NDuLcmBE5hXAoK0aUp7vI+MOxR+R4d8SRQ== - dependencies: - babel-core "^6.0.0" - babel-jest "^23.6.0" - chalk "^2.0.1" - glob "^7.1.1" - jest-environment-jsdom "^23.4.0" - jest-environment-node "^23.4.0" - jest-get-type "^22.1.0" - jest-jasmine2 "^23.6.0" - jest-regex-util "^23.3.0" - jest-resolve "^23.6.0" - jest-util "^23.4.0" - jest-validate "^23.6.0" - micromatch "^2.3.11" - pretty-format "^23.6.0" - -jest-diff@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-23.6.0.tgz#1500f3f16e850bb3d71233408089be099f610c7d" - integrity sha512-Gz9l5Ov+X3aL5L37IT+8hoCUsof1CVYBb2QEkOupK64XyRR3h+uRpYIm97K7sY8diFxowR8pIGEdyfMKTixo3g== - dependencies: - chalk "^2.0.1" - diff "^3.2.0" - jest-get-type "^22.1.0" - pretty-format "^23.6.0" - -jest-docblock@^21.0.0: - version "21.2.0" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-21.2.0.tgz#51529c3b30d5fd159da60c27ceedc195faf8d414" - integrity sha512-5IZ7sY9dBAYSV+YjQ0Ovb540Ku7AO9Z5o2Cg789xj167iQuZ2cG+z0f3Uct6WeYLbU6aQiM2pCs7sZ+4dotydw== - -jest-docblock@^23.2.0: - version "23.2.0" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-23.2.0.tgz#f085e1f18548d99fdd69b20207e6fd55d91383a7" - integrity sha1-8IXh8YVI2Z/dabICB+b9VdkTg6c= - dependencies: - detect-newline "^2.1.0" - -jest-each@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-23.6.0.tgz#ba0c3a82a8054387016139c733a05242d3d71575" - integrity sha512-x7V6M/WGJo6/kLoissORuvLIeAoyo2YqLOoCDkohgJ4XOXSqOtyvr8FbInlAWS77ojBsZrafbozWoKVRdtxFCg== - dependencies: - chalk "^2.0.1" - pretty-format "^23.6.0" - -jest-environment-jsdom@^23.4.0: - version "23.4.0" - resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-23.4.0.tgz#056a7952b3fea513ac62a140a2c368c79d9e6023" - integrity sha1-BWp5UrP+pROsYqFAosNox52eYCM= - dependencies: - jest-mock "^23.2.0" - jest-util "^23.4.0" - jsdom "^11.5.1" - -jest-environment-node@^23.4.0: - version "23.4.0" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-23.4.0.tgz#57e80ed0841dea303167cce8cd79521debafde10" - integrity sha1-V+gO0IQd6jAxZ8zozXlSHeuv3hA= - dependencies: - jest-mock "^23.2.0" - jest-util "^23.4.0" - -jest-get-type@^22.1.0: - version "22.4.3" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-22.4.3.tgz#e3a8504d8479342dd4420236b322869f18900ce4" - integrity sha512-/jsz0Y+V29w1chdXVygEKSz2nBoHoYqNShPe+QgxSNjAuP1i8+k4LbQNrfoliKej0P45sivkSCh7yiD6ubHS3w== - -jest-haste-map@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-23.6.0.tgz#2e3eb997814ca696d62afdb3f2529f5bbc935e16" - integrity sha512-uyNhMyl6dr6HaXGHp8VF7cK6KpC6G9z9LiMNsst+rJIZ8l7wY0tk8qwjPmEghczojZ2/ZhtEdIabZ0OQRJSGGg== - dependencies: - fb-watchman "^2.0.0" - graceful-fs "^4.1.11" - invariant "^2.2.4" - jest-docblock "^23.2.0" - jest-serializer "^23.0.1" - jest-worker "^23.2.0" - micromatch "^2.3.11" - sane "^2.0.0" - -jest-jasmine2@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-23.6.0.tgz#840e937f848a6c8638df24360ab869cc718592e0" - integrity sha512-pe2Ytgs1nyCs8IvsEJRiRTPC0eVYd8L/dXJGU08GFuBwZ4sYH/lmFDdOL3ZmvJR8QKqV9MFuwlsAi/EWkFUbsQ== - dependencies: - babel-traverse "^6.0.0" - chalk "^2.0.1" - co "^4.6.0" - expect "^23.6.0" - is-generator-fn "^1.0.0" - jest-diff "^23.6.0" - jest-each "^23.6.0" - jest-matcher-utils "^23.6.0" - jest-message-util "^23.4.0" - jest-snapshot "^23.6.0" - jest-util "^23.4.0" - pretty-format "^23.6.0" - -jest-leak-detector@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-23.6.0.tgz#e4230fd42cf381a1a1971237ad56897de7e171de" - integrity sha512-f/8zA04rsl1Nzj10HIyEsXvYlMpMPcy0QkQilVZDFOaPbv2ur71X5u2+C4ZQJGyV/xvVXtCCZ3wQ99IgQxftCg== - dependencies: - pretty-format "^23.6.0" - -jest-matcher-utils@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-23.6.0.tgz#726bcea0c5294261a7417afb6da3186b4b8cac80" - integrity sha512-rosyCHQfBcol4NsckTn01cdelzWLU9Cq7aaigDf8VwwpIRvWE/9zLgX2bON+FkEW69/0UuYslUe22SOdEf2nog== - dependencies: - chalk "^2.0.1" - jest-get-type "^22.1.0" - pretty-format "^23.6.0" - -jest-message-util@^23.4.0: - version "23.4.0" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-23.4.0.tgz#17610c50942349508d01a3d1e0bda2c079086a9f" - integrity sha1-F2EMUJQjSVCNAaPR4L2iwHkIap8= - dependencies: - "@babel/code-frame" "^7.0.0-beta.35" - chalk "^2.0.1" - micromatch "^2.3.11" - slash "^1.0.0" - stack-utils "^1.0.1" - -jest-mock@^23.2.0: - version "23.2.0" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-23.2.0.tgz#ad1c60f29e8719d47c26e1138098b6d18b261134" - integrity sha1-rRxg8p6HGdR8JuETgJi20YsmETQ= - -jest-regex-util@^23.3.0: - version "23.3.0" - resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-23.3.0.tgz#5f86729547c2785c4002ceaa8f849fe8ca471bc5" - integrity sha1-X4ZylUfCeFxAAs6qj4Sf6MpHG8U= - -jest-resolve-dependencies@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-23.6.0.tgz#b4526af24c8540d9a3fab102c15081cf509b723d" - integrity sha512-EkQWkFWjGKwRtRyIwRwI6rtPAEyPWlUC2MpzHissYnzJeHcyCn1Hc8j7Nn1xUVrS5C6W5+ZL37XTem4D4pLZdA== - dependencies: - jest-regex-util "^23.3.0" - jest-snapshot "^23.6.0" - -jest-resolve@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-23.6.0.tgz#cf1d1a24ce7ee7b23d661c33ba2150f3aebfa0ae" - integrity sha512-XyoRxNtO7YGpQDmtQCmZjum1MljDqUCob7XlZ6jy9gsMugHdN2hY4+Acz9Qvjz2mSsOnPSH7skBmDYCHXVZqkA== - dependencies: - browser-resolve "^1.11.3" - chalk "^2.0.1" - realpath-native "^1.0.0" - -jest-runner@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-23.6.0.tgz#3894bd219ffc3f3cb94dc48a4170a2e6f23a5a38" - integrity sha512-kw0+uj710dzSJKU6ygri851CObtCD9cN8aNkg8jWJf4ewFyEa6kwmiH/r/M1Ec5IL/6VFa0wnAk6w+gzUtjJzA== - dependencies: - exit "^0.1.2" - graceful-fs "^4.1.11" - jest-config "^23.6.0" - jest-docblock "^23.2.0" - jest-haste-map "^23.6.0" - jest-jasmine2 "^23.6.0" - jest-leak-detector "^23.6.0" - jest-message-util "^23.4.0" - jest-runtime "^23.6.0" - jest-util "^23.4.0" - jest-worker "^23.2.0" - source-map-support "^0.5.6" - throat "^4.0.0" - -jest-runtime@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-23.6.0.tgz#059e58c8ab445917cd0e0d84ac2ba68de8f23082" - integrity sha512-ycnLTNPT2Gv+TRhnAYAQ0B3SryEXhhRj1kA6hBPSeZaNQkJ7GbZsxOLUkwg6YmvWGdX3BB3PYKFLDQCAE1zNOw== - dependencies: - babel-core "^6.0.0" - babel-plugin-istanbul "^4.1.6" - chalk "^2.0.1" - convert-source-map "^1.4.0" - exit "^0.1.2" - fast-json-stable-stringify "^2.0.0" - graceful-fs "^4.1.11" - jest-config "^23.6.0" - jest-haste-map "^23.6.0" - jest-message-util "^23.4.0" - jest-regex-util "^23.3.0" - jest-resolve "^23.6.0" - jest-snapshot "^23.6.0" - jest-util "^23.4.0" - jest-validate "^23.6.0" - micromatch "^2.3.11" - realpath-native "^1.0.0" - slash "^1.0.0" - strip-bom "3.0.0" - write-file-atomic "^2.1.0" - yargs "^11.0.0" - -jest-serializer@^23.0.1: - version "23.0.1" - resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-23.0.1.tgz#a3776aeb311e90fe83fab9e533e85102bd164165" - integrity sha1-o3dq6zEekP6D+rnlM+hRAr0WQWU= - -jest-snapshot@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-23.6.0.tgz#f9c2625d1b18acda01ec2d2b826c0ce58a5aa17a" - integrity sha512-tM7/Bprftun6Cvj2Awh/ikS7zV3pVwjRYU2qNYS51VZHgaAMBs5l4o/69AiDHhQrj5+LA2Lq4VIvK7zYk/bswg== - dependencies: - babel-types "^6.0.0" - chalk "^2.0.1" - jest-diff "^23.6.0" - jest-matcher-utils "^23.6.0" - jest-message-util "^23.4.0" - jest-resolve "^23.6.0" - mkdirp "^0.5.1" - natural-compare "^1.4.0" - pretty-format "^23.6.0" - semver "^5.5.0" - -jest-util@^23.4.0: - version "23.4.0" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-23.4.0.tgz#4d063cb927baf0a23831ff61bec2cbbf49793561" - integrity sha1-TQY8uSe68KI4Mf9hvsLLv0l5NWE= - dependencies: - callsites "^2.0.0" - chalk "^2.0.1" - graceful-fs "^4.1.11" - is-ci "^1.0.10" - jest-message-util "^23.4.0" - mkdirp "^0.5.1" - slash "^1.0.0" - source-map "^0.6.0" - -jest-validate@^23.5.0, jest-validate@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-23.6.0.tgz#36761f99d1ed33fcd425b4e4c5595d62b6597474" - integrity sha512-OFKapYxe72yz7agrDAWi8v2WL8GIfVqcbKRCLbRG9PAxtzF9b1SEDdTpytNDN12z2fJynoBwpMpvj2R39plI2A== - dependencies: - chalk "^2.0.1" - jest-get-type "^22.1.0" - leven "^2.1.0" - pretty-format "^23.6.0" - -jest-watcher@^23.4.0: - version "23.4.0" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-23.4.0.tgz#d2e28ce74f8dad6c6afc922b92cabef6ed05c91c" - integrity sha1-0uKM50+NrWxq/JIrksq+9u0FyRw= - dependencies: - ansi-escapes "^3.0.0" - chalk "^2.0.1" - string-length "^2.0.0" - -jest-worker@^23.2.0: - version "23.2.0" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-23.2.0.tgz#faf706a8da36fae60eb26957257fa7b5d8ea02b9" - integrity sha1-+vcGqNo2+uYOsmlXJX+ntdjqArk= - dependencies: - merge-stream "^1.0.1" - -jest@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest/-/jest-23.6.0.tgz#ad5835e923ebf6e19e7a1d7529a432edfee7813d" - integrity sha512-lWzcd+HSiqeuxyhG+EnZds6iO3Y3ZEnMrfZq/OTGvF/C+Z4fPMCdhWTGSAiO2Oym9rbEXfwddHhh6jqrTF3+Lw== - dependencies: - import-local "^1.0.0" - jest-cli "^23.6.0" - -js-base64@^2.1.8: - version "2.4.9" - resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.4.9.tgz#748911fb04f48a60c4771b375cac45a80df11c03" - integrity sha512-xcinL3AuDJk7VSzsHgb9DvvIXayBbadtMZ4HFPx8rUszbW1MuNMlwYVC4zzCZ6e1sqZpnNS5ZFYOhXqA39T7LQ== - -"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" - integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== - -js-tokens@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" - integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls= - -js-yaml@^3.7.0, js-yaml@^3.9.0: - version "3.12.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.12.0.tgz#eaed656ec8344f10f527c6bfa1b6e2244de167d1" - integrity sha512-PIt2cnwmPfL4hKNwqeiuz4bKfnzHTBv6HyVgjahA6mPLwPDzjDWrplJBMjHUFxku/N3FlmrbyPclad+I+4mJ3A== - dependencies: - argparse "^1.0.7" - esprima "^4.0.0" - -jsbn@~0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" - integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= - -jsdom@^11.5.1: - version "11.12.0" - resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-11.12.0.tgz#1a80d40ddd378a1de59656e9e6dc5a3ba8657bc8" - integrity sha512-y8Px43oyiBM13Zc1z780FrfNLJCXTL40EWlty/LXUtcjykRBNgLlCjWXpfSPBl2iv+N7koQN+dvqszHZgT/Fjw== - dependencies: - abab "^2.0.0" - acorn "^5.5.3" - acorn-globals "^4.1.0" - array-equal "^1.0.0" - cssom ">= 0.3.2 < 0.4.0" - cssstyle "^1.0.0" - data-urls "^1.0.0" - domexception "^1.0.1" - escodegen "^1.9.1" - html-encoding-sniffer "^1.0.2" - left-pad "^1.3.0" - nwsapi "^2.0.7" - parse5 "4.0.0" - pn "^1.1.0" - request "^2.87.0" - request-promise-native "^1.0.5" - sax "^1.2.4" - symbol-tree "^3.2.2" - tough-cookie "^2.3.4" - w3c-hr-time "^1.0.1" - webidl-conversions "^4.0.2" - whatwg-encoding "^1.0.3" - whatwg-mimetype "^2.1.0" - whatwg-url "^6.4.1" - ws "^5.2.0" - xml-name-validator "^3.0.0" - -jsesc@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" - integrity sha1-RsP+yMGJKxKwgz25vHYiF226s0s= - -jsesc@~0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" - integrity sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0= - -json-parse-better-errors@^1.0.1, json-parse-better-errors@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" - integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== - -json-schema-traverse@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" - integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== - -json-schema@0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" - integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM= - -json-stringify-safe@~5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" - integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= - -json3@^3.3.2: - version "3.3.2" - resolved "https://registry.yarnpkg.com/json3/-/json3-3.3.2.tgz#3c0434743df93e2f5c42aee7b19bcb483575f4e1" - integrity sha1-PAQ0dD35Pi9cQq7nsZvLSDV19OE= - -json5@^0.5.0, json5@^0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" - integrity sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE= - -jsonfile@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" - integrity sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss= - optionalDependencies: - graceful-fs "^4.1.6" - -jsprim@^1.2.2: - version "1.4.1" - resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" - integrity sha1-MT5mvB5cwG5Di8G3SZwuXFastqI= - dependencies: - assert-plus "1.0.0" - extsprintf "1.3.0" - json-schema "0.2.3" - verror "1.10.0" - -keymirror@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/keymirror/-/keymirror-0.1.1.tgz#918889ea13f8d0a42e7c557250eee713adc95c35" - integrity sha1-kYiJ6hP40KQufFVyUO7nE63JXDU= - -killable@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/killable/-/killable-1.0.1.tgz#4c8ce441187a061c7474fb87ca08e2a638194892" - integrity sha512-LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg== - -kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: - version "3.2.2" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" - integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ= - dependencies: - is-buffer "^1.1.5" - -kind-of@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" - integrity sha1-IIE989cSkosgc3hpGkUGb65y3Vc= - dependencies: - is-buffer "^1.1.5" - -kind-of@^5.0.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" - integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== - -kind-of@^6.0.0, kind-of@^6.0.2: - version "6.0.2" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.2.tgz#01146b36a6218e64e58f3a8d66de5d7fc6f6d051" - integrity sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA== - -kleur@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/kleur/-/kleur-2.0.2.tgz#b704f4944d95e255d038f0cb05fb8a602c55a300" - integrity sha512-77XF9iTllATmG9lSlIv0qdQ2BQ/h9t0bJllHlbvsQ0zUWfU7Yi0S8L5JXzPZgkefIiajLmBJJ4BsMJmqcf7oxQ== - -lcid@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835" - integrity sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU= - dependencies: - invert-kv "^1.0.0" - -lcid@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/lcid/-/lcid-2.0.0.tgz#6ef5d2df60e52f82eb228a4c373e8d1f397253cf" - integrity sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA== - dependencies: - invert-kv "^2.0.0" - -left-pad@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/left-pad/-/left-pad-1.3.0.tgz#5b8a3a7765dfe001261dde915589e782f8c94d1e" - integrity sha512-XI5MPzVNApjAyhQzphX8BkmKsKUxD4LdyK24iZeQGinBN9yTQT3bFlCBy/aVx2HrNcqQGsdot8ghrjyrvMCoEA== - -leven@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/leven/-/leven-2.1.0.tgz#c2e7a9f772094dee9d34202ae8acce4687875580" - integrity sha1-wuep93IJTe6dNCAq6KzORoeHVYA= - -levn@~0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" - integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= - dependencies: - prelude-ls "~1.1.2" - type-check "~0.3.2" - -lines-and-columns@^1.1.6: - version "1.1.6" - resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00" - integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA= - -lint-staged@^8.0.5: - version "8.1.0" - resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-8.1.0.tgz#dbc3ae2565366d8f20efb9f9799d076da64863f2" - integrity sha512-yfSkyJy7EuVsaoxtUSEhrD81spdJOe/gMTGea3XaV7HyoRhTb9Gdlp6/JppRZERvKSEYXP9bjcmq6CA5oL2lYQ== - dependencies: - "@iamstarkov/listr-update-renderer" "0.4.1" - chalk "^2.3.1" - commander "^2.14.1" - cosmiconfig "5.0.6" - debug "^3.1.0" - dedent "^0.7.0" - del "^3.0.0" - execa "^1.0.0" - find-parent-dir "^0.3.0" - g-status "^2.0.2" - is-glob "^4.0.0" - is-windows "^1.0.2" - jest-validate "^23.5.0" - listr "^0.14.2" - lodash "^4.17.5" - log-symbols "^2.2.0" - micromatch "^3.1.8" - npm-which "^3.0.1" - p-map "^1.1.1" - path-is-inside "^1.0.2" - pify "^3.0.0" - please-upgrade-node "^3.0.2" - staged-git-files "1.1.2" - string-argv "^0.0.2" - stringify-object "^3.2.2" - -listr-silent-renderer@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/listr-silent-renderer/-/listr-silent-renderer-1.1.1.tgz#924b5a3757153770bf1a8e3fbf74b8bbf3f9242e" - integrity sha1-kktaN1cVN3C/Go4/v3S4u/P5JC4= - -listr-update-renderer@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/listr-update-renderer/-/listr-update-renderer-0.5.0.tgz#4ea8368548a7b8aecb7e06d8c95cb45ae2ede6a2" - integrity sha512-tKRsZpKz8GSGqoI/+caPmfrypiaq+OQCbd+CovEC24uk1h952lVj5sC7SqyFUm+OaJ5HN/a1YLt5cit2FMNsFA== - dependencies: - chalk "^1.1.3" - cli-truncate "^0.2.1" - elegant-spinner "^1.0.1" - figures "^1.7.0" - indent-string "^3.0.0" - log-symbols "^1.0.2" - log-update "^2.3.0" - strip-ansi "^3.0.1" - -listr-verbose-renderer@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/listr-verbose-renderer/-/listr-verbose-renderer-0.5.0.tgz#f1132167535ea4c1261102b9f28dac7cba1e03db" - integrity sha512-04PDPqSlsqIOaaaGZ+41vq5FejI9auqTInicFRndCBgE3bXG8D6W1I+mWhk+1nqbHmyhla/6BUrd5OSiHwKRXw== - dependencies: - chalk "^2.4.1" - cli-cursor "^2.1.0" - date-fns "^1.27.2" - figures "^2.0.0" - -listr@^0.14.2: - version "0.14.3" - resolved "https://registry.yarnpkg.com/listr/-/listr-0.14.3.tgz#2fea909604e434be464c50bddba0d496928fa586" - integrity sha512-RmAl7su35BFd/xoMamRjpIE4j3v+L28o8CT5YhAXQJm1fD+1l9ngXY8JAQRJ+tFK2i5njvi0iRUKV09vPwA0iA== - dependencies: - "@samverschueren/stream-to-observable" "^0.3.0" - is-observable "^1.1.0" - is-promise "^2.1.0" - is-stream "^1.1.0" - listr-silent-renderer "^1.1.1" - listr-update-renderer "^0.5.0" - listr-verbose-renderer "^0.5.0" - p-map "^2.0.0" - rxjs "^6.3.3" - -load-json-file@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" - integrity sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA= - dependencies: - graceful-fs "^4.1.2" - parse-json "^2.2.0" - pify "^2.0.0" - pinkie-promise "^2.0.0" - strip-bom "^2.0.0" - -loader-runner@^2.3.0: - version "2.3.1" - resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.3.1.tgz#026f12fe7c3115992896ac02ba022ba92971b979" - integrity sha512-By6ZFY7ETWOc9RFaAIb23IjJVcM4dvJC/N57nmdz9RSkMXvAXGI7SyVlAw3v8vjtDRlqThgVDVmTnr9fqMlxkw== - -loader-utils@^1.0.1, loader-utils@^1.0.2, loader-utils@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.1.0.tgz#c98aef488bcceda2ffb5e2de646d6a754429f5cd" - integrity sha1-yYrvSIvM7aL/teLeZG1qdUQp9c0= - dependencies: - big.js "^3.1.3" - emojis-list "^2.0.0" - json5 "^0.5.0" - -locate-path@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" - integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4= - dependencies: - p-locate "^2.0.0" - path-exists "^3.0.0" - -locate-path@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" - integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== - dependencies: - p-locate "^3.0.0" - path-exists "^3.0.0" - -lodash-es@^4.17.11, lodash-es@^4.2.1: - version "4.17.11" - resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.11.tgz#145ab4a7ac5c5e52a3531fb4f310255a152b4be0" - integrity sha512-DHb1ub+rMjjrxqlB3H56/6MXtm1lSksDp2rA2cNWjG8mlDUYFhUj3Di2Zn5IwSU87xLv8tNIQ7sSwE/YOX/D/Q== - -lodash.assign@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-4.2.0.tgz#0d99f3ccd7a6d261d19bdaeb9245005d285808e7" - integrity sha1-DZnzzNem0mHRm9rrkkUAXShYCOc= - -lodash.clonedeep@^4.3.2: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" - integrity sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8= - -lodash.debounce@^4.0.8: - version "4.0.8" - resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" - integrity sha1-gteb/zCmfEAF/9XiUVMArZyk168= - -lodash.escape@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/lodash.escape/-/lodash.escape-4.0.1.tgz#c9044690c21e04294beaa517712fded1fa88de98" - integrity sha1-yQRGkMIeBClL6qUXcS/e0fqI3pg= - -lodash.flattendeep@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz#fb030917f86a3134e5bc9bec0d69e0013ddfedb2" - integrity sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI= - -lodash.isequal@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0" - integrity sha1-QVxEePK8wwEgwizhDtMib30+GOA= - -lodash.mergewith@^4.6.0: - version "4.6.1" - resolved "https://registry.yarnpkg.com/lodash.mergewith/-/lodash.mergewith-4.6.1.tgz#639057e726c3afbdb3e7d42741caa8d6e4335927" - integrity sha512-eWw5r+PYICtEBgrBE5hhlT6aAa75f411bgDz/ZL2KZqYV03USvucsxcHUIlGTDTECs1eunpI7HOV7U+WLDvNdQ== - -lodash.sortby@^4.7.0: - version "4.7.0" - resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" - integrity sha1-7dFMgk4sycHgsKG0K7UhBRakJDg= - -lodash.tail@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/lodash.tail/-/lodash.tail-4.1.1.tgz#d2333a36d9e7717c8ad2f7cacafec7c32b444664" - integrity sha1-0jM6NtnncXyK0vfKyv7HwytERmQ= - -"lodash@>=3.5 <5", lodash@^4.0.0, lodash@^4.13.1, lodash@^4.15.0, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.2.1, lodash@~4.17.10: - version "4.17.11" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d" - integrity sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg== - -log-symbols@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-1.0.2.tgz#376ff7b58ea3086a0f09facc74617eca501e1a18" - integrity sha1-N2/3tY6jCGoPCfrMdGF+ylAeGhg= - dependencies: - chalk "^1.0.0" - -log-symbols@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-2.2.0.tgz#5740e1c5d6f0dfda4ad9323b5332107ef6b4c40a" - integrity sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg== - dependencies: - chalk "^2.0.1" - -log-update@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/log-update/-/log-update-2.3.0.tgz#88328fd7d1ce7938b29283746f0b1bc126b24708" - integrity sha1-iDKP19HOeTiykoN0bwsbwSayRwg= - dependencies: - ansi-escapes "^3.0.0" - cli-cursor "^2.0.0" - wrap-ansi "^3.0.1" - -loglevel@^1.4.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.6.1.tgz#e0fc95133b6ef276cdc8887cdaf24aa6f156f8fa" - integrity sha1-4PyVEztu8nbNyIh82vJKpvFW+Po= - -loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.2.0, loose-envify@^1.3.1, loose-envify@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" - integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== - dependencies: - js-tokens "^3.0.0 || ^4.0.0" - -loud-rejection@^1.0.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f" - integrity sha1-W0b4AUft7leIcPCG0Eghz5mOVR8= - dependencies: - currently-unhandled "^0.4.1" - signal-exit "^3.0.0" - -lru-cache@^4.0.1, lru-cache@^4.1.3: - version "4.1.5" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd" - integrity sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g== - dependencies: - pseudomap "^1.0.2" - yallist "^2.1.2" - -make-dir@^1.0.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.3.0.tgz#79c1033b80515bd6d24ec9933e860ca75ee27f0c" - integrity sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ== - dependencies: - pify "^3.0.0" - -makeerror@1.0.x: - version "1.0.11" - resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c" - integrity sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw= - dependencies: - tmpl "1.0.x" - -map-age-cleaner@^0.1.1: - version "0.1.3" - resolved "https://registry.yarnpkg.com/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz#7d583a7306434c055fe474b0f45078e6e1b4b92a" - integrity sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w== - dependencies: - p-defer "^1.0.0" - -map-cache@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" - integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8= - -map-obj@^1.0.0, map-obj@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" - integrity sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0= - -map-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" - integrity sha1-7Nyo8TFE5mDxtb1B8S80edmN+48= - dependencies: - object-visit "^1.0.0" - -matcher@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/matcher/-/matcher-1.1.1.tgz#51d8301e138f840982b338b116bb0c09af62c1c2" - integrity sha512-+BmqxWIubKTRKNWx/ahnCkk3mG8m7OturVlqq6HiojGJTd5hVYbgZm6WzcYPCoB+KBT4Vd6R7WSRG2OADNaCjg== - dependencies: - escape-string-regexp "^1.0.4" - -math-random@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/math-random/-/math-random-1.0.1.tgz#8b3aac588b8a66e4975e3cdea67f7bb329601fac" - integrity sha1-izqsWIuKZuSXXjzepn97sylgH6w= - -md5.js@^1.3.4: - version "1.3.5" - resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f" - integrity sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg== - dependencies: - hash-base "^3.0.0" - inherits "^2.0.1" - safe-buffer "^5.1.2" - -media-typer@0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" - integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= - -mem@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/mem/-/mem-1.1.0.tgz#5edd52b485ca1d900fe64895505399a0dfa45f76" - integrity sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y= - dependencies: - mimic-fn "^1.0.0" - -mem@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/mem/-/mem-4.0.0.tgz#6437690d9471678f6cc83659c00cbafcd6b0cdaf" - integrity sha512-WQxG/5xYc3tMbYLXoXPm81ET2WDULiU5FxbuIoNbJqLOOI8zehXFdZuiUEgfdrU2mVB1pxBZUGlYORSrpuJreA== - dependencies: - map-age-cleaner "^0.1.1" - mimic-fn "^1.0.0" - p-is-promise "^1.1.0" - -memory-fs@^0.4.0, memory-fs@~0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552" - integrity sha1-OpoguEYlI+RHz7x+i7gO1me/xVI= - dependencies: - errno "^0.1.3" - readable-stream "^2.0.1" - -meow@^3.7.0: - version "3.7.0" - resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" - integrity sha1-cstmi0JSKCkKu/qFaJJYcwioAfs= - dependencies: - camelcase-keys "^2.0.0" - decamelize "^1.1.2" - loud-rejection "^1.0.0" - map-obj "^1.0.1" - minimist "^1.1.3" - normalize-package-data "^2.3.4" - object-assign "^4.0.1" - read-pkg-up "^1.0.1" - redent "^1.0.0" - trim-newlines "^1.0.0" - -merge-descriptors@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" - integrity sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E= - -merge-stream@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-1.0.1.tgz#4041202d508a342ba00174008df0c251b8c135e1" - integrity sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE= - dependencies: - readable-stream "^2.0.1" - -merge@^1.2.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/merge/-/merge-1.2.1.tgz#38bebf80c3220a8a487b6fcfb3941bb11720c145" - integrity sha512-VjFo4P5Whtj4vsLzsYBu5ayHhoHJ0UqNm7ibvShmbmoz7tGi0vXaoJbGdB+GmDMLUdg8DpQXEIeVDAe8MaABvQ== - -methods@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" - integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= - -micromatch@^2.3.11: - version "2.3.11" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565" - integrity sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU= - dependencies: - arr-diff "^2.0.0" - array-unique "^0.2.1" - braces "^1.8.2" - expand-brackets "^0.1.4" - extglob "^0.3.1" - filename-regex "^2.0.0" - is-extglob "^1.0.0" - is-glob "^2.0.1" - kind-of "^3.0.2" - normalize-path "^2.0.1" - object.omit "^2.0.0" - parse-glob "^3.0.4" - regex-cache "^0.4.2" - -micromatch@^3.1.10, micromatch@^3.1.4, micromatch@^3.1.8, micromatch@^3.1.9: - version "3.1.10" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" - integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - braces "^2.3.1" - define-property "^2.0.2" - extend-shallow "^3.0.2" - extglob "^2.0.4" - fragment-cache "^0.2.1" - kind-of "^6.0.2" - nanomatch "^1.2.9" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.2" - -miller-rabin@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" - integrity sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA== - dependencies: - bn.js "^4.0.0" - brorand "^1.0.1" - -"mime-db@>= 1.36.0 < 2", mime-db@~1.37.0: - version "1.37.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.37.0.tgz#0b6a0ce6fdbe9576e25f1f2d2fde8830dc0ad0d8" - integrity sha512-R3C4db6bgQhlIhPU48fUtdVmKnflq+hRdad7IyKhtFj06VPNVdk2RhiYL3UjQIlso8L+YxAtFkobT0VK+S/ybg== - -mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.18, mime-types@~2.1.19: - version "2.1.21" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.21.tgz#28995aa1ecb770742fe6ae7e58f9181c744b3f96" - integrity sha512-3iL6DbwpyLzjR3xHSFNFeb9Nz/M8WDkX33t1GFQnFOllWk8pOrh/LSrB5OXlnlW5P9LH73X6loW/eogc+F5lJg== - dependencies: - mime-db "~1.37.0" - -mime@1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.1.tgz#121f9ebc49e3766f311a76e1fa1c8003c4b03aa6" - integrity sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ== - -mime@^2.3.1: - version "2.4.0" - resolved "https://registry.yarnpkg.com/mime/-/mime-2.4.0.tgz#e051fd881358585f3279df333fe694da0bcffdd6" - integrity sha512-ikBcWwyqXQSHKtciCcctu9YfPbFYZ4+gbHEmE0Q8jzcTYQg5dHCr3g2wwAZjPoJfQVXZq6KXAjpXOTf5/cjT7w== - -mimic-fn@^1.0.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022" - integrity sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ== - -min-document@^2.19.0: - version "2.19.0" - resolved "https://registry.yarnpkg.com/min-document/-/min-document-2.19.0.tgz#7bd282e3f5842ed295bb748cdd9f1ffa2c824685" - integrity sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU= - dependencies: - dom-walk "^0.1.0" - -minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" - integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== - -minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" - integrity sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo= - -minimatch@^3.0.3, minimatch@^3.0.4, minimatch@~3.0.2: - version "3.0.4" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" - integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== - dependencies: - brace-expansion "^1.1.7" - -minimist@0.0.8: - version "0.0.8" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" - integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= - -minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" - integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ= - -minimist@~0.0.1: - version "0.0.10" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf" - integrity sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8= - -minipass@^2.2.1, minipass@^2.3.4: - version "2.3.5" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.3.5.tgz#cacebe492022497f656b0f0f51e2682a9ed2d848" - integrity sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA== - dependencies: - safe-buffer "^5.1.2" - yallist "^3.0.0" - -minizlib@^1.1.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.2.1.tgz#dd27ea6136243c7c880684e8672bb3a45fd9b614" - integrity sha512-7+4oTUOWKg7AuL3vloEWekXY2/D20cevzsrNT2kGWm+39J9hGTCBv8VI5Pm5lXZ/o3/mdR4f8rflAPhnQb8mPA== - dependencies: - minipass "^2.2.1" - -mississippi@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-3.0.0.tgz#ea0a3291f97e0b5e8776b363d5f0a12d94c67022" - integrity sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA== - dependencies: - concat-stream "^1.5.0" - duplexify "^3.4.2" - end-of-stream "^1.1.0" - flush-write-stream "^1.0.0" - from2 "^2.1.0" - parallel-transform "^1.1.0" - pump "^3.0.0" - pumpify "^1.3.3" - stream-each "^1.1.0" - through2 "^2.0.0" - -mixin-deep@^1.2.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.1.tgz#a49e7268dce1a0d9698e45326c5626df3543d0fe" - integrity sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ== - dependencies: - for-in "^1.0.2" - is-extendable "^1.0.1" - -mixin-object@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/mixin-object/-/mixin-object-2.0.1.tgz#4fb949441dab182540f1fe035ba60e1947a5e57e" - integrity sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4= - dependencies: - for-in "^0.1.3" - is-extendable "^0.1.1" - -mkdirp@0.5.x, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0: - version "0.5.1" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" - integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= - dependencies: - minimist "0.0.8" - -moment@*, moment@^2.23.0: - version "2.23.0" - resolved "https://registry.yarnpkg.com/moment/-/moment-2.23.0.tgz#759ea491ac97d54bac5ad776996e2a58cc1bc225" - integrity sha512-3IE39bHVqFbWWaPOMHZF98Q9c3LDKGTmypMiTM2QygGXXElkFWIH7GxfmlwmY2vwa+wmNsoYZmG2iusf1ZjJoA== - -moo@^0.4.3: - version "0.4.3" - resolved "https://registry.yarnpkg.com/moo/-/moo-0.4.3.tgz#3f847a26f31cf625a956a87f2b10fbc013bfd10e" - integrity sha512-gFD2xGCl8YFgGHsqJ9NKRVdwlioeW3mI1iqfLNYQOv0+6JRwG58Zk9DIGQgyIaffSYaO1xsKnMaYzzNr1KyIAw== - -move-concurrently@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" - integrity sha1-viwAX9oy4LKa8fBdfEszIUxwH5I= - dependencies: - aproba "^1.1.1" - copy-concurrently "^1.0.0" - fs-write-stream-atomic "^1.0.8" - mkdirp "^0.5.1" - rimraf "^2.5.4" - run-queue "^1.0.3" - -ms@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" - integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= - -ms@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" - integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== - -multicast-dns-service-types@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz#899f11d9686e5e05cb91b35d5f0e63b773cfc901" - integrity sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE= - -multicast-dns@^6.0.1: - version "6.2.3" - resolved "https://registry.yarnpkg.com/multicast-dns/-/multicast-dns-6.2.3.tgz#a0ec7bd9055c4282f790c3c82f4e28db3b31b229" - integrity sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g== - dependencies: - dns-packet "^1.3.1" - thunky "^1.0.2" - -nan@^2.10.0, nan@^2.9.2: - version "2.11.1" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.11.1.tgz#90e22bccb8ca57ea4cd37cc83d3819b52eea6766" - integrity sha512-iji6k87OSXa0CcrLl9z+ZiYSuR2o+c0bGuNmXdrhTQTakxytAFsC56SArGYoiHlJlFoHSnvmhpceZJaXkVuOtA== - -nanomatch@^1.2.9: - version "1.2.13" - resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" - integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - define-property "^2.0.2" - extend-shallow "^3.0.2" - fragment-cache "^0.2.1" - is-windows "^1.0.2" - kind-of "^6.0.2" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -natural-compare@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" - integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= - -nearley@^2.7.10: - version "2.15.1" - resolved "https://registry.yarnpkg.com/nearley/-/nearley-2.15.1.tgz#965e4e6ec9ed6b80fc81453e161efbcebb36d247" - integrity sha512-8IUY/rUrKz2mIynUGh8k+tul1awMKEjeHHC5G3FHvvyAW6oq4mQfNp2c0BMea+sYZJvYcrrM6GmZVIle/GRXGw== - dependencies: - moo "^0.4.3" - nomnom "~1.6.2" - railroad-diagrams "^1.0.0" - randexp "0.4.6" - semver "^5.4.1" - -needle@^2.2.1: - version "2.2.4" - resolved "https://registry.yarnpkg.com/needle/-/needle-2.2.4.tgz#51931bff82533b1928b7d1d69e01f1b00ffd2a4e" - integrity sha512-HyoqEb4wr/rsoaIDfTH2aVL9nWtQqba2/HvMv+++m8u0dz808MaagKILxtfeSN7QU7nvbQ79zk3vYOJp9zsNEA== - dependencies: - debug "^2.1.2" - iconv-lite "^0.4.4" - sax "^1.2.4" - -negotiator@0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9" - integrity sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk= - -neo-async@^2.5.0: - version "2.6.0" - resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.0.tgz#b9d15e4d71c6762908654b5183ed38b753340835" - integrity sha512-MFh0d/Wa7vkKO3Y3LlacqAEeHK0mckVqzDieUKTT+KGxi+zIpeVsFxymkIiRpbpDziHc290Xr9A1O4Om7otoRA== - -nice-try@^1.0.4: - version "1.0.5" - resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" - integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== - -node-fetch@^1.0.1: - version "1.7.3" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.3.tgz#980f6f72d85211a5347c6b2bc18c5b84c3eb47ef" - integrity sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ== - dependencies: - encoding "^0.1.11" - is-stream "^1.0.1" - -node-forge@0.7.5: - version "0.7.5" - resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.7.5.tgz#6c152c345ce11c52f465c2abd957e8639cd674df" - integrity sha512-MmbQJ2MTESTjt3Gi/3yG1wGpIMhUfcIypUCGtTizFR9IiccFwxSpfp0vtIZlkFclEqERemxfnSdZEMR9VqqEFQ== - -node-gyp@^3.8.0: - version "3.8.0" - resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-3.8.0.tgz#540304261c330e80d0d5edce253a68cb3964218c" - integrity sha512-3g8lYefrRRzvGeSowdJKAKyks8oUpLEd/DyPV4eMhVlhJ0aNaZqIrNUIPuEWWTAoPqyFkfGrM67MC69baqn6vA== - dependencies: - fstream "^1.0.0" - glob "^7.0.3" - graceful-fs "^4.1.2" - mkdirp "^0.5.0" - nopt "2 || 3" - npmlog "0 || 1 || 2 || 3 || 4" - osenv "0" - request "^2.87.0" - rimraf "2" - semver "~5.3.0" - tar "^2.0.0" - which "1" - -node-int64@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" - integrity sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs= - -node-libs-browser@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-2.1.0.tgz#5f94263d404f6e44767d726901fff05478d600df" - integrity sha512-5AzFzdoIMb89hBGMZglEegffzgRg+ZFoUmisQ8HI4j1KDdpx13J0taNp2y9xPbur6W61gepGDDotGBVQ7mfUCg== - dependencies: - assert "^1.1.1" - browserify-zlib "^0.2.0" - buffer "^4.3.0" - console-browserify "^1.1.0" - constants-browserify "^1.0.0" - crypto-browserify "^3.11.0" - domain-browser "^1.1.1" - events "^1.0.0" - https-browserify "^1.0.0" - os-browserify "^0.3.0" - path-browserify "0.0.0" - process "^0.11.10" - punycode "^1.2.4" - querystring-es3 "^0.2.0" - readable-stream "^2.3.3" - stream-browserify "^2.0.1" - stream-http "^2.7.2" - string_decoder "^1.0.0" - timers-browserify "^2.0.4" - tty-browserify "0.0.0" - url "^0.11.0" - util "^0.10.3" - vm-browserify "0.0.4" - -node-notifier@^5.2.1: - version "5.3.0" - resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-5.3.0.tgz#c77a4a7b84038733d5fb351aafd8a268bfe19a01" - integrity sha512-AhENzCSGZnZJgBARsUjnQ7DnZbzyP+HxlVXuD0xqAnvL8q+OqtSX7lGg9e8nHzwXkMMXNdVeqq4E2M3EUAqX6Q== - dependencies: - growly "^1.3.0" - semver "^5.5.0" - shellwords "^0.1.1" - which "^1.3.0" - -node-pre-gyp@^0.10.0: - version "0.10.3" - resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.10.3.tgz#3070040716afdc778747b61b6887bf78880b80fc" - integrity sha512-d1xFs+C/IPS8Id0qPTZ4bUT8wWryfR/OzzAFxweG+uLN85oPzyo2Iw6bVlLQ/JOdgNonXLCoRyqDzDWq4iw72A== - dependencies: - detect-libc "^1.0.2" - mkdirp "^0.5.1" - needle "^2.2.1" - nopt "^4.0.1" - npm-packlist "^1.1.6" - npmlog "^4.0.2" - rc "^1.2.7" - rimraf "^2.6.1" - semver "^5.3.0" - tar "^4" - -node-sass@^4.9.4: - version "4.11.0" - resolved "https://registry.yarnpkg.com/node-sass/-/node-sass-4.11.0.tgz#183faec398e9cbe93ba43362e2768ca988a6369a" - integrity sha512-bHUdHTphgQJZaF1LASx0kAviPH7sGlcyNhWade4eVIpFp6tsn7SV8xNMTbsQFpEV9VXpnwTTnNYlfsZXgGgmkA== - dependencies: - async-foreach "^0.1.3" - chalk "^1.1.1" - cross-spawn "^3.0.0" - gaze "^1.0.0" - get-stdin "^4.0.1" - glob "^7.0.3" - in-publish "^2.0.0" - lodash.assign "^4.2.0" - lodash.clonedeep "^4.3.2" - lodash.mergewith "^4.6.0" - meow "^3.7.0" - mkdirp "^0.5.1" - nan "^2.10.0" - node-gyp "^3.8.0" - npmlog "^4.0.0" - request "^2.88.0" - sass-graph "^2.2.4" - stdout-stream "^1.4.0" - "true-case-path" "^1.0.2" - -nomnom@~1.6.2: - version "1.6.2" - resolved "https://registry.yarnpkg.com/nomnom/-/nomnom-1.6.2.tgz#84a66a260174408fc5b77a18f888eccc44fb6971" - integrity sha1-hKZqJgF0QI/Ft3oY+IjszET7aXE= - dependencies: - colors "0.5.x" - underscore "~1.4.4" - -"nopt@2 || 3": - version "3.0.6" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9" - integrity sha1-xkZdvwirzU2zWTF/eaxopkayj/k= - dependencies: - abbrev "1" - -nopt@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" - integrity sha1-0NRoWv1UFRk8jHUFYC0NF81kR00= - dependencies: - abbrev "1" - osenv "^0.1.4" - -normalize-package-data@^2.3.2, normalize-package-data@^2.3.4: - version "2.4.0" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f" - integrity sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw== - dependencies: - hosted-git-info "^2.1.4" - is-builtin-module "^1.0.0" - semver "2 || 3 || 4 || 5" - validate-npm-package-license "^3.0.1" - -normalize-path@^2.0.1, normalize-path@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" - integrity sha1-GrKLVW4Zg2Oowab35vogE3/mrtk= - dependencies: - remove-trailing-separator "^1.0.1" - -npm-bundled@^1.0.1: - version "1.0.5" - resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.0.5.tgz#3c1732b7ba936b3a10325aef616467c0ccbcc979" - integrity sha512-m/e6jgWu8/v5niCUKQi9qQl8QdeEduFA96xHDDzFGqly0OOjI7c+60KM/2sppfnUU9JJagf+zs+yGhqSOFj71g== - -npm-packlist@^1.1.6: - version "1.1.12" - resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.1.12.tgz#22bde2ebc12e72ca482abd67afc51eb49377243a" - integrity sha512-WJKFOVMeAlsU/pjXuqVdzU0WfgtIBCupkEVwn+1Y0ERAbUfWw8R4GjgVbaKnUjRoD2FoQbHOCbOyT5Mbs9Lw4g== - dependencies: - ignore-walk "^3.0.1" - npm-bundled "^1.0.1" - -npm-path@^2.0.2: - version "2.0.4" - resolved "https://registry.yarnpkg.com/npm-path/-/npm-path-2.0.4.tgz#c641347a5ff9d6a09e4d9bce5580c4f505278e64" - integrity sha512-IFsj0R9C7ZdR5cP+ET342q77uSRdtWOlWpih5eC+lu29tIDbNEgDbzgVJ5UFvYHWhxDZ5TFkJafFioO0pPQjCw== - dependencies: - which "^1.2.10" - -npm-run-path@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" - integrity sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8= - dependencies: - path-key "^2.0.0" - -npm-which@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/npm-which/-/npm-which-3.0.1.tgz#9225f26ec3a285c209cae67c3b11a6b4ab7140aa" - integrity sha1-kiXybsOihcIJyuZ8OxGmtKtxQKo= - dependencies: - commander "^2.9.0" - npm-path "^2.0.2" - which "^1.2.10" - -"npmlog@0 || 1 || 2 || 3 || 4", npmlog@^4.0.0, npmlog@^4.0.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" - integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== - dependencies: - are-we-there-yet "~1.1.2" - console-control-strings "~1.1.0" - gauge "~2.7.3" - set-blocking "~2.0.0" - -nth-check@~1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.2.tgz#b2bd295c37e3dd58a3bf0700376663ba4d9cf05c" - integrity sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg== - dependencies: - boolbase "~1.0.0" - -number-is-nan@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" - integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= - -nwsapi@^2.0.7: - version "2.0.9" - resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.0.9.tgz#77ac0cdfdcad52b6a1151a84e73254edc33ed016" - integrity sha512-nlWFSCTYQcHk/6A9FFnfhKc14c3aFhfdNBXgo8Qgi9QTBu/qg3Ww+Uiz9wMzXd1T8GFxPc2QIHB6Qtf2XFryFQ== - -oauth-sign@~0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" - integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== - -object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" - integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= - -object-copy@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" - integrity sha1-fn2Fi3gb18mRpBupde04EnVOmYw= - dependencies: - copy-descriptor "^0.1.0" - define-property "^0.2.5" - kind-of "^3.0.3" - -object-inspect@^1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.6.0.tgz#c70b6cbf72f274aab4c34c0c82f5167bf82cf15b" - integrity sha512-GJzfBZ6DgDAmnuaM3104jR4s1Myxr3Y3zfIyN4z3UdqN69oSRacNK8UhnobDdC+7J2AHCjGwxQubNJfE70SXXQ== - -object-is@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.0.1.tgz#0aa60ec9989a0b3ed795cf4d06f62cf1ad6539b6" - integrity sha1-CqYOyZiaCz7Xlc9NBvYs8a1lObY= - -object-keys@^1.0.11, object-keys@^1.0.12: - version "1.0.12" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.12.tgz#09c53855377575310cca62f55bb334abff7b3ed2" - integrity sha512-FTMyFUm2wBcGHnH2eXmz7tC6IwlqQZ6mVZ+6dm6vZ4IQIHjs6FdNsQBuKGPuUUUY6NfJw2PshC08Tn6LzLDOag== - -object-visit@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" - integrity sha1-95xEk68MU3e1n+OdOV5BBC3QRbs= - dependencies: - isobject "^3.0.0" - -object.assign@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" - integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w== - dependencies: - define-properties "^1.1.2" - function-bind "^1.1.1" - has-symbols "^1.0.0" - object-keys "^1.0.11" - -object.entries@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.0.4.tgz#1bf9a4dd2288f5b33f3a993d257661f05d161a5f" - integrity sha1-G/mk3SKI9bM/Opk9JXZh8F0WGl8= - dependencies: - define-properties "^1.1.2" - es-abstract "^1.6.1" - function-bind "^1.1.0" - has "^1.0.1" - -object.getownpropertydescriptors@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz#8758c846f5b407adab0f236e0986f14b051caa16" - integrity sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY= - dependencies: - define-properties "^1.1.2" - es-abstract "^1.5.1" - -object.omit@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa" - integrity sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo= - dependencies: - for-own "^0.1.4" - is-extendable "^0.1.1" - -object.pick@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" - integrity sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c= - dependencies: - isobject "^3.0.1" - -object.values@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.0.4.tgz#e524da09b4f66ff05df457546ec72ac99f13069a" - integrity sha1-5STaCbT2b/Bd9FdUbscqyZ8TBpo= - dependencies: - define-properties "^1.1.2" - es-abstract "^1.6.1" - function-bind "^1.1.0" - has "^1.0.1" - -obuf@^1.0.0, obuf@^1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e" - integrity sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg== - -on-finished@~2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" - integrity sha1-IPEzZIGwg811M3mSoWlxqi2QaUc= - dependencies: - ee-first "1.1.1" - -on-headers@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.1.tgz#928f5d0f470d49342651ea6794b0857c100693f7" - integrity sha1-ko9dD0cNSTQmUepnlLCFfBAGk/c= - -once@^1.3.0, once@^1.3.1, once@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" - integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= - dependencies: - wrappy "1" - -onetime@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4" - integrity sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ= - dependencies: - mimic-fn "^1.0.0" - -opn@^5.1.0: - version "5.4.0" - resolved "https://registry.yarnpkg.com/opn/-/opn-5.4.0.tgz#cb545e7aab78562beb11aa3bfabc7042e1761035" - integrity sha512-YF9MNdVy/0qvJvDtunAOzFw9iasOQHpVthTCvGzxt61Il64AYSGdK+rYwld7NAfk9qJ7dt+hymBNSc9LNYS+Sw== - dependencies: - is-wsl "^1.1.0" - -optimist@^0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686" - integrity sha1-2j6nRob6IaGaERwybpDrFaAZZoY= - dependencies: - minimist "~0.0.1" - wordwrap "~0.0.2" - -optionator@^0.8.1: - version "0.8.2" - resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64" - integrity sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q= - dependencies: - deep-is "~0.1.3" - fast-levenshtein "~2.0.4" - levn "~0.3.0" - prelude-ls "~1.1.2" - type-check "~0.3.2" - wordwrap "~1.0.0" - -original@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/original/-/original-1.0.2.tgz#e442a61cffe1c5fd20a65f3261c26663b303f25f" - integrity sha512-hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg== - dependencies: - url-parse "^1.4.3" - -os-browserify@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27" - integrity sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc= - -os-homedir@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" - integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= - -os-locale@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9" - integrity sha1-IPnxeuKe00XoveWDsT0gCYA8FNk= - dependencies: - lcid "^1.0.0" - -os-locale@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-2.1.0.tgz#42bc2900a6b5b8bd17376c8e882b65afccf24bf2" - integrity sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA== - dependencies: - execa "^0.7.0" - lcid "^1.0.0" - mem "^1.1.0" - -os-locale@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-3.0.1.tgz#3b014fbf01d87f60a1e5348d80fe870dc82c4620" - integrity sha512-7g5e7dmXPtzcP4bgsZ8ixDVqA7oWYuEz4lOSujeWyliPai4gfVDiFIcwBg3aGCPnmSGfzOKTK3ccPn0CKv3DBw== - dependencies: - execa "^0.10.0" - lcid "^2.0.0" - mem "^4.0.0" - -os-tmpdir@^1.0.0, os-tmpdir@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" - integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= - -osenv@0, osenv@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" - integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g== - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.0" - -p-defer@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" - integrity sha1-n26xgvbJqozXQwBKfU+WsZaw+ww= - -p-finally@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" - integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= - -p-is-promise@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-1.1.0.tgz#9c9456989e9f6588017b0434d56097675c3da05e" - integrity sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4= - -p-limit@^1.1.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" - integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q== - dependencies: - p-try "^1.0.0" - -p-limit@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.0.0.tgz#e624ed54ee8c460a778b3c9f3670496ff8a57aec" - integrity sha512-fl5s52lI5ahKCernzzIyAP0QAZbGIovtVHGwpcu1Jr/EpzLVDI2myISHwGqK7m8uQFugVWSrbxH7XnhGtvEc+A== - dependencies: - p-try "^2.0.0" - -p-locate@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" - integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM= - dependencies: - p-limit "^1.1.0" - -p-locate@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" - integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== - dependencies: - p-limit "^2.0.0" - -p-map@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-1.2.0.tgz#e4e94f311eabbc8633a1e79908165fca26241b6b" - integrity sha512-r6zKACMNhjPJMTl8KcFH4li//gkrXWfbD6feV8l6doRHlzljFWGJ2AP6iKaCJXyZmAUMOPtvbW7EXkbWO/pLEA== - -p-map@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-2.0.0.tgz#be18c5a5adeb8e156460651421aceca56c213a50" - integrity sha512-GO107XdrSUmtHxVoi60qc9tUl/KkNKm+X2CF4P9amalpGxv5YqVPJNfSb0wcA+syCopkZvYYIzW8OVTQW59x/w== - -p-try@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" - integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M= - -p-try@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.0.0.tgz#85080bb87c64688fa47996fe8f7dfbe8211760b1" - integrity sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ== - -pako@~1.0.5: - version "1.0.7" - resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.7.tgz#2473439021b57f1516c82f58be7275ad8ef1bb27" - integrity sha512-3HNK5tW4x8o5mO8RuHZp3Ydw9icZXx0RANAOMzlMzx7LVXhMJ4mo3MOBpzyd7r/+RUu8BmndP47LXT+vzjtWcQ== - -parallel-transform@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/parallel-transform/-/parallel-transform-1.1.0.tgz#d410f065b05da23081fcd10f28854c29bda33b06" - integrity sha1-1BDwZbBdojCB/NEPKIVMKb2jOwY= - dependencies: - cyclist "~0.2.2" - inherits "^2.0.3" - readable-stream "^2.1.5" - -parse-asn1@^5.0.0: - version "5.1.1" - resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.1.tgz#f6bf293818332bd0dab54efb16087724745e6ca8" - integrity sha512-KPx7flKXg775zZpnp9SxJlz00gTd4BmJ2yJufSc44gMCRrRQ7NSzAcSJQfifuOLgW6bEi+ftrALtsgALeB2Adw== - dependencies: - asn1.js "^4.0.0" - browserify-aes "^1.0.0" - create-hash "^1.1.0" - evp_bytestokey "^1.0.0" - pbkdf2 "^3.0.3" - -parse-glob@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c" - integrity sha1-ssN2z7EfNVE7rdFz7wu246OIORw= - dependencies: - glob-base "^0.3.0" - is-dotfile "^1.0.0" - is-extglob "^1.0.0" - is-glob "^2.0.0" - -parse-json@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" - integrity sha1-9ID0BDTvgHQfhGkJn43qGPVaTck= - dependencies: - error-ex "^1.2.0" - -parse-json@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" - integrity sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA= - dependencies: - error-ex "^1.3.1" - json-parse-better-errors "^1.0.1" - -parse5@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-4.0.0.tgz#6d78656e3da8d78b4ec0b906f7c08ef1dfe3f608" - integrity sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA== - -parse5@^3.0.1: - version "3.0.3" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-3.0.3.tgz#042f792ffdd36851551cf4e9e066b3874ab45b5c" - integrity sha512-rgO9Zg5LLLkfJF9E6CCmXlSE4UVceloys8JrFqCcHloC3usd/kJCyPDwH2SOlzix2j3xaP9sUX3e8+kvkuleAA== - dependencies: - "@types/node" "*" - -parseurl@~1.3.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.2.tgz#fc289d4ed8993119460c156253262cdc8de65bf3" - integrity sha1-/CidTtiZMRlGDBViUyYs3I3mW/M= - -pascalcase@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" - integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ= - -path-browserify@0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.0.tgz#a0b870729aae214005b7d5032ec2cbbb0fb4451a" - integrity sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo= - -path-dirname@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" - integrity sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA= - -path-exists@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" - integrity sha1-D+tsZPD8UY2adU3V77YscCJ2H0s= - dependencies: - pinkie-promise "^2.0.0" - -path-exists@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" - integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= - -path-is-absolute@^1.0.0, path-is-absolute@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" - integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= - -path-is-inside@^1.0.1, path-is-inside@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" - integrity sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM= - -path-key@^2.0.0, path-key@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" - integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= - -path-parse@^1.0.5: - version "1.0.6" - resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" - integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw== - -path-to-regexp@0.1.7: - version "0.1.7" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" - integrity sha1-32BBeABfUi8V60SQ5yR6G/qmf4w= - -path-to-regexp@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-1.7.0.tgz#59fde0f435badacba103a84e9d3bc64e96b9937d" - integrity sha1-Wf3g9DW62suhA6hOnTvGTpa5k30= - dependencies: - isarray "0.0.1" - -path-type@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" - integrity sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE= - dependencies: - graceful-fs "^4.1.2" - pify "^2.0.0" - pinkie-promise "^2.0.0" - -pbkdf2@^3.0.3: - version "3.0.17" - resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.17.tgz#976c206530617b14ebb32114239f7b09336e93a6" - integrity sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA== - dependencies: - create-hash "^1.1.2" - create-hmac "^1.1.4" - ripemd160 "^2.0.1" - safe-buffer "^5.0.1" - sha.js "^2.4.8" - -performance-now@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" - integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= - -pify@^2.0.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" - integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw= - -pify@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" - integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= - -pinkie-promise@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" - integrity sha1-ITXW36ejWMBprJsXh3YogihFD/o= - dependencies: - pinkie "^2.0.0" - -pinkie@^2.0.0: - version "2.0.4" - resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" - integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA= - -pkg-dir@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b" - integrity sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s= - dependencies: - find-up "^2.1.0" - -pkg-dir@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" - integrity sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw== - dependencies: - find-up "^3.0.0" - -please-upgrade-node@^3.0.2, please-upgrade-node@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/please-upgrade-node/-/please-upgrade-node-3.1.1.tgz#ed320051dfcc5024fae696712c8288993595e8ac" - integrity sha512-KY1uHnQ2NlQHqIJQpnh/i54rKkuxCEBx+voJIS/Mvb+L2iYd2NMotwduhKTMjfC1uKoX3VXOxLjIYG66dfJTVQ== - dependencies: - semver-compare "^1.0.0" - -pn@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/pn/-/pn-1.1.0.tgz#e2f4cef0e219f463c179ab37463e4e1ecdccbafb" - integrity sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA== - -portfinder@^1.0.9: - version "1.0.20" - resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.20.tgz#bea68632e54b2e13ab7b0c4775e9b41bf270e44a" - integrity sha512-Yxe4mTyDzTd59PZJY4ojZR8F+E5e97iq2ZOHPz3HDgSvYC5siNad2tLooQ5y5QHyQhc3xVqvyk/eNA3wuoa7Sw== - dependencies: - async "^1.5.2" - debug "^2.2.0" - mkdirp "0.5.x" - -posix-character-classes@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" - integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= - -postcss-modules-extract-imports@^1.2.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.2.1.tgz#dc87e34148ec7eab5f791f7cd5849833375b741a" - integrity sha512-6jt9XZwUhwmRUhb/CkyJY020PYaPJsCyt3UjbaWo6XEbH/94Hmv6MP7fG2C5NDU/BcHzyGYxNtHvM+LTf9HrYw== - dependencies: - postcss "^6.0.1" - -postcss-modules-local-by-default@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz#f7d80c398c5a393fa7964466bd19500a7d61c069" - integrity sha1-99gMOYxaOT+nlkRmvRlQCn1hwGk= - dependencies: - css-selector-tokenizer "^0.7.0" - postcss "^6.0.1" - -postcss-modules-scope@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz#d6ea64994c79f97b62a72b426fbe6056a194bb90" - integrity sha1-1upkmUx5+XtipytCb75gVqGUu5A= - dependencies: - css-selector-tokenizer "^0.7.0" - postcss "^6.0.1" - -postcss-modules-values@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz#ecffa9d7e192518389f42ad0e83f72aec456ea20" - integrity sha1-7P+p1+GSUYOJ9CrQ6D9yrsRW6iA= - dependencies: - icss-replace-symbols "^1.1.0" - postcss "^6.0.1" - -postcss-value-parser@^3.3.0: - version "3.3.1" - resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz#9ff822547e2893213cf1c30efa51ac5fd1ba8281" - integrity sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ== - -postcss@^6.0.1, postcss@^6.0.23: - version "6.0.23" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.23.tgz#61c82cc328ac60e677645f979054eb98bc0e3324" - integrity sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag== - dependencies: - chalk "^2.4.1" - source-map "^0.6.1" - supports-color "^5.4.0" - -prelude-ls@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" - integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= - -preserve@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" - integrity sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks= - -prettier@1.15.2: - version "1.15.2" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.15.2.tgz#d31abe22afa4351efa14c7f8b94b58bb7452205e" - integrity sha512-YgPLFFA0CdKL4Eg2IHtUSjzj/BWgszDHiNQAe0VAIBse34148whfdzLagRL+QiKS+YfK5ftB6X4v/MBw8yCoug== - -pretty-format@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-23.6.0.tgz#5eaac8eeb6b33b987b7fe6097ea6a8a146ab5760" - integrity sha512-zf9NV1NSlDLDjycnwm6hpFATCGl/K1lt0R/GdkAK2O5LN/rwJoB+Mh93gGJjut4YbmecbfgLWVGSTCr0Ewvvbw== - dependencies: - ansi-regex "^3.0.0" - ansi-styles "^3.2.0" - -private@^0.1.8: - version "0.1.8" - resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff" - integrity sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg== - -process-nextick-args@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa" - integrity sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw== - -process@^0.11.10: - version "0.11.10" - resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" - integrity sha1-czIwDoQBYb2j5podHZGn1LwW8YI= - -process@~0.5.1: - version "0.5.2" - resolved "https://registry.yarnpkg.com/process/-/process-0.5.2.tgz#1638d8a8e34c2f440a91db95ab9aeb677fc185cf" - integrity sha1-FjjYqONML0QKkduVq5rrZ3/Bhc8= - -promise-inflight@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" - integrity sha1-mEcocL8igTL8vdhoEputEsPAKeM= - -promise@^7.1.1: - version "7.3.1" - resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf" - integrity sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg== - dependencies: - asap "~2.0.3" - -prompts@^0.1.9: - version "0.1.14" - resolved "https://registry.yarnpkg.com/prompts/-/prompts-0.1.14.tgz#a8e15c612c5c9ec8f8111847df3337c9cbd443b2" - integrity sha512-rxkyiE9YH6zAz/rZpywySLKkpaj0NMVyNw1qhsubdbjjSgcayjTShDreZGlFMcGSu5sab3bAKPfFk78PB90+8w== - dependencies: - kleur "^2.0.1" - sisteransi "^0.1.1" - -prop-types@^15.5.10, prop-types@^15.6.1, prop-types@^15.6.2: - version "15.6.2" - resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.6.2.tgz#05d5ca77b4453e985d60fc7ff8c859094a497102" - integrity sha512-3pboPvLiWD7dkI3qf3KbUe6hKFKa52w+AE0VCqECtf+QHAKgOL37tTaNCnuX1nAAQ4ZhyP+kYVKf8rLmJ/feDQ== - dependencies: - loose-envify "^1.3.1" - object-assign "^4.1.1" - -proxy-addr@~2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.4.tgz#ecfc733bf22ff8c6f407fa275327b9ab67e48b93" - integrity sha512-5erio2h9jp5CHGwcybmxmVqHmnCBZeewlfJ0pex+UW7Qny7OOZXTtH56TGNyBizkgiOwhJtMKrVzDTeKcySZwA== - dependencies: - forwarded "~0.1.2" - ipaddr.js "1.8.0" - -prr@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" - integrity sha1-0/wRS6BplaRexok/SEzrHXj19HY= - -pseudomap@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" - integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= - -psl@^1.1.24, psl@^1.1.28: - version "1.1.31" - resolved "https://registry.yarnpkg.com/psl/-/psl-1.1.31.tgz#e9aa86d0101b5b105cbe93ac6b784cd547276184" - integrity sha512-/6pt4+C+T+wZUieKR620OpzN/LlnNKuWjy1iFLQ/UG35JqHlR/89MP1d96dUfkf6Dne3TuLQzOYEYshJ+Hx8mw== - -public-encrypt@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.3.tgz#4fcc9d77a07e48ba7527e7cbe0de33d0701331e0" - integrity sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q== - dependencies: - bn.js "^4.1.0" - browserify-rsa "^4.0.0" - create-hash "^1.1.0" - parse-asn1 "^5.0.0" - randombytes "^2.0.1" - safe-buffer "^5.1.2" - -pump@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909" - integrity sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA== - dependencies: - end-of-stream "^1.1.0" - once "^1.3.1" - -pump@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" - integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== - dependencies: - end-of-stream "^1.1.0" - once "^1.3.1" - -pumpify@^1.3.3: - version "1.5.1" - resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.5.1.tgz#36513be246ab27570b1a374a5ce278bfd74370ce" - integrity sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ== - dependencies: - duplexify "^3.6.0" - inherits "^2.0.3" - pump "^2.0.0" - -punycode@1.3.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" - integrity sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0= - -punycode@^1.2.4, punycode@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" - integrity sha1-wNWmOycYgArY4esPpSachN1BhF4= - -punycode@^2.1.0, punycode@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" - integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== - -qs@6.5.2, qs@~6.5.2: - version "6.5.2" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" - integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== - -querystring-es3@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" - integrity sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM= - -querystring@0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" - integrity sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA= - -querystringify@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.1.0.tgz#7ded8dfbf7879dcc60d0a644ac6754b283ad17ef" - integrity sha512-sluvZZ1YiTLD5jsqZcDmFyV2EwToyXZBfpoVOmktMmW+VEnhgakFHnasVph65fOjGPTWN0Nw3+XQaSeMayr0kg== - -raf@^3.4.0: - version "3.4.1" - resolved "https://registry.yarnpkg.com/raf/-/raf-3.4.1.tgz#0742e99a4a6552f445d73e3ee0328af0ff1ede39" - integrity sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA== - dependencies: - performance-now "^2.1.0" - -railroad-diagrams@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/railroad-diagrams/-/railroad-diagrams-1.0.0.tgz#eb7e6267548ddedfb899c1b90e57374559cddb7e" - integrity sha1-635iZ1SN3t+4mcG5Dlc3RVnN234= - -randexp@0.4.6: - version "0.4.6" - resolved "https://registry.yarnpkg.com/randexp/-/randexp-0.4.6.tgz#e986ad5e5e31dae13ddd6f7b3019aa7c87f60ca3" - integrity sha512-80WNmd9DA0tmZrw9qQa62GPPWfuXJknrmVmLcxvq4uZBdYqb1wYoKTmnlGUchvVWe0XiLupYkBoXVOxz3C8DYQ== - dependencies: - discontinuous-range "1.0.0" - ret "~0.1.10" - -randomatic@^3.0.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-3.1.1.tgz#b776efc59375984e36c537b2f51a1f0aff0da1ed" - integrity sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw== - dependencies: - is-number "^4.0.0" - kind-of "^6.0.0" - math-random "^1.0.1" - -randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5: - version "2.0.6" - resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.0.6.tgz#d302c522948588848a8d300c932b44c24231da80" - integrity sha512-CIQ5OFxf4Jou6uOKe9t1AOgqpeU5fd70A8NPdHSGeYXqXsPe6peOwI0cUl88RWZ6sP1vPMV3avd/R6cZ5/sP1A== - dependencies: - safe-buffer "^5.1.0" - -randomfill@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.4.tgz#c92196fc86ab42be983f1bf31778224931d61458" - integrity sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw== - dependencies: - randombytes "^2.0.5" - safe-buffer "^5.1.0" - -range-parser@^1.0.3, range-parser@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.0.tgz#f49be6b487894ddc40dcc94a322f611092e00d5e" - integrity sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4= - -raw-body@2.3.3: - version "2.3.3" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.3.3.tgz#1b324ece6b5706e153855bc1148c65bb7f6ea0c3" - integrity sha512-9esiElv1BrZoI3rCDuOuKCBRbuApGGaDPQfjSflGxdy4oyzqghxu6klEkkVIvBje+FF0BX9coEv8KqW6X/7njw== - dependencies: - bytes "3.0.0" - http-errors "1.6.3" - iconv-lite "0.4.23" - unpipe "1.0.0" - -rc@^1.2.7: - version "1.2.8" - resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" - integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== - dependencies: - deep-extend "^0.6.0" - ini "~1.3.0" - minimist "^1.2.0" - strip-json-comments "~2.0.1" - -react-dom@^16.5.2: - version "16.6.3" - resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.6.3.tgz#8fa7ba6883c85211b8da2d0efeffc9d3825cccc0" - integrity sha512-8ugJWRCWLGXy+7PmNh8WJz3g1TaTUt1XyoIcFN+x0Zbkoz+KKdUyx1AQLYJdbFXjuF41Nmjn5+j//rxvhFjgSQ== - dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" - prop-types "^15.6.2" - scheduler "^0.11.2" - -react-fast-compare@^2.0.1: - version "2.0.4" - resolved "https://registry.yarnpkg.com/react-fast-compare/-/react-fast-compare-2.0.4.tgz#e84b4d455b0fec113e0402c329352715196f81f9" - integrity sha512-suNP+J1VU1MWFKcyt7RtjiSWUjvidmQSlqu+eHslq+342xCbGTYmC0mEhPCOHxlW0CywylOC1u2DFAT+bv4dBw== - -react-hot-loader@^4.3.8: - version "4.3.12" - resolved "https://registry.yarnpkg.com/react-hot-loader/-/react-hot-loader-4.3.12.tgz#0d56688884e7330c63a00a17217866280616b07a" - integrity sha512-GMM4TsqUVss2QPe+Y33NlgydA5/+7tAVQxR0rZqWvBpapM8JhD7p6ymMwSZzr5yxjoXXlK/6P6qNQBOqm1dqdg== - dependencies: - fast-levenshtein "^2.0.6" - global "^4.3.0" - hoist-non-react-statics "^2.5.0" - prop-types "^15.6.1" - react-lifecycles-compat "^3.0.4" - shallowequal "^1.0.2" - -react-is@^16.3.2, react-is@^16.6.1, react-is@^16.6.3: - version "16.6.3" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.6.3.tgz#d2d7462fcfcbe6ec0da56ad69047e47e56e7eac0" - integrity sha512-u7FDWtthB4rWibG/+mFbVd5FvdI20yde86qKGx4lVUTWmPlSWQ4QxbBIrrs+HnXGbxOUlUzTAP/VDmvCwaP2yA== - -react-lifecycles-compat@^3.0.0, react-lifecycles-compat@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz#4f1a273afdfc8f3488a8c516bfda78f872352362" - integrity sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA== - -react-modal@^3.6.1: - version "3.7.1" - resolved "https://registry.yarnpkg.com/react-modal/-/react-modal-3.7.1.tgz#342ed170133d0557e6c3e6fc40195bc45c8f09c3" - integrity sha512-eSgotXkqOCXi0b27AwLCoJ8yqLepKnbZdMp/zfUmZPnMNoe39pDT0mbAPq9rp+TToqM5GUTv8C36Cuja+ThbhA== - dependencies: - exenv "^1.2.0" - prop-types "^15.5.10" - react-lifecycles-compat "^3.0.0" - warning "^3.0.0" - -react-redux@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/react-redux/-/react-redux-6.0.0.tgz#09e86eeed5febb98e9442458ad2970c8f1a173ef" - integrity sha512-EmbC3uLl60pw2VqSSkj6HpZ6jTk12RMrwXMBdYtM6niq0MdEaRq9KYCwpJflkOZj349BLGQm1MI/JO1W96kLWQ== - dependencies: - "@babel/runtime" "^7.2.0" - hoist-non-react-statics "^3.2.1" - invariant "^2.2.4" - loose-envify "^1.4.0" - prop-types "^15.6.2" - react-is "^16.6.3" - -react-router-dom@^4.3.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-4.3.1.tgz#4c2619fc24c4fa87c9fd18f4fb4a43fe63fbd5c6" - integrity sha512-c/MlywfxDdCp7EnB7YfPMOfMD3tOtIjrQlj/CKfNMBxdmpJP8xcz5P/UAFn3JbnQCNUxsHyVVqllF9LhgVyFCA== - dependencies: - history "^4.7.2" - invariant "^2.2.4" - loose-envify "^1.3.1" - prop-types "^15.6.1" - react-router "^4.3.1" - warning "^4.0.1" - -react-router@^4.3.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/react-router/-/react-router-4.3.1.tgz#aada4aef14c809cb2e686b05cee4742234506c4e" - integrity sha512-yrvL8AogDh2X42Dt9iknk4wF4V8bWREPirFfS9gLU1huk6qK41sg7Z/1S81jjTrGHxa3B8R3J6xIkDAA6CVarg== - dependencies: - history "^4.7.2" - hoist-non-react-statics "^2.5.0" - invariant "^2.2.4" - loose-envify "^1.3.1" - path-to-regexp "^1.7.0" - prop-types "^15.6.1" - warning "^4.0.1" - -react-s-alert@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/react-s-alert/-/react-s-alert-1.4.1.tgz#ef3665a9d98c4cf2e448fc2d84e48aeca799bb5a" - integrity sha512-+cSpVPe6YeGklhlo7zbVlB0Z6jdiU9HPmEVzp5nIhNm9lvdL7rVO2Jx09pCwT99GmODyoN0iNhbQku6r7six8A== - dependencies: - babel-runtime "^6.23.0" - -react-test-renderer@^16.0.0-0, react-test-renderer@^16.5.2: - version "16.6.3" - resolved "https://registry.yarnpkg.com/react-test-renderer/-/react-test-renderer-16.6.3.tgz#5f3a1a7d5c3379d46f7052b848b4b72e47c89f38" - integrity sha512-B5bCer+qymrQz/wN03lT0LppbZUDRq6AMfzMKrovzkGzfO81a9T+PWQW6MzkWknbwODQH/qpJno/yFQLX5IWrQ== - dependencies: - object-assign "^4.1.1" - prop-types "^15.6.2" - react-is "^16.6.3" - scheduler "^0.11.2" - -react@^16.5.2: - version "16.6.3" - resolved "https://registry.yarnpkg.com/react/-/react-16.6.3.tgz#25d77c91911d6bbdd23db41e70fb094cc1e0871c" - integrity sha512-zCvmH2vbEolgKxtqXL2wmGCUxUyNheYn/C+PD1YAjfxHC54+MhdruyhO7QieQrYsYeTxrn93PM2y0jRH1zEExw== - dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" - prop-types "^15.6.2" - scheduler "^0.11.2" - -read-pkg-up@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" - integrity sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI= - dependencies: - find-up "^1.0.0" - read-pkg "^1.0.0" - -read-pkg@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" - integrity sha1-9f+qXs0pyzHAR0vKfXVra7KePyg= - dependencies: - load-json-file "^1.0.0" - normalize-package-data "^2.3.2" - path-type "^1.0.0" - -read-pkg@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-4.0.1.tgz#963625378f3e1c4d48c85872b5a6ec7d5d093237" - integrity sha1-ljYlN48+HE1IyFhytabsfV0JMjc= - dependencies: - normalize-package-data "^2.3.2" - parse-json "^4.0.0" - pify "^3.0.0" - -"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.4, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.2.9, readable-stream@^2.3.3, readable-stream@^2.3.6, readable-stream@~2.3.6: - version "2.3.6" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf" - integrity sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw== - 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" - -readable-stream@^3.0.6: - version "3.0.6" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.0.6.tgz#351302e4c68b5abd6a2ed55376a7f9a25be3057a" - integrity sha512-9E1oLoOWfhSXHGv6QlwXJim7uNzd9EVlWK+21tCU9Ju/kR0/p2AZYPz4qSchgO8PlLIH4FpZYfzwS+rEksZjIg== - dependencies: - inherits "^2.0.3" - string_decoder "^1.1.1" - util-deprecate "^1.0.1" - -readdirp@^2.0.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525" - integrity sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ== - dependencies: - graceful-fs "^4.1.11" - micromatch "^3.1.10" - readable-stream "^2.0.2" - -realpath-native@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/realpath-native/-/realpath-native-1.0.2.tgz#cd51ce089b513b45cf9b1516c82989b51ccc6560" - integrity sha512-+S3zTvVt9yTntFrBpm7TQmQ3tzpCrnA1a/y+3cUHAc9ZR6aIjG0WNLR+Rj79QpJktY+VeW/TQtFlQ1bzsehI8g== - dependencies: - util.promisify "^1.0.0" - -redent@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde" - integrity sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94= - dependencies: - indent-string "^2.1.0" - strip-indent "^1.0.1" - -redux-promise@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/redux-promise/-/redux-promise-0.6.0.tgz#c64723b5213bb5603c11b74302883b682e06b319" - integrity sha512-R2mGxJbPFgXyCNbFDE6LjTZhCEuACF54g1bxld3nqBhnRMX0OsUyWk77moF7UMGkUdl5WOAwc4BC5jOd1dunqQ== - dependencies: - flux-standard-action "^2.0.3" - is-promise "^2.1.0" - -redux@^3.6.0: - version "3.7.2" - resolved "https://registry.yarnpkg.com/redux/-/redux-3.7.2.tgz#06b73123215901d25d065be342eb026bc1c8537b" - integrity sha512-pNqnf9q1hI5HHZRBkj3bAngGZW/JMCmexDlOxw4XagXY2o1327nHH54LoTjiPJ0gizoqPDRqWyX/00g0hD6w+A== - dependencies: - lodash "^4.2.1" - lodash-es "^4.2.1" - loose-envify "^1.1.0" - symbol-observable "^1.0.3" - -redux@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/redux/-/redux-4.0.1.tgz#436cae6cc40fbe4727689d7c8fae44808f1bfef5" - integrity sha512-R7bAtSkk7nY6O/OYMVR9RiBI+XghjF9rlbl5806HJbQph0LJVHZrU5oaO4q70eUKiqMRqm4y07KLTlMZ2BlVmg== - dependencies: - loose-envify "^1.4.0" - symbol-observable "^1.2.0" - -regenerate@^1.2.1: - version "1.4.0" - resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.0.tgz#4a856ec4b56e4077c557589cae85e7a4c8869a11" - integrity sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg== - -regenerator-runtime@^0.11.0: - version "0.11.1" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" - integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg== - -regenerator-runtime@^0.12.0: - version "0.12.1" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.12.1.tgz#fa1a71544764c036f8c49b13a08b2594c9f8a0de" - integrity sha512-odxIc1/vDlo4iZcfXqRYFj0vpXFNoGdKMAUieAlFYO6m/nl5e9KR/beGf41z4a1FI+aQgtjhuaSlDxQ0hmkrHg== - -regex-cache@^0.4.2: - version "0.4.4" - resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.4.tgz#75bdc58a2a1496cec48a12835bc54c8d562336dd" - integrity sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ== - dependencies: - is-equal-shallow "^0.1.3" - -regex-not@^1.0.0, regex-not@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" - integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== - dependencies: - extend-shallow "^3.0.2" - safe-regex "^1.1.0" - -regexpu-core@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-1.0.0.tgz#86a763f58ee4d7c2f6b102e4764050de7ed90c6b" - integrity sha1-hqdj9Y7k18L2sQLkdkBQ3n7ZDGs= - dependencies: - regenerate "^1.2.1" - regjsgen "^0.2.0" - regjsparser "^0.1.4" - -regjsgen@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7" - integrity sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc= - -regjsparser@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c" - integrity sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw= - dependencies: - jsesc "~0.5.0" - -remove-trailing-separator@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" - integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= - -repeat-element@^1.1.2: - version "1.1.3" - resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce" - integrity sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g== - -repeat-string@^1.5.2, repeat-string@^1.6.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" - integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= - -repeating@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" - integrity sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo= - dependencies: - is-finite "^1.0.0" - -request-promise-core@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.1.tgz#3eee00b2c5aa83239cfb04c5700da36f81cd08b6" - integrity sha1-Pu4AssWqgyOc+wTFcA2jb4HNCLY= - dependencies: - lodash "^4.13.1" - -request-promise-native@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/request-promise-native/-/request-promise-native-1.0.5.tgz#5281770f68e0c9719e5163fd3fab482215f4fda5" - integrity sha1-UoF3D2jgyXGeUWP9P6tIIhX0/aU= - dependencies: - request-promise-core "1.1.1" - stealthy-require "^1.1.0" - tough-cookie ">=2.3.3" - -request@^2.87.0, request@^2.88.0: - version "2.88.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.88.0.tgz#9c2fca4f7d35b592efe57c7f0a55e81052124fef" - integrity sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg== - dependencies: - aws-sign2 "~0.7.0" - aws4 "^1.8.0" - caseless "~0.12.0" - combined-stream "~1.0.6" - extend "~3.0.2" - forever-agent "~0.6.1" - form-data "~2.3.2" - har-validator "~5.1.0" - http-signature "~1.2.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.19" - oauth-sign "~0.9.0" - performance-now "^2.1.0" - qs "~6.5.2" - safe-buffer "^5.1.2" - tough-cookie "~2.4.3" - tunnel-agent "^0.6.0" - uuid "^3.3.2" - -require-directory@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" - integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= - -require-main-filename@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" - integrity sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE= - -requires-port@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" - integrity sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8= - -resolve-cwd@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-2.0.0.tgz#00a9f7387556e27038eae232caa372a6a59b665a" - integrity sha1-AKn3OHVW4nA46uIyyqNypqWbZlo= - dependencies: - resolve-from "^3.0.0" - -resolve-from@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" - integrity sha1-six699nWiBvItuZTM17rywoYh0g= - -resolve-pathname@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/resolve-pathname/-/resolve-pathname-2.2.0.tgz#7e9ae21ed815fd63ab189adeee64dc831eefa879" - integrity sha512-bAFz9ld18RzJfddgrO2e/0S2O81710++chRMUxHjXOYKF6jTAMrUNZrEZ1PvV0zlhfjidm08iRPdTLPno1FuRg== - -resolve-url@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" - integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= - -resolve@1.1.7: - version "1.1.7" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" - integrity sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs= - -resolve@^1.3.2: - version "1.8.1" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.8.1.tgz#82f1ec19a423ac1fbd080b0bab06ba36e84a7a26" - integrity sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA== - dependencies: - path-parse "^1.0.5" - -restore-cursor@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" - integrity sha1-n37ih/gv0ybU/RYpI9YhKe7g368= - dependencies: - onetime "^2.0.0" - signal-exit "^3.0.2" - -ret@~0.1.10: - version "0.1.15" - resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" - integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== - -rimraf@2, rimraf@^2.2.8, rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.2: - version "2.6.2" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36" - integrity sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w== - dependencies: - glob "^7.0.5" - -ripemd160@^2.0.0, ripemd160@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c" - integrity sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA== - dependencies: - hash-base "^3.0.0" - inherits "^2.0.1" - -rst-selector-parser@^2.2.3: - version "2.2.3" - resolved "https://registry.yarnpkg.com/rst-selector-parser/-/rst-selector-parser-2.2.3.tgz#81b230ea2fcc6066c89e3472de794285d9b03d91" - integrity sha1-gbIw6i/MYGbInjRy3nlChdmwPZE= - dependencies: - lodash.flattendeep "^4.4.0" - nearley "^2.7.10" - -rsvp@^3.3.3: - version "3.6.2" - resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-3.6.2.tgz#2e96491599a96cde1b515d5674a8f7a91452926a" - integrity sha512-OfWGQTb9vnwRjwtA2QwpG2ICclHC3pgXZO5xt8H2EfgDquO0qVdSb5T88L4qJVAEugbS56pAuV4XZM58UX8ulw== - -run-node@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/run-node/-/run-node-1.0.0.tgz#46b50b946a2aa2d4947ae1d886e9856fd9cabe5e" - integrity sha512-kc120TBlQ3mih1LSzdAJXo4xn/GWS2ec0l3S+syHDXP9uRr0JAT8Qd3mdMuyjqCzeZktgP3try92cEgf9Nks8A== - -run-queue@^1.0.0, run-queue@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47" - integrity sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec= - dependencies: - aproba "^1.1.1" - -rxjs@^6.3.3: - version "6.3.3" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.3.3.tgz#3c6a7fa420e844a81390fb1158a9ec614f4bad55" - integrity sha512-JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw== - dependencies: - tslib "^1.9.0" - -safe-buffer@5.1.2, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: - version "5.1.2" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" - integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== - -safe-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" - integrity sha1-QKNmnzsHfR6UPURinhV91IAjvy4= - dependencies: - ret "~0.1.10" - -"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: - version "2.1.2" - resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" - integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== - -sane@^2.0.0: - version "2.5.2" - resolved "https://registry.yarnpkg.com/sane/-/sane-2.5.2.tgz#b4dc1861c21b427e929507a3e751e2a2cb8ab3fa" - integrity sha1-tNwYYcIbQn6SlQej51HiosuKs/o= - dependencies: - anymatch "^2.0.0" - capture-exit "^1.2.0" - exec-sh "^0.2.0" - fb-watchman "^2.0.0" - micromatch "^3.1.4" - minimist "^1.1.1" - walker "~1.0.5" - watch "~0.18.0" - optionalDependencies: - fsevents "^1.2.3" - -sass-graph@^2.2.4: - version "2.2.4" - resolved "https://registry.yarnpkg.com/sass-graph/-/sass-graph-2.2.4.tgz#13fbd63cd1caf0908b9fd93476ad43a51d1e0b49" - integrity sha1-E/vWPNHK8JCLn9k0dq1DpR0eC0k= - dependencies: - glob "^7.0.0" - lodash "^4.0.0" - scss-tokenizer "^0.2.3" - yargs "^7.0.0" - -sass-loader@^7.1.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-7.1.0.tgz#16fd5138cb8b424bf8a759528a1972d72aad069d" - integrity sha512-+G+BKGglmZM2GUSfT9TLuEp6tzehHPjAMoRRItOojWIqIGPloVCMhNIQuG639eJ+y033PaGTSjLaTHts8Kw79w== - dependencies: - clone-deep "^2.0.1" - loader-utils "^1.0.1" - lodash.tail "^4.1.1" - neo-async "^2.5.0" - pify "^3.0.0" - semver "^5.5.0" - -sax@^1.2.4: - version "1.2.4" - resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" - integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== - -scheduler@^0.11.2: - version "0.11.3" - resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.11.3.tgz#b5769b90cf8b1464f3f3cfcafe8e3cd7555a2d6b" - integrity sha512-i9X9VRRVZDd3xZw10NY5Z2cVMbdYg6gqFecfj79USv1CFN+YrJ3gIPRKf1qlY+Sxly4djoKdfx1T+m9dnRB8kQ== - dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" - -schema-utils@^0.4.4, schema-utils@^0.4.5: - version "0.4.7" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.4.7.tgz#ba74f597d2be2ea880131746ee17d0a093c68187" - integrity sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ== - dependencies: - ajv "^6.1.0" - ajv-keywords "^3.1.0" - -schema-utils@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-1.0.0.tgz#0b79a93204d7b600d4b2850d1f66c2a34951c770" - integrity sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g== - dependencies: - ajv "^6.1.0" - ajv-errors "^1.0.0" - ajv-keywords "^3.1.0" - -scss-tokenizer@^0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz#8eb06db9a9723333824d3f5530641149847ce5d1" - integrity sha1-jrBtualyMzOCTT9VMGQRSYR85dE= - dependencies: - js-base64 "^2.1.8" - source-map "^0.4.2" - -select-hose@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" - integrity sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo= - -selfsigned@^1.9.1: - version "1.10.4" - resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-1.10.4.tgz#cdd7eccfca4ed7635d47a08bf2d5d3074092e2cd" - integrity sha512-9AukTiDmHXGXWtWjembZ5NDmVvP2695EtpgbCsxCa68w3c88B+alqbmZ4O3hZ4VWGXeGWzEVdvqgAJD8DQPCDw== - dependencies: - node-forge "0.7.5" - -semver-compare@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/semver-compare/-/semver-compare-1.0.0.tgz#0dee216a1c941ab37e9efb1788f6afc5ff5537fc" - integrity sha1-De4hahyUGrN+nvsXiPavxf9VN/w= - -"semver@2 || 3 || 4 || 5", semver@^5.0.1, semver@^5.3.0, semver@^5.4.1, semver@^5.5.0, semver@^5.6.0: - version "5.6.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.6.0.tgz#7e74256fbaa49c75aa7c7a205cc22799cac80004" - integrity sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg== - -semver@~5.3.0: - version "5.3.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" - integrity sha1-myzl094C0XxgEq0yaqa00M9U+U8= - -send@0.16.2: - version "0.16.2" - resolved "https://registry.yarnpkg.com/send/-/send-0.16.2.tgz#6ecca1e0f8c156d141597559848df64730a6bbc1" - integrity sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw== - dependencies: - debug "2.6.9" - depd "~1.1.2" - destroy "~1.0.4" - encodeurl "~1.0.2" - escape-html "~1.0.3" - etag "~1.8.1" - fresh "0.5.2" - http-errors "~1.6.2" - mime "1.4.1" - ms "2.0.0" - on-finished "~2.3.0" - range-parser "~1.2.0" - statuses "~1.4.0" - -serialize-javascript@^1.4.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-1.5.0.tgz#1aa336162c88a890ddad5384baebc93a655161fe" - integrity sha512-Ga8c8NjAAp46Br4+0oZ2WxJCwIzwP60Gq1YPgU+39PiTVxyed/iKE/zyZI6+UlVYH5Q4PaQdHhcegIFPZTUfoQ== - -serve-index@^1.7.2: - version "1.9.1" - resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239" - integrity sha1-03aNabHn2C5c4FD/9bRTvqEqkjk= - dependencies: - accepts "~1.3.4" - batch "0.6.1" - debug "2.6.9" - escape-html "~1.0.3" - http-errors "~1.6.2" - mime-types "~2.1.17" - parseurl "~1.3.2" - -serve-static@1.13.2: - version "1.13.2" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.13.2.tgz#095e8472fd5b46237db50ce486a43f4b86c6cec1" - integrity sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw== - dependencies: - encodeurl "~1.0.2" - escape-html "~1.0.3" - parseurl "~1.3.2" - send "0.16.2" - -set-blocking@^2.0.0, set-blocking@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" - integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= - -set-value@^0.4.3: - version "0.4.3" - resolved "https://registry.yarnpkg.com/set-value/-/set-value-0.4.3.tgz#7db08f9d3d22dc7f78e53af3c3bf4666ecdfccf1" - integrity sha1-fbCPnT0i3H945Trzw79GZuzfzPE= - dependencies: - extend-shallow "^2.0.1" - is-extendable "^0.1.1" - is-plain-object "^2.0.1" - to-object-path "^0.3.0" - -set-value@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.0.tgz#71ae4a88f0feefbbf52d1ea604f3fb315ebb6274" - integrity sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg== - dependencies: - extend-shallow "^2.0.1" - is-extendable "^0.1.1" - is-plain-object "^2.0.3" - split-string "^3.0.1" - -setimmediate@^1.0.4, setimmediate@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" - integrity sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU= - -setprototypeof@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" - integrity sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ== - -sha.js@^2.4.0, sha.js@^2.4.8: - version "2.4.11" - resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7" - integrity sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ== - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - -shallow-clone@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-1.0.0.tgz#4480cd06e882ef68b2ad88a3ea54832e2c48b571" - integrity sha512-oeXreoKR/SyNJtRJMAKPDSvd28OqEwG4eR/xc856cRGBII7gX9lvAqDxusPm0846z/w/hWYjI1NpKwJ00NHzRA== - dependencies: - is-extendable "^0.1.1" - kind-of "^5.0.0" - mixin-object "^2.0.1" - -shallowequal@^1.0.2: - version "1.1.0" - resolved "https://registry.yarnpkg.com/shallowequal/-/shallowequal-1.1.0.tgz#188d521de95b9087404fd4dcb68b13df0ae4e7f8" - integrity sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ== - -shebang-command@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" - integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo= - dependencies: - shebang-regex "^1.0.0" - -shebang-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" - integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= - -shellwords@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b" - integrity sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww== - -signal-exit@^3.0.0, signal-exit@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" - integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0= - -simple-git@^1.85.0: - version "1.107.0" - resolved "https://registry.yarnpkg.com/simple-git/-/simple-git-1.107.0.tgz#12cffaf261c14d6f450f7fdb86c21ccee968b383" - integrity sha512-t4OK1JRlp4ayKRfcW6owrWcRVLyHRUlhGd0uN6ZZTqfDq8a5XpcUdOKiGRNobHEuMtNqzp0vcJNvhYWwh5PsQA== - dependencies: - debug "^4.0.1" - -sisteransi@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-0.1.1.tgz#5431447d5f7d1675aac667ccd0b865a4994cb3ce" - integrity sha512-PmGOd02bM9YO5ifxpw36nrNMBTptEtfRl4qUYl9SndkolplkrZZOW7PGHjrZL53QvMVj9nQ+TKqUnRsw4tJa4g== - -slash@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" - integrity sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU= - -slash@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-2.0.0.tgz#de552851a1759df3a8f206535442f5ec4ddeab44" - integrity sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A== - -slice-ansi@0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-0.0.4.tgz#edbf8903f66f7ce2f8eafd6ceed65e264c831b35" - integrity sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU= - -snapdragon-node@^2.0.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" - integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== - dependencies: - define-property "^1.0.0" - isobject "^3.0.0" - snapdragon-util "^3.0.1" - -snapdragon-util@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" - integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== - dependencies: - kind-of "^3.2.0" - -snapdragon@^0.8.1: - version "0.8.2" - resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" - integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== - dependencies: - base "^0.11.1" - debug "^2.2.0" - define-property "^0.2.5" - extend-shallow "^2.0.1" - map-cache "^0.2.2" - source-map "^0.5.6" - source-map-resolve "^0.5.0" - use "^3.1.0" - -sockjs-client@1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.3.0.tgz#12fc9d6cb663da5739d3dc5fb6e8687da95cb177" - integrity sha512-R9jxEzhnnrdxLCNln0xg5uGHqMnkhPSTzUZH2eXcR03S/On9Yvoq2wyUZILRUhZCNVu2PmwWVoyuiPz8th8zbg== - dependencies: - debug "^3.2.5" - eventsource "^1.0.7" - faye-websocket "~0.11.1" - inherits "^2.0.3" - json3 "^3.3.2" - url-parse "^1.4.3" - -sockjs@0.3.19: - version "0.3.19" - resolved "https://registry.yarnpkg.com/sockjs/-/sockjs-0.3.19.tgz#d976bbe800af7bd20ae08598d582393508993c0d" - integrity sha512-V48klKZl8T6MzatbLlzzRNhMepEys9Y4oGFpypBFFn1gLI/QQ9HtLLyWJNbPlwGLelOVOEijUbTTJeLLI59jLw== - dependencies: - faye-websocket "^0.10.0" - uuid "^3.0.1" - -source-list-map@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" - integrity sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw== - -source-map-resolve@^0.5.0: - version "0.5.2" - resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.2.tgz#72e2cc34095543e43b2c62b2c4c10d4a9054f259" - integrity sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA== - dependencies: - atob "^2.1.1" - decode-uri-component "^0.2.0" - resolve-url "^0.2.1" - source-map-url "^0.4.0" - urix "^0.1.0" - -source-map-support@^0.4.15: - version "0.4.18" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.18.tgz#0286a6de8be42641338594e97ccea75f0a2c585f" - integrity sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA== - dependencies: - source-map "^0.5.6" - -source-map-support@^0.5.6, source-map-support@~0.5.6: - version "0.5.9" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.9.tgz#41bc953b2534267ea2d605bccfa7bfa3111ced5f" - integrity sha512-gR6Rw4MvUlYy83vP0vxoVNzM6t8MUXqNuRsuBmBHQDu1Fh6X015FrLdgoDKcNdkwGubozq0P4N0Q37UyFVr1EA== - dependencies: - buffer-from "^1.0.0" - source-map "^0.6.0" - -source-map-url@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" - integrity sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM= - -source-map@^0.4.2: - version "0.4.4" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b" - integrity sha1-66T12pwNyZneaAMti092FzZSA2s= - dependencies: - amdefine ">=0.0.4" - -source-map@^0.5.3, source-map@^0.5.6, source-map@^0.5.7: - version "0.5.7" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" - integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= - -source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" - integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== - -spdx-correct@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.0.tgz#fb83e504445268f154b074e218c87c003cd31df4" - integrity sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q== - dependencies: - spdx-expression-parse "^3.0.0" - spdx-license-ids "^3.0.0" - -spdx-exceptions@^2.1.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz#2ea450aee74f2a89bfb94519c07fcd6f41322977" - integrity sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA== - -spdx-expression-parse@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz#99e119b7a5da00e05491c9fa338b7904823b41d0" - integrity sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg== - dependencies: - spdx-exceptions "^2.1.0" - spdx-license-ids "^3.0.0" - -spdx-license-ids@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.2.tgz#a59efc09784c2a5bada13cfeaf5c75dd214044d2" - integrity sha512-qky9CVt0lVIECkEsYbNILVnPvycuEBkXoMFLRWsREkomQLevYhtRKC+R91a5TOAQ3bCMjikRwhyaRqj1VYatYg== - -spdy-transport@^2.0.18: - version "2.1.1" - resolved "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-2.1.1.tgz#c54815d73858aadd06ce63001e7d25fa6441623b" - integrity sha512-q7D8c148escoB3Z7ySCASadkegMmUZW8Wb/Q1u0/XBgDKMO880rLQDj8Twiew/tYi7ghemKUi/whSYOwE17f5Q== - dependencies: - debug "^2.6.8" - detect-node "^2.0.3" - hpack.js "^2.1.6" - obuf "^1.1.1" - readable-stream "^2.2.9" - safe-buffer "^5.0.1" - wbuf "^1.7.2" - -spdy@^3.4.1: - version "3.4.7" - resolved "https://registry.yarnpkg.com/spdy/-/spdy-3.4.7.tgz#42ff41ece5cc0f99a3a6c28aabb73f5c3b03acbc" - integrity sha1-Qv9B7OXMD5mjpsKKq7c/XDsDrLw= - dependencies: - debug "^2.6.8" - handle-thing "^1.2.5" - http-deceiver "^1.2.7" - safe-buffer "^5.0.1" - select-hose "^2.0.0" - spdy-transport "^2.0.18" - -split-string@^3.0.1, split-string@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" - integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== - dependencies: - extend-shallow "^3.0.0" - -sprintf-js@~1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" - integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= - -sshpk@^1.7.0: - version "1.15.2" - resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.15.2.tgz#c946d6bd9b1a39d0e8635763f5242d6ed6dcb629" - integrity sha512-Ra/OXQtuh0/enyl4ETZAfTaeksa6BXks5ZcjpSUNrjBr0DvrJKX+1fsKDPpT9TBXgHAFsa4510aNVgI8g/+SzA== - dependencies: - asn1 "~0.2.3" - assert-plus "^1.0.0" - bcrypt-pbkdf "^1.0.0" - dashdash "^1.12.0" - ecc-jsbn "~0.1.1" - getpass "^0.1.1" - jsbn "~0.1.0" - safer-buffer "^2.0.2" - tweetnacl "~0.14.0" - -ssri@^6.0.0: - version "6.0.1" - resolved "https://registry.yarnpkg.com/ssri/-/ssri-6.0.1.tgz#2a3c41b28dd45b62b63676ecb74001265ae9edd8" - integrity sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA== - dependencies: - figgy-pudding "^3.5.1" - -stack-utils@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-1.0.2.tgz#33eba3897788558bebfc2db059dc158ec36cebb8" - integrity sha512-MTX+MeG5U994cazkjd/9KNAapsHnibjMLnfXodlkXw76JEea0UiNzrqidzo1emMwk7w5Qhc9jd4Bn9TBb1MFwA== - -staged-git-files@1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/staged-git-files/-/staged-git-files-1.1.2.tgz#4326d33886dc9ecfa29a6193bf511ba90a46454b" - integrity sha512-0Eyrk6uXW6tg9PYkhi/V/J4zHp33aNyi2hOCmhFLqLTIhbgqWn5jlSzI+IU0VqrZq6+DbHcabQl/WP6P3BG0QA== - -static-extend@^0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" - integrity sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY= - dependencies: - define-property "^0.2.5" - object-copy "^0.1.0" - -"statuses@>= 1.4.0 < 2": - version "1.5.0" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" - integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= - -statuses@~1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.4.0.tgz#bb73d446da2796106efcc1b601a253d6c46bd087" - integrity sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew== - -stdout-stream@^1.4.0: - version "1.4.1" - resolved "https://registry.yarnpkg.com/stdout-stream/-/stdout-stream-1.4.1.tgz#5ac174cdd5cd726104aa0c0b2bd83815d8d535de" - integrity sha512-j4emi03KXqJWcIeF8eIXkjMFN1Cmb8gUlDYGeBALLPo5qdyTfA9bOtl8m33lRoC+vFMkP3gl0WsDr6+gzxbbTA== - dependencies: - readable-stream "^2.0.1" - -stealthy-require@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/stealthy-require/-/stealthy-require-1.1.1.tgz#35b09875b4ff49f26a777e509b3090a3226bf24b" - integrity sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks= - -stream-browserify@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.1.tgz#66266ee5f9bdb9940a4e4514cafb43bb71e5c9db" - integrity sha1-ZiZu5fm9uZQKTkUUyvtDu3Hlyds= - dependencies: - inherits "~2.0.1" - readable-stream "^2.0.2" - -stream-each@^1.1.0: - version "1.2.3" - resolved "https://registry.yarnpkg.com/stream-each/-/stream-each-1.2.3.tgz#ebe27a0c389b04fbcc233642952e10731afa9bae" - integrity sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw== - dependencies: - end-of-stream "^1.1.0" - stream-shift "^1.0.0" - -stream-http@^2.7.2: - version "2.8.3" - resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.8.3.tgz#b2d242469288a5a27ec4fe8933acf623de6514fc" - integrity sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw== - dependencies: - builtin-status-codes "^3.0.0" - inherits "^2.0.1" - readable-stream "^2.3.6" - to-arraybuffer "^1.0.0" - xtend "^4.0.0" - -stream-shift@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.0.tgz#d5c752825e5367e786f78e18e445ea223a155952" - integrity sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI= - -string-argv@^0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/string-argv/-/string-argv-0.0.2.tgz#dac30408690c21f3c3630a3ff3a05877bdcbd736" - integrity sha1-2sMECGkMIfPDYwo/86BYd73L1zY= - -string-length@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/string-length/-/string-length-2.0.0.tgz#d40dbb686a3ace960c1cffca562bf2c45f8363ed" - integrity sha1-1A27aGo6zpYMHP/KVivyxF+DY+0= - dependencies: - astral-regex "^1.0.0" - strip-ansi "^4.0.0" - -string-width@^1.0.1, string-width@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" - integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= - dependencies: - code-point-at "^1.0.0" - is-fullwidth-code-point "^1.0.0" - strip-ansi "^3.0.0" - -"string-width@^1.0.2 || 2", string-width@^2.0.0, string-width@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" - integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== - dependencies: - is-fullwidth-code-point "^2.0.0" - strip-ansi "^4.0.0" - -string.prototype.trim@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.1.2.tgz#d04de2c89e137f4d7d206f086b5ed2fae6be8cea" - integrity sha1-0E3iyJ4Tf019IG8Ia17S+ua+jOo= - dependencies: - define-properties "^1.1.2" - es-abstract "^1.5.0" - function-bind "^1.0.2" - -string_decoder@^1.0.0, string_decoder@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.2.0.tgz#fe86e738b19544afe70469243b2a1ee9240eae8d" - integrity sha512-6YqyX6ZWEYguAxgZzHGL7SsCeGx3V2TtOTqZz1xSTSWnqsbWwbptafNyvf/ACquZUXV3DANr5BDIwNYe1mN42w== - dependencies: - safe-buffer "~5.1.0" - -string_decoder@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" - integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== - dependencies: - safe-buffer "~5.1.0" - -stringify-object@^3.2.2: - version "3.3.0" - resolved "https://registry.yarnpkg.com/stringify-object/-/stringify-object-3.3.0.tgz#703065aefca19300d3ce88af4f5b3956d7556629" - integrity sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw== - dependencies: - get-own-enumerable-property-symbols "^3.0.0" - is-obj "^1.0.1" - is-regexp "^1.0.0" - -strip-ansi@^3.0.0, strip-ansi@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" - integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= - dependencies: - ansi-regex "^2.0.0" - -strip-ansi@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" - integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8= - dependencies: - ansi-regex "^3.0.0" - -strip-bom@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" - integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= - -strip-bom@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" - integrity sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4= - dependencies: - is-utf8 "^0.2.0" - -strip-eof@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" - integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8= - -strip-indent@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" - integrity sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI= - dependencies: - get-stdin "^4.0.1" - -strip-json-comments@~2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" - integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= - -style-loader@^0.23.1: - version "0.23.1" - resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-0.23.1.tgz#cb9154606f3e771ab6c4ab637026a1049174d925" - integrity sha512-XK+uv9kWwhZMZ1y7mysB+zoihsEj4wneFWAS5qoiLwzW0WzSqMrrsIy+a3zkQJq0ipFtBpX5W3MqyRIBF/WFGg== - dependencies: - loader-utils "^1.1.0" - schema-utils "^1.0.0" - -supports-color@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" - integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= - -supports-color@^3.1.2: - version "3.2.3" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.2.3.tgz#65ac0504b3954171d8a64946b2ae3cbb8a5f54f6" - integrity sha1-ZawFBLOVQXHYpklGsq48u4pfVPY= - dependencies: - has-flag "^1.0.0" - -supports-color@^5.1.0, supports-color@^5.3.0, supports-color@^5.4.0, supports-color@^5.5.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" - integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== - dependencies: - has-flag "^3.0.0" - -symbol-observable@^1.0.3, symbol-observable@^1.1.0, symbol-observable@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.2.0.tgz#c22688aed4eab3cdc2dfeacbb561660560a00804" - integrity sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ== - -symbol-tree@^3.2.2: - version "3.2.2" - resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.2.tgz#ae27db38f660a7ae2e1c3b7d1bc290819b8519e6" - integrity sha1-rifbOPZgp64uHDt9G8KQgZuFGeY= - -tapable@^1.0.0, tapable@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.1.1.tgz#4d297923c5a72a42360de2ab52dadfaaec00018e" - integrity sha512-9I2ydhj8Z9veORCw5PRm4u9uebCn0mcCa6scWoNcbZ6dAtoo2618u9UUzxgmsCOreJpqDDuv61LvwofW7hLcBA== - -tar@^2.0.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.1.tgz#8e4d2a256c0e2185c6b18ad694aec968b83cb1d1" - integrity sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE= - dependencies: - block-stream "*" - fstream "^1.0.2" - inherits "2" - -tar@^4: - version "4.4.8" - resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.8.tgz#b19eec3fde2a96e64666df9fdb40c5ca1bc3747d" - integrity sha512-LzHF64s5chPQQS0IYBn9IN5h3i98c12bo4NCO7e0sGM2llXQ3p2FGC5sdENN4cTW48O915Sh+x+EXx7XW96xYQ== - dependencies: - chownr "^1.1.1" - fs-minipass "^1.2.5" - minipass "^2.3.4" - minizlib "^1.1.1" - mkdirp "^0.5.0" - safe-buffer "^5.1.2" - yallist "^3.0.2" - -terser-webpack-plugin@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.1.0.tgz#cf7c25a1eee25bf121f4a587bb9e004e3f80e528" - integrity sha512-61lV0DSxMAZ8AyZG7/A4a3UPlrbOBo8NIQ4tJzLPAdGOQ+yoNC7l5ijEow27lBAL2humer01KLS6bGIMYQxKoA== - dependencies: - cacache "^11.0.2" - find-cache-dir "^2.0.0" - schema-utils "^1.0.0" - serialize-javascript "^1.4.0" - source-map "^0.6.1" - terser "^3.8.1" - webpack-sources "^1.1.0" - worker-farm "^1.5.2" - -terser@^3.8.1: - version "3.11.0" - resolved "https://registry.yarnpkg.com/terser/-/terser-3.11.0.tgz#60782893e1f4d6788acc696351f40636d0e37af0" - integrity sha512-5iLMdhEPIq3zFWskpmbzmKwMQixKmTYwY3Ox9pjtSklBLnHiuQ0GKJLhL1HSYtyffHM3/lDIFBnb82m9D7ewwQ== - dependencies: - commander "~2.17.1" - source-map "~0.6.1" - source-map-support "~0.5.6" - -test-exclude@^4.2.1: - version "4.2.3" - resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-4.2.3.tgz#a9a5e64474e4398339245a0a769ad7c2f4a97c20" - integrity sha512-SYbXgY64PT+4GAL2ocI3HwPa4Q4TBKm0cwAVeKOt/Aoc0gSpNRjJX8w0pA1LMKZ3LBmd8pYBqApFNQLII9kavA== - dependencies: - arrify "^1.0.1" - micromatch "^2.3.11" - object-assign "^4.1.0" - read-pkg-up "^1.0.1" - require-main-filename "^1.0.1" - -throat@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/throat/-/throat-4.1.0.tgz#89037cbc92c56ab18926e6ba4cbb200e15672a6a" - integrity sha1-iQN8vJLFarGJJua6TLsgDhVnKmo= - -through2@^2.0.0: - version "2.0.5" - resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" - integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== - dependencies: - readable-stream "~2.3.6" - xtend "~4.0.1" - -thunky@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/thunky/-/thunky-1.0.3.tgz#f5df732453407b09191dae73e2a8cc73f381a826" - integrity sha512-YwT8pjmNcAXBZqrubu22P4FYsh2D4dxRmnWBOL8Jk8bUcRUtc5326kx32tuTmFDAZtLOGEVNl8POAR8j896Iow== - -timers-browserify@^2.0.4: - version "2.0.10" - resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.10.tgz#1d28e3d2aadf1d5a5996c4e9f95601cd053480ae" - integrity sha512-YvC1SV1XdOUaL6gx5CoGroT3Gu49pK9+TZ38ErPldOWW4j49GI1HKs9DV+KGq/w6y+LZ72W1c8cKz2vzY+qpzg== - dependencies: - setimmediate "^1.0.4" - -tmpl@1.0.x: - version "1.0.4" - resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.4.tgz#23640dd7b42d00433911140820e5cf440e521dd1" - integrity sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE= - -to-arraybuffer@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43" - integrity sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M= - -to-fast-properties@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" - integrity sha1-uDVx+k2MJbguIxsG46MFXeTKGkc= - -to-object-path@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" - integrity sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68= - dependencies: - kind-of "^3.0.2" - -to-regex-range@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" - integrity sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg= - dependencies: - is-number "^3.0.0" - repeat-string "^1.6.1" - -to-regex@^3.0.1, to-regex@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" - integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== - dependencies: - define-property "^2.0.2" - extend-shallow "^3.0.2" - regex-not "^1.0.2" - safe-regex "^1.1.0" - -tough-cookie@>=2.3.3, tough-cookie@^2.3.4: - version "2.5.0" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" - integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g== - dependencies: - psl "^1.1.28" - punycode "^2.1.1" - -tough-cookie@~2.4.3: - version "2.4.3" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.4.3.tgz#53f36da3f47783b0925afa06ff9f3b165280f781" - integrity sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ== - dependencies: - psl "^1.1.24" - punycode "^1.4.1" - -tr46@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-1.0.1.tgz#a8b13fd6bfd2489519674ccde55ba3693b706d09" - integrity sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk= - dependencies: - punycode "^2.1.0" - -trim-newlines@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" - integrity sha1-WIeWa7WCpFA6QetST301ARgVphM= - -trim-right@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" - integrity sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM= - -"true-case-path@^1.0.2": - version "1.0.3" - resolved "https://registry.yarnpkg.com/true-case-path/-/true-case-path-1.0.3.tgz#f813b5a8c86b40da59606722b144e3225799f47d" - integrity sha512-m6s2OdQe5wgpFMC+pAJ+q9djG82O2jcHPOI6RNg1yy9rCYR+WD6Nbpl32fDpfC56nirdRy+opFa/Vk7HYhqaew== - dependencies: - glob "^7.1.2" - -ts-loader@^5.3.1: - version "5.3.1" - resolved "https://registry.yarnpkg.com/ts-loader/-/ts-loader-5.3.1.tgz#70614c8ec4354a9c8b89c9f97b2becb7a98a3980" - integrity sha512-fDDgpBH3SR8xlt2MasLdz3Yy611PQ/UY/KGyo7TgXhTRU/6sS8uGG0nJYnU1OdFBNKcoYbId1UTNaAOUn+i41g== - dependencies: - chalk "^2.3.0" - enhanced-resolve "^4.0.0" - loader-utils "^1.0.2" - micromatch "^3.1.4" - semver "^5.0.1" - -tslib@1.9.0: - version "1.9.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.0.tgz#e37a86fda8cbbaf23a057f473c9f4dc64e5fc2e8" - integrity sha512-f/qGG2tUkrISBlQZEjEqoZ3B2+npJjIf04H1wuAv9iA8i04Icp+61KRXxFdha22670NJopsZCIjhC3SnjPRKrQ== - -tslib@^1.7.1, tslib@^1.8.0, tslib@^1.8.1, tslib@^1.9.0, tslib@^1.9.3: - version "1.9.3" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.3.tgz#d7e4dd79245d85428c4d7e4822a79917954ca286" - integrity sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ== - -tslint-config-prettier@^1.17.0: - version "1.17.0" - resolved "https://registry.yarnpkg.com/tslint-config-prettier/-/tslint-config-prettier-1.17.0.tgz#946ed6117f98f3659a65848279156d87628c33dc" - integrity sha512-NKWNkThwqE4Snn4Cm6SZB7lV5RMDDFsBwz6fWUkTxOKGjMx8ycOHnjIbhn7dZd5XmssW3CwqUjlANR6EhP9YQw== - -tslint-config-standard@^8.0.1: - version "8.0.1" - resolved "https://registry.yarnpkg.com/tslint-config-standard/-/tslint-config-standard-8.0.1.tgz#e4dd3128e84b0e34b51990b68715a641f2b417e4" - integrity sha512-OWG+NblgjQlVuUS/Dmq3ax2v5QDZwRx4L0kEuDi7qFY9UI6RJhhNfoCV1qI4el8Fw1c5a5BTrjQJP0/jhGXY/Q== - dependencies: - tslint-eslint-rules "^5.3.1" - -tslint-eslint-rules@^5.3.1: - version "5.4.0" - resolved "https://registry.yarnpkg.com/tslint-eslint-rules/-/tslint-eslint-rules-5.4.0.tgz#e488cc9181bf193fe5cd7bfca213a7695f1737b5" - integrity sha512-WlSXE+J2vY/VPgIcqQuijMQiel+UtmXS+4nvK4ZzlDiqBfXse8FAvkNnTcYhnQyOTW5KFM+uRRGXxYhFpuBc6w== - dependencies: - doctrine "0.7.2" - tslib "1.9.0" - tsutils "^3.0.0" - -tslint-plugin-prettier@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/tslint-plugin-prettier/-/tslint-plugin-prettier-2.0.1.tgz#95b6a3b766622ffc44375825d7760225c50c3680" - integrity sha512-4FX9JIx/1rKHIPJNfMb+ooX1gPk5Vg3vNi7+dyFYpLO+O57F4g+b/fo1+W/G0SUOkBLHB/YKScxjX/P+7ZT/Tw== - dependencies: - eslint-plugin-prettier "^2.2.0" - lines-and-columns "^1.1.6" - tslib "^1.7.1" - -tslint@^5.11.0: - version "5.11.0" - resolved "https://registry.yarnpkg.com/tslint/-/tslint-5.11.0.tgz#98f30c02eae3cde7006201e4c33cb08b48581eed" - integrity sha1-mPMMAurjzecAYgHkwzywi0hYHu0= - dependencies: - babel-code-frame "^6.22.0" - builtin-modules "^1.1.1" - chalk "^2.3.0" - commander "^2.12.1" - diff "^3.2.0" - glob "^7.1.1" - js-yaml "^3.7.0" - minimatch "^3.0.4" - resolve "^1.3.2" - semver "^5.3.0" - tslib "^1.8.0" - tsutils "^2.27.2" - -tsutils@^2.27.2: - version "2.29.0" - resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-2.29.0.tgz#32b488501467acbedd4b85498673a0812aca0b99" - integrity sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA== - dependencies: - tslib "^1.8.1" - -tsutils@^3.0.0: - version "3.5.2" - resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.5.2.tgz#6fd3c2d5a731e83bb21b070a173ec0faf3a8f6d3" - integrity sha512-qIlklNuI/1Dzfm+G+kJV5gg3gimZIX5haYtIVQe7qGyKd7eu8T1t1DY6pz4Sc2CGXAj9s1izycctm9Zfl9sRuQ== - dependencies: - tslib "^1.8.1" - -tty-browserify@0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" - integrity sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY= - -tunnel-agent@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" - integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= - dependencies: - safe-buffer "^5.0.1" - -tweetnacl@^0.14.3, tweetnacl@~0.14.0: - version "0.14.5" - resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" - integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= - -type-check@~0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" - integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= - dependencies: - prelude-ls "~1.1.2" - -type-is@~1.6.16: - version "1.6.16" - resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.16.tgz#f89ce341541c672b25ee7ae3c73dee3b2be50194" - integrity sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q== - dependencies: - media-typer "0.3.0" - mime-types "~2.1.18" - -typedarray@^0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" - integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= - -typescript@^3.2.1: - version "3.2.2" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.2.2.tgz#fe8101c46aa123f8353523ebdcf5730c2ae493e5" - integrity sha512-VCj5UiSyHBjwfYacmDuc/NOk4QQixbE+Wn7MFJuS0nRuPQbof132Pw4u53dm264O8LPc2MVsc7RJNml5szurkg== - -ua-parser-js@^0.7.18: - version "0.7.19" - resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.19.tgz#94151be4c0a7fb1d001af7022fdaca4642659e4b" - integrity sha512-T3PVJ6uz8i0HzPxOF9SWzWAlfN/DavlpQqepn22xgve/5QecC+XMCAtmUNnY7C9StehaV6exjUCI801lOI7QlQ== - -uglify-js@^3.1.4: - version "3.4.9" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.4.9.tgz#af02f180c1207d76432e473ed24a28f4a782bae3" - integrity sha512-8CJsbKOtEbnJsTyv6LE6m6ZKniqMiFWmm9sRbopbkGs3gMPPfd3Fh8iIA4Ykv5MgaTbqHr4BaoGLJLZNhsrW1Q== - dependencies: - commander "~2.17.1" - source-map "~0.6.1" - -underscore@~1.4.4: - version "1.4.4" - resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.4.4.tgz#61a6a32010622afa07963bf325203cf12239d604" - integrity sha1-YaajIBBiKvoHljvzJSA88SI51gQ= - -union-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.0.tgz#5c71c34cb5bad5dcebe3ea0cd08207ba5aa1aea4" - integrity sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ= - dependencies: - arr-union "^3.1.0" - get-value "^2.0.6" - is-extendable "^0.1.1" - set-value "^0.4.3" - -unique-filename@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230" - integrity sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ== - dependencies: - unique-slug "^2.0.0" - -unique-slug@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.1.tgz#5e9edc6d1ce8fb264db18a507ef9bd8544451ca6" - integrity sha512-n9cU6+gITaVu7VGj1Z8feKMmfAjEAQGhwD9fE3zvpRRa0wEIx8ODYkVGfSc94M2OX00tUFV8wH3zYbm1I8mxFg== - dependencies: - imurmurhash "^0.1.4" - -universalify@^0.1.0: - version "0.1.2" - resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" - integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== - -unpipe@1.0.0, unpipe@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" - integrity sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw= - -unset-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" - integrity sha1-g3aHP30jNRef+x5vw6jtDfyKtVk= - dependencies: - has-value "^0.3.1" - isobject "^3.0.0" - -upath@^1.0.5: - version "1.1.0" - resolved "https://registry.yarnpkg.com/upath/-/upath-1.1.0.tgz#35256597e46a581db4793d0ce47fa9aebfc9fabd" - integrity sha512-bzpH/oBhoS/QI/YtbkqCg6VEiPYjSZtrHQM6/QnJS6OL9pKUFLqb3aFh4Scvwm45+7iAgiMkLhSbaZxUqmrprw== - -uri-js@^4.2.2: - version "4.2.2" - resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" - integrity sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ== - dependencies: - punycode "^2.1.0" - -urix@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" - integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= - -url-parse@^1.4.3: - version "1.4.4" - resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.4.4.tgz#cac1556e95faa0303691fec5cf9d5a1bc34648f8" - integrity sha512-/92DTTorg4JjktLNLe6GPS2/RvAd/RGr6LuktmWSMLEOa6rjnlrFXNgSbSmkNvCoL2T028A0a1JaJLzRMlFoHg== - dependencies: - querystringify "^2.0.0" - requires-port "^1.0.0" - -url@^0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" - integrity sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE= - dependencies: - punycode "1.3.2" - querystring "0.2.0" - -use@^3.1.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" - integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== - -util-deprecate@^1.0.1, util-deprecate@~1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" - integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= - -util.promisify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.0.tgz#440f7165a459c9a16dc145eb8e72f35687097030" - integrity sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA== - dependencies: - define-properties "^1.1.2" - object.getownpropertydescriptors "^2.0.3" - -util@0.10.3: - version "0.10.3" - resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9" - integrity sha1-evsa/lCAUkZInj23/g7TeTNqwPk= - dependencies: - inherits "2.0.1" - -util@^0.10.3: - version "0.10.4" - resolved "https://registry.yarnpkg.com/util/-/util-0.10.4.tgz#3aa0125bfe668a4672de58857d3ace27ecb76901" - integrity sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A== - dependencies: - inherits "2.0.3" - -utils-merge@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" - integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= - -uuid@^3.0.1, uuid@^3.3.2: - version "3.3.2" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131" - integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA== - -v8-compile-cache@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.0.2.tgz#a428b28bb26790734c4fc8bc9fa106fccebf6a6c" - integrity sha512-1wFuMUIM16MDJRCrpbpuEPTUGmM5QMUg0cr3KFwra2XgOgFcPGDQHDh3CszSCD2Zewc/dh/pamNEW8CbfDebUw== - -validate-npm-package-license@^3.0.1: - version "3.0.4" - resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" - integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== - dependencies: - spdx-correct "^3.0.0" - spdx-expression-parse "^3.0.0" - -value-equal@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/value-equal/-/value-equal-0.4.0.tgz#c5bdd2f54ee093c04839d71ce2e4758a6890abc7" - integrity sha512-x+cYdNnaA3CxvMaTX0INdTCN8m8aF2uY9BvEqmxuYp8bL09cs/kWVQPVGcA35fMktdOsP69IgU7wFj/61dJHEw== - -vary@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" - integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= - -verror@1.10.0: - version "1.10.0" - resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" - integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA= - dependencies: - assert-plus "^1.0.0" - core-util-is "1.0.2" - extsprintf "^1.2.0" - -vm-browserify@0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-0.0.4.tgz#5d7ea45bbef9e4a6ff65f95438e0a87c357d5a73" - integrity sha1-XX6kW7755Kb/ZflUOOCofDV9WnM= - dependencies: - indexof "0.0.1" - -w3c-hr-time@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.1.tgz#82ac2bff63d950ea9e3189a58a65625fedf19045" - integrity sha1-gqwr/2PZUOqeMYmlimViX+3xkEU= - dependencies: - browser-process-hrtime "^0.1.2" - -walker@~1.0.5: - version "1.0.7" - resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.7.tgz#2f7f9b8fd10d677262b18a884e28d19618e028fb" - integrity sha1-L3+bj9ENZ3JisYqITijRlhjgKPs= - dependencies: - makeerror "1.0.x" - -warning@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/warning/-/warning-3.0.0.tgz#32e5377cb572de4ab04753bdf8821c01ed605b7c" - integrity sha1-MuU3fLVy3kqwR1O9+IIcAe1gW3w= - dependencies: - loose-envify "^1.0.0" - -warning@^4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/warning/-/warning-4.0.2.tgz#aa6876480872116fa3e11d434b0d0d8d91e44607" - integrity sha512-wbTp09q/9C+jJn4KKJfJfoS6VleK/Dti0yqWSm6KMvJ4MRCXFQNapHuJXutJIrWV0Cf4AhTdeIe4qdKHR1+Hug== - dependencies: - loose-envify "^1.0.0" - -watch@~0.18.0: - version "0.18.0" - resolved "https://registry.yarnpkg.com/watch/-/watch-0.18.0.tgz#28095476c6df7c90c963138990c0a5423eb4b986" - integrity sha1-KAlUdsbffJDJYxOJkMClQj60uYY= - dependencies: - exec-sh "^0.2.0" - minimist "^1.2.0" - -watchpack@^1.5.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.6.0.tgz#4bc12c2ebe8aa277a71f1d3f14d685c7b446cd00" - integrity sha512-i6dHe3EyLjMmDlU1/bGQpEw25XSjkJULPuAVKCbNRefQVq48yXKUpwg538F7AZTf9kyr57zj++pQFltUa5H7yA== - dependencies: - chokidar "^2.0.2" - graceful-fs "^4.1.2" - neo-async "^2.5.0" - -wbuf@^1.1.0, wbuf@^1.7.2: - version "1.7.3" - resolved "https://registry.yarnpkg.com/wbuf/-/wbuf-1.7.3.tgz#c1d8d149316d3ea852848895cb6a0bfe887b87df" - integrity sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA== - dependencies: - minimalistic-assert "^1.0.0" - -webidl-conversions@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" - integrity sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg== - -webpack-cli@^3.1.0: - version "3.1.2" - resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-3.1.2.tgz#17d7e01b77f89f884a2bbf9db545f0f6a648e746" - integrity sha512-Cnqo7CeqeSvC6PTdts+dywNi5CRlIPbLx1AoUPK2T6vC1YAugMG3IOoO9DmEscd+Dghw7uRlnzV1KwOe5IrtgQ== - dependencies: - chalk "^2.4.1" - cross-spawn "^6.0.5" - enhanced-resolve "^4.1.0" - global-modules-path "^2.3.0" - import-local "^2.0.0" - interpret "^1.1.0" - loader-utils "^1.1.0" - supports-color "^5.5.0" - v8-compile-cache "^2.0.2" - yargs "^12.0.2" - -webpack-dev-middleware@3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-3.4.0.tgz#1132fecc9026fd90f0ecedac5cbff75d1fb45890" - integrity sha512-Q9Iyc0X9dP9bAsYskAVJ/hmIZZQwf/3Sy4xCAZgL5cUkjZmUZLt4l5HpbST/Pdgjn3u6pE7u5OdGd1apgzRujA== - dependencies: - memory-fs "~0.4.1" - mime "^2.3.1" - range-parser "^1.0.3" - webpack-log "^2.0.0" - -webpack-dev-server@^3.1.8: - version "3.1.10" - resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-3.1.10.tgz#507411bee727ee8d2fdffdc621b66a64ab3dea2b" - integrity sha512-RqOAVjfqZJtQcB0LmrzJ5y4Jp78lv9CK0MZ1YJDTaTmedMZ9PU9FLMQNrMCfVu8hHzaVLVOJKBlGEHMN10z+ww== - dependencies: - ansi-html "0.0.7" - bonjour "^3.5.0" - chokidar "^2.0.0" - compression "^1.5.2" - connect-history-api-fallback "^1.3.0" - debug "^3.1.0" - del "^3.0.0" - express "^4.16.2" - html-entities "^1.2.0" - http-proxy-middleware "~0.18.0" - import-local "^2.0.0" - internal-ip "^3.0.1" - ip "^1.1.5" - killable "^1.0.0" - loglevel "^1.4.1" - opn "^5.1.0" - portfinder "^1.0.9" - schema-utils "^1.0.0" - selfsigned "^1.9.1" - serve-index "^1.7.2" - sockjs "0.3.19" - sockjs-client "1.3.0" - spdy "^3.4.1" - strip-ansi "^3.0.0" - supports-color "^5.1.0" - webpack-dev-middleware "3.4.0" - webpack-log "^2.0.0" - yargs "12.0.2" - -webpack-log@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/webpack-log/-/webpack-log-2.0.0.tgz#5b7928e0637593f119d32f6227c1e0ac31e1b47f" - integrity sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg== - dependencies: - ansi-colors "^3.0.0" - uuid "^3.3.2" - -webpack-manifest-plugin@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/webpack-manifest-plugin/-/webpack-manifest-plugin-2.0.4.tgz#e4ca2999b09557716b8ba4475fb79fab5986f0cd" - integrity sha512-nejhOHexXDBKQOj/5v5IZSfCeTO3x1Dt1RZEcGfBSul891X/eLIcIVH31gwxPDdsi2Z8LKKFGpM4w9+oTBOSCg== - dependencies: - fs-extra "^7.0.0" - lodash ">=3.5 <5" - tapable "^1.0.0" - -webpack-sources@^1.1.0, webpack-sources@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.3.0.tgz#2a28dcb9f1f45fe960d8f1493252b5ee6530fa85" - integrity sha512-OiVgSrbGu7NEnEvQJJgdSFPl2qWKkWq5lHMhgiToIiN9w34EBnjYzSYs+VbL5KoYiLNtFFa7BZIKxRED3I32pA== - dependencies: - source-list-map "^2.0.0" - source-map "~0.6.1" - -webpack@^4.19.1: - version "4.27.1" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.27.1.tgz#5f2e2db446d2266376fa15d7d2277a1a9c2e12bb" - integrity sha512-WArHiLvHrlfyRM8i7f+2SFbr/XbQ0bXqTkPF8JpHOzub5482Y3wx7rEO8stuLGOKOgZJcqcisLhD7LrM/+fVMw== - dependencies: - "@webassemblyjs/ast" "1.7.11" - "@webassemblyjs/helper-module-context" "1.7.11" - "@webassemblyjs/wasm-edit" "1.7.11" - "@webassemblyjs/wasm-parser" "1.7.11" - acorn "^5.6.2" - acorn-dynamic-import "^3.0.0" - ajv "^6.1.0" - ajv-keywords "^3.1.0" - chrome-trace-event "^1.0.0" - enhanced-resolve "^4.1.0" - eslint-scope "^4.0.0" - json-parse-better-errors "^1.0.2" - loader-runner "^2.3.0" - loader-utils "^1.1.0" - memory-fs "~0.4.1" - micromatch "^3.1.8" - mkdirp "~0.5.0" - neo-async "^2.5.0" - node-libs-browser "^2.0.0" - schema-utils "^0.4.4" - tapable "^1.1.0" - terser-webpack-plugin "^1.1.0" - watchpack "^1.5.0" - webpack-sources "^1.3.0" - -websocket-driver@>=0.5.1: - version "0.7.0" - resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.7.0.tgz#0caf9d2d755d93aee049d4bdd0d3fe2cca2a24eb" - integrity sha1-DK+dLXVdk67gSdS90NP+LMoqJOs= - dependencies: - http-parser-js ">=0.4.0" - websocket-extensions ">=0.1.1" - -websocket-extensions@>=0.1.1: - version "0.1.3" - resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.3.tgz#5d2ff22977003ec687a4b87073dfbbac146ccf29" - integrity sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg== - -whatwg-encoding@^1.0.1, whatwg-encoding@^1.0.3: - version "1.0.5" - resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0" - integrity sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw== - dependencies: - iconv-lite "0.4.24" - -whatwg-fetch@>=0.10.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.0.0.tgz#fc804e458cc460009b1a2b966bc8817d2578aefb" - integrity sha512-9GSJUgz1D4MfyKU7KRqwOjXCXTqWdFNvEr7eUBYchQiVc744mqK/MzXPNR2WsPkmkOa4ywfg8C2n8h+13Bey1Q== - -whatwg-mimetype@^2.1.0, whatwg-mimetype@^2.2.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf" - integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g== - -whatwg-url@^6.4.1: - version "6.5.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-6.5.0.tgz#f2df02bff176fd65070df74ad5ccbb5a199965a8" - integrity sha512-rhRZRqx/TLJQWUpQ6bmrt2UV4f0HCQ463yQuONJqC6fO2VoEb1pTYddbe59SkYq87aoM5A3bdhMZiUiVws+fzQ== - dependencies: - lodash.sortby "^4.7.0" - tr46 "^1.0.1" - webidl-conversions "^4.0.2" - -whatwg-url@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-7.0.0.tgz#fde926fa54a599f3adf82dff25a9f7be02dc6edd" - integrity sha512-37GeVSIJ3kn1JgKyjiYNmSLP1yzbpb29jdmwBSgkD9h40/hyrR/OifpVUndji3tmwGgD8qpw7iQu3RSbCrBpsQ== - dependencies: - lodash.sortby "^4.7.0" - tr46 "^1.0.1" - webidl-conversions "^4.0.2" - -which-module@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f" - integrity sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8= - -which-module@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" - integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= - -which@1, which@^1.2.10, which@^1.2.12, which@^1.2.9, which@^1.3.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" - integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== - dependencies: - isexe "^2.0.0" - -wide-align@^1.1.0: - version "1.1.3" - resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" - integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA== - dependencies: - string-width "^1.0.2 || 2" - -wordwrap@~0.0.2: - version "0.0.3" - resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107" - integrity sha1-o9XabNXAvAAI03I0u68b7WMFkQc= - -wordwrap@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" - integrity sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus= - -worker-farm@^1.5.2: - version "1.6.0" - resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.6.0.tgz#aecc405976fab5a95526180846f0dba288f3a4a0" - integrity sha512-6w+3tHbM87WnSWnENBUvA2pxJPLhQUg5LKwUQHq3r+XPhIM+Gh2R5ycbwPCyuGbNg+lPgdcnQUhuC02kJCvffQ== - dependencies: - errno "~0.1.7" - -wrap-ansi@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" - integrity sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU= - dependencies: - string-width "^1.0.1" - strip-ansi "^3.0.1" - -wrap-ansi@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-3.0.1.tgz#288a04d87eda5c286e060dfe8f135ce8d007f8ba" - integrity sha1-KIoE2H7aXChuBg3+jxNc6NAH+Lo= - dependencies: - string-width "^2.1.1" - strip-ansi "^4.0.0" - -wrappy@1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= - -write-file-atomic@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.3.0.tgz#1ff61575c2e2a4e8e510d6fa4e243cce183999ab" - integrity sha512-xuPeK4OdjWqtfi59ylvVL0Yn35SF3zgcAcv7rBPFHVaEapaDr4GdGgm3j7ckTwH9wHL7fGmgfAnb0+THrHb8tA== - dependencies: - graceful-fs "^4.1.11" - imurmurhash "^0.1.4" - signal-exit "^3.0.2" - -ws@^5.2.0: - version "5.2.2" - resolved "https://registry.yarnpkg.com/ws/-/ws-5.2.2.tgz#dffef14866b8e8dc9133582514d1befaf96e980f" - integrity sha512-jaHFD6PFv6UgoIVda6qZllptQsMlDEJkTQcybzzXDYM1XO9Y8em691FGMPmM46WGyLU4z9KMgQN+qrux/nhlHA== - dependencies: - async-limiter "~1.0.0" - -xml-name-validator@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" - integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== - -xregexp@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/xregexp/-/xregexp-4.0.0.tgz#e698189de49dd2a18cc5687b05e17c8e43943020" - integrity sha512-PHyM+sQouu7xspQQwELlGwwd05mXUFqwFYfqPO0cC7x4fxyHnnuetmQr6CjJiafIDoH4MogHb9dOoJzR/Y4rFg== - -xtend@^4.0.0, xtend@~4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" - integrity sha1-pcbVMr5lbiPbgg77lDofBJmNY68= - -y18n@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41" - integrity sha1-bRX7qITAhnnA136I53WegR4H+kE= - -"y18n@^3.2.1 || ^4.0.0", y18n@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" - integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w== - -yallist@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" - integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= - -yallist@^3.0.0, yallist@^3.0.2: - version "3.0.3" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.0.3.tgz#b4b049e314be545e3ce802236d6cd22cd91c3de9" - integrity sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A== - -yargs-parser@^10.1.0: - version "10.1.0" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-10.1.0.tgz#7202265b89f7e9e9f2e5765e0fe735a905edbaa8" - integrity sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ== - dependencies: - camelcase "^4.1.0" - -yargs-parser@^11.1.1: - version "11.1.1" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-11.1.1.tgz#879a0865973bca9f6bab5cbdf3b1c67ec7d3bcf4" - integrity sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ== - dependencies: - camelcase "^5.0.0" - decamelize "^1.2.0" - -yargs-parser@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.0.tgz#275ecf0d7ffe05c77e64e7c86e4cd94bf0e1228a" - integrity sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo= - dependencies: - camelcase "^3.0.0" - -yargs-parser@^9.0.2: - version "9.0.2" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-9.0.2.tgz#9ccf6a43460fe4ed40a9bb68f48d43b8a68cc077" - integrity sha1-nM9qQ0YP5O1Aqbto9I1DuKaMwHc= - dependencies: - camelcase "^4.1.0" - -yargs@12.0.2: - version "12.0.2" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-12.0.2.tgz#fe58234369392af33ecbef53819171eff0f5aadc" - integrity sha512-e7SkEx6N6SIZ5c5H22RTZae61qtn3PYUE8JYbBFlK9sYmh3DMQ6E5ygtaG/2BW0JZi4WGgTR2IV5ChqlqrDGVQ== - dependencies: - cliui "^4.0.0" - decamelize "^2.0.0" - find-up "^3.0.0" - get-caller-file "^1.0.1" - os-locale "^3.0.0" - require-directory "^2.1.1" - require-main-filename "^1.0.1" - set-blocking "^2.0.0" - string-width "^2.0.0" - which-module "^2.0.0" - y18n "^3.2.1 || ^4.0.0" - yargs-parser "^10.1.0" - -yargs@^11.0.0: - version "11.1.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-11.1.0.tgz#90b869934ed6e871115ea2ff58b03f4724ed2d77" - integrity sha512-NwW69J42EsCSanF8kyn5upxvjp5ds+t3+udGBeTbFnERA+lF541DDpMawzo4z6W/QrzNM18D+BPMiOBibnFV5A== - dependencies: - cliui "^4.0.0" - decamelize "^1.1.1" - find-up "^2.1.0" - get-caller-file "^1.0.1" - os-locale "^2.0.0" - require-directory "^2.1.1" - require-main-filename "^1.0.1" - set-blocking "^2.0.0" - string-width "^2.0.0" - which-module "^2.0.0" - y18n "^3.2.1" - yargs-parser "^9.0.2" - -yargs@^12.0.2: - version "12.0.5" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-12.0.5.tgz#05f5997b609647b64f66b81e3b4b10a368e7ad13" - integrity sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw== - dependencies: - cliui "^4.0.0" - decamelize "^1.2.0" - find-up "^3.0.0" - get-caller-file "^1.0.1" - os-locale "^3.0.0" - require-directory "^2.1.1" - require-main-filename "^1.0.1" - set-blocking "^2.0.0" - string-width "^2.0.0" - which-module "^2.0.0" - y18n "^3.2.1 || ^4.0.0" - yargs-parser "^11.1.1" - -yargs@^7.0.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-7.1.0.tgz#6ba318eb16961727f5d284f8ea003e8d6154d0c8" - integrity sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg= - dependencies: - camelcase "^3.0.0" - cliui "^3.2.0" - decamelize "^1.1.1" - get-caller-file "^1.0.1" - os-locale "^1.4.0" - read-pkg-up "^1.0.1" - require-directory "^2.1.1" - require-main-filename "^1.0.1" - set-blocking "^2.0.0" - string-width "^1.0.2" - which-module "^1.0.0" - y18n "^3.2.1" - yargs-parser "^5.0.0" From b925ff74ff7cf365375cd7202ee6d0971ce21dcc Mon Sep 17 00:00:00 2001 From: YUKI SHIROTA <39118010+rechtburg@users.noreply.github.com> Date: Tue, 15 Oct 2019 12:28:03 +0900 Subject: [PATCH 05/16] [Refactor] pages (#16) * transform to styled-components * rename Capital --- .../components/index/user-only.tsx | 8 ++-- .../pages/users/CommonStyleComponents.ts | 6 +++ .../components/pages/users/HistroyPage.tsx | 31 +++++++++++++ .../{project-page.tsx => ProjectPage.tsx} | 5 ++- .../components/pages/users/SettingPage.tsx | 25 +++++++++++ .../components/pages/users/history-page.tsx | 44 ------------------- .../components/pages/users/mypage.tsx | 9 ++-- .../components/pages/users/setting-page.tsx | 41 ----------------- src/stylesheets/page_container.scss | 5 --- 9 files changed, 74 insertions(+), 100 deletions(-) create mode 100644 src/javascripts/components/pages/users/CommonStyleComponents.ts create mode 100644 src/javascripts/components/pages/users/HistroyPage.tsx rename src/javascripts/components/pages/users/{project-page.tsx => ProjectPage.tsx} (97%) create mode 100644 src/javascripts/components/pages/users/SettingPage.tsx delete mode 100644 src/javascripts/components/pages/users/history-page.tsx delete mode 100644 src/javascripts/components/pages/users/setting-page.tsx diff --git a/src/javascripts/components/index/user-only.tsx b/src/javascripts/components/index/user-only.tsx index 4da4954..7924043 100644 --- a/src/javascripts/components/index/user-only.tsx +++ b/src/javascripts/components/index/user-only.tsx @@ -1,10 +1,10 @@ import * as React from "react"; import { Route, Switch, Redirect } from "react-router-dom"; import { connect } from "react-redux"; -import Mypage from "../pages/users/mypage"; -import ProjectPage from "../pages/users/project-page"; -import HistoryPage from "../pages/users/history-page"; -import SettingPage from "../pages/users/setting-page"; +import Mypage from "../pages/users/MyPage"; +import ProjectPage from "../pages/users/ProjectPage"; +import HistoryPage from "../pages/users/HistroyPage"; +import SettingPage from "../pages/users/SettingPage"; interface Props { currentUser: any; diff --git a/src/javascripts/components/pages/users/CommonStyleComponents.ts b/src/javascripts/components/pages/users/CommonStyleComponents.ts new file mode 100644 index 0000000..dfac41d --- /dev/null +++ b/src/javascripts/components/pages/users/CommonStyleComponents.ts @@ -0,0 +1,6 @@ +import styled from "@emotion/styled"; + +export const Root = styled.div` + width: 100%; + height: 100%; +`; diff --git a/src/javascripts/components/pages/users/HistroyPage.tsx b/src/javascripts/components/pages/users/HistroyPage.tsx new file mode 100644 index 0000000..7502a81 --- /dev/null +++ b/src/javascripts/components/pages/users/HistroyPage.tsx @@ -0,0 +1,31 @@ +import * as React from "react"; +import { connect } from "react-redux"; + +import { Root } from "./CommonStyleComponents"; +import Header from "../../organisms/header"; +import HistoryPageMain from "../../organisms/history-page-main"; +import Footer from "../../organisms/footer"; + +interface Props { + currentUser: any; + location: any; + history: any; + match: any; +} + +const HistoryPage: React.FC = ({ + currentUser, + location, + history, + match +}) => ( + +
    + +