From e22f74d4744a14cc9ad7133924b69a33d310f440 Mon Sep 17 00:00:00 2001 From: Willane Paiva Date: Tue, 25 Jun 2019 18:00:14 -0300 Subject: [PATCH 01/25] Add initial menu --- package.json | 1 + src/components/Menu/index.tsx | 21 +++ src/components/Menu/style.scss | 7 + src/components/MenuItem/index.tsx | 13 ++ src/components/MenuItem/style.scss | 6 + src/stories/Menu.stories.tsx | 15 ++ src/stories/index.stories.tsx | 23 --- yarn.lock | 262 +++++++++++++++++++++++++++-- 8 files changed, 312 insertions(+), 36 deletions(-) create mode 100644 src/components/Menu/index.tsx create mode 100644 src/components/Menu/style.scss create mode 100644 src/components/MenuItem/index.tsx create mode 100644 src/components/MenuItem/style.scss create mode 100644 src/stories/Menu.stories.tsx delete mode 100644 src/stories/index.stories.tsx diff --git a/package.json b/package.json index bddfab5..734d2d5 100644 --- a/package.json +++ b/package.json @@ -50,6 +50,7 @@ "css-loader": "^3.0.0", "html-webpack-plugin": "^3.2.0", "image-webpack-loader": "^5.0.0", + "node-sass": "^4.12.0", "prettier": "1.18.2", "style-loader": "^0.23.1", "tslint": "^5.18.0", diff --git a/src/components/Menu/index.tsx b/src/components/Menu/index.tsx new file mode 100644 index 0000000..3df31fd --- /dev/null +++ b/src/components/Menu/index.tsx @@ -0,0 +1,21 @@ +import React, { FunctionComponent } from 'react'; + +import MenuItem from '../MenuItem'; + +import './style.scss'; + +interface OwnProps { + items: string[]; +} + +const Menu: FunctionComponent = ({ items }) => { + return ( +
+ {items.map(itemname => ( + + ))} +
+ ); +}; + +export default Menu; diff --git a/src/components/Menu/style.scss b/src/components/Menu/style.scss new file mode 100644 index 0000000..98223e6 --- /dev/null +++ b/src/components/Menu/style.scss @@ -0,0 +1,7 @@ +.menu-items { + display: flex; + justify-content: space-between; + align-items: center; + width: 50%; + min-width: 400px; +} diff --git a/src/components/MenuItem/index.tsx b/src/components/MenuItem/index.tsx new file mode 100644 index 0000000..85a292d --- /dev/null +++ b/src/components/MenuItem/index.tsx @@ -0,0 +1,13 @@ +import React, { FunctionComponent } from 'react'; + +import './style.scss'; + +interface OwnProps { + name: string; +} + +const MenuItem: FunctionComponent = ({ name }) => ( +

{name}

+); + +export default MenuItem; diff --git a/src/components/MenuItem/style.scss b/src/components/MenuItem/style.scss new file mode 100644 index 0000000..f5f44f0 --- /dev/null +++ b/src/components/MenuItem/style.scss @@ -0,0 +1,6 @@ +$gray: #4f5c70; +.menu-item { + color: $gray; + padding: 20px; + font-size: 18px; +} diff --git a/src/stories/Menu.stories.tsx b/src/stories/Menu.stories.tsx new file mode 100644 index 0000000..96169d9 --- /dev/null +++ b/src/stories/Menu.stories.tsx @@ -0,0 +1,15 @@ +import React from 'react'; + +import { storiesOf } from '@storybook/react'; + +import MenuItem from '../components/MenuItem'; +import Menu from '../components/Menu'; + +const menuStories = storiesOf('Menu', module); + +menuStories + .add('Menu Item', () => ) + .add('Menu', () => { + const items = ['Home', 'Page 1', 'Page 2', 'Page 3']; + return ; + }); diff --git a/src/stories/index.stories.tsx b/src/stories/index.stories.tsx deleted file mode 100644 index a43ac98..0000000 --- a/src/stories/index.stories.tsx +++ /dev/null @@ -1,23 +0,0 @@ -import React from 'react'; - -import { storiesOf } from '@storybook/react'; -import { action } from '@storybook/addon-actions'; -import { linkTo } from '@storybook/addon-links'; - -import { Button, Welcome } from '@storybook/react/demo'; - -storiesOf('Welcome', module).add('to Storybook', () => ( - -)); - -storiesOf('Button', module) - .add('with text', () => ( - - )) - .add('with some emoji', () => ( - - )); diff --git a/yarn.lock b/yarn.lock index 2616c9f..0e4614e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2281,6 +2281,11 @@ alphanum-sort@^1.0.0: resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" integrity sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM= +amdefine@>=0.0.4: + version "1.0.1" + resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" + integrity sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU= + ansi-align@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-3.0.0.tgz#b536b371cf687caaef236c18d3e21fe3797467cb" @@ -2550,6 +2555,11 @@ async-each@^1.0.1: resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.3.tgz#b727dbf87d7651602f06f4d4ac387f47d91b0cbf" integrity sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ== +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" @@ -3119,6 +3129,13 @@ bl@^1.0.0: readable-stream "^2.3.5" safe-buffer "^5.1.1" +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.3.5, bluebird@^3.5.5: version "3.5.5" resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.5.tgz#a8d0afd73251effbbd5fe384a77d73003c17a71f" @@ -3524,6 +3541,11 @@ camelcase@^2.0.0: 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" @@ -3600,7 +3622,7 @@ chalk@2.4.2, chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.4. escape-string-regexp "^1.0.5" supports-color "^5.3.0" -chalk@^1.0.0, chalk@^1.1.3: +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= @@ -3757,6 +3779,15 @@ clipboard@^2.0.0: select "^1.1.2" tiny-emitter "^2.0.0" +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" @@ -4200,6 +4231,14 @@ cross-spawn@6.0.5, cross-spawn@^6.0.0, cross-spawn@^6.0.5: shebang-command "^1.2.0" which "^1.2.9" +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" @@ -4527,7 +4566,7 @@ debug@^4.0.1, debug@^4.1.0, debug@^4.1.1: dependencies: ms "^2.1.1" -decamelize@^1.1.2, decamelize@^1.2.0: +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= @@ -6092,6 +6131,16 @@ fsevents@^1.2.7: nan "^2.12.1" node-pre-gyp "^0.12.0" +fstream@^1.0.0, fstream@^1.0.12: + version "1.0.12" + resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.12.tgz#4e8ba8ee2d48be4f7d0de505455548eae5932045" + integrity sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg== + 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.1: version "1.1.1" resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" @@ -6130,6 +6179,13 @@ gauge@~2.7.3: 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" @@ -6212,7 +6268,7 @@ glob-to-regexp@^0.3.0: resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz#8c5a1494d2066c570cc3bfe4496175acc4d502ab" integrity sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs= -glob@^7.0.0, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4: +glob@^7.0.0, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@~7.1.1: version "7.1.4" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.4.tgz#aa608a2f6c577ad357e1ae5a5c26d9a8d1969255" integrity sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A== @@ -6306,6 +6362,15 @@ globby@^6.1.0: 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" + good-listener@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/good-listener/-/good-listener-1.2.2.tgz#d53b30cdf9313dffb7dc9a0d477096aa6d145c50" @@ -6949,6 +7014,11 @@ imurmurhash@^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" @@ -6984,7 +7054,7 @@ inherits@2.0.1: resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" integrity sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE= -inherits@2.0.4: +inherits@2.0.4, inherits@~2.0.0: version "2.0.4" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== @@ -7079,6 +7149,11 @@ invariant@2.2.4, invariant@^2.2.2, invariant@^2.2.3, invariant@^2.2.4: 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" @@ -7958,6 +8033,11 @@ jest@24.7.1: import-local "^2.0.0" jest-cli "^24.7.1" +js-base64@^2.1.8: + version "2.5.1" + resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.5.1.tgz#1efa39ef2c5f7980bb1784ade4a8af2de3291121" + integrity sha512-M7kLczedRMYX4L8Mdh4MzyAMM9O5osx+4FcOQuTvr3A9F2D9S5JXheN0ewNbrvK2UatkTRhL5ejGmGSjNMiZuw== + js-levenshtein@^1.1.3: version "1.1.6" resolved "https://registry.yarnpkg.com/js-levenshtein/-/js-levenshtein-1.1.6.tgz#c6cee58eb3550372df8deb85fad5ce66ce01d59d" @@ -8241,6 +8321,13 @@ lazy-universal-dotenv@^3.0.0: dotenv "^8.0.0" dotenv-expand "^5.1.0" +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" @@ -8427,7 +8514,7 @@ lodash.uniq@^4.5.0: resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= -"lodash@>=3.5 <5", lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.3, lodash@^4.17.5: +"lodash@>=3.5 <5", lodash@^4.0.0, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.3, lodash@^4.17.5, 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== @@ -8632,7 +8719,7 @@ memory-fs@^0.4.0, memory-fs@^0.4.1, memory-fs@~0.4.1: errno "^0.1.3" readable-stream "^2.0.1" -meow@^3.3.0: +meow@^3.3.0, meow@^3.7.0: version "3.7.0" resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" integrity sha1-cstmi0JSKCkKu/qFaJJYcwioAfs= @@ -8794,7 +8881,7 @@ minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^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.4, minimatch@^3.0.2, minimatch@^3.0.4: +minimatch@3.0.4, minimatch@^3.0.2, 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== @@ -8863,7 +8950,7 @@ mixin-object@^2.0.1: for-in "^0.1.3" is-extendable "^0.1.1" -mkdirp@0.5.1, mkdirp@0.5.x, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0, mkdirp@~0.5.1: +mkdirp@0.5.1, mkdirp@0.5.x, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0, mkdirp@~0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= @@ -8924,6 +9011,11 @@ nan@^2.12.1: resolved "https://registry.yarnpkg.com/nan/-/nan-2.13.2.tgz#f51dc7ae66ba7d5d55e1e6d4d8092e802c9aefe7" integrity sha512-TghvYc72wlMGMVMluVo9WRJc0mB8KxxF/gZ4YYFy7V2ZQX9l7rgbPg7vjS9mt6U5HXODVFVI2bOduCzwOMv/lw== +nan@^2.13.2: + version "2.14.0" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.0.tgz#7818f722027b2459a86f0295d434d1fc2336c52c" + integrity sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg== + nanomatch@^1.2.9: version "1.2.13" resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" @@ -9002,6 +9094,24 @@ node-forge@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" @@ -9082,6 +9192,36 @@ node-releases@^1.1.23: dependencies: semver "^5.3.0" +node-sass@^4.12.0: + version "4.12.0" + resolved "https://registry.yarnpkg.com/node-sass/-/node-sass-4.12.0.tgz#0914f531932380114a30cc5fa4fa63233a25f017" + integrity sha512-A1Iv4oN+Iel6EPv77/HddXErL2a+gZ4uBeZUy+a8O35CFYTXhgA8MgLCWBtwpGZdCvTvQ9d+bQxX/QC36GDPpQ== + 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 "^4.17.11" + meow "^3.7.0" + mkdirp "^0.5.1" + nan "^2.13.2" + 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" + +"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" @@ -9169,7 +9309,7 @@ npm-run-path@^2.0.0: dependencies: path-key "^2.0.0" -npmlog@^4.0.2, npmlog@^4.1.2: +"npmlog@0 || 1 || 2 || 3 || 4", npmlog@^4.0.0, npmlog@^4.0.2, npmlog@^4.1.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== @@ -9405,6 +9545,13 @@ os-homedir@^1.0.0: 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@^3.0.0, os-locale@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-3.1.0.tgz#a802a6ee17f24c10483ab9935719cef4ed16bf1a" @@ -9419,7 +9566,7 @@ os-tmpdir@^1.0.0, os-tmpdir@~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.1.4: +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== @@ -11634,7 +11781,7 @@ rgba-regex@^1.0.0: resolved "https://registry.yarnpkg.com/rgba-regex/-/rgba-regex-1.0.0.tgz#43374e2e2ca0968b0ef1523460b7d730ff22eeb3" integrity sha1-QzdOLiyglosO8VI0YLfXMP8i7rM= -rimraf@2.6.3, rimraf@^2.2.8, rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.2, rimraf@^2.6.3: +rimraf@2, rimraf@2.6.3, rimraf@^2.2.8, rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.2, rimraf@^2.6.3: version "2.6.3" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA== @@ -11712,6 +11859,16 @@ sane@^4.0.3: minimist "^1.1.1" walker "~1.0.5" +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" @@ -11758,6 +11915,14 @@ scrollbarwidth@^0.1.3: resolved "https://registry.yarnpkg.com/scrollbarwidth/-/scrollbarwidth-0.1.3.tgz#1b0de64e288c38c427f4a01fe00a462a04b94fdf" integrity sha1-Gw3mTiiMOMQn9KAf4ApGKgS5T98= +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" + seek-bzip@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/seek-bzip/-/seek-bzip-1.0.5.tgz#cfe917cb3d274bcffac792758af53173eb1fabdc" @@ -11814,6 +11979,11 @@ semver@^6.1.1: resolved "https://registry.yarnpkg.com/semver/-/semver-6.1.2.tgz#079960381376a3db62eb2edc8a3bfb10c7cfe318" integrity sha512-z4PqiCpomGtWj8633oeAdXm1Kn1W++3T8epkZYnwiVgIYIJ0QHszhInYSJTYxebByQH7KVCEAn8R9duzZW2PhQ== +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" @@ -12171,6 +12341,13 @@ source-map-url@^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.0, 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" @@ -12306,6 +12483,13 @@ statuses@~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.1: version "1.1.1" resolved "https://registry.yarnpkg.com/stealthy-require/-/stealthy-require-1.1.1.tgz#35b09875b4ff49f26a777e509b3090a3226bf24b" @@ -12361,7 +12545,7 @@ string-length@^2.0.0: astral-regex "^1.0.0" strip-ansi "^4.0.0" -string-width@^1.0.1: +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= @@ -12612,6 +12796,15 @@ tar-stream@^1.5.2: to-buffer "^1.1.1" xtend "^4.0.0" +tar@^2.0.0: + version "2.2.2" + resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.2.tgz#0ca8848562c7299b8b446ff6a4d60cdbb23edc40" + integrity sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA== + dependencies: + block-stream "*" + fstream "^1.0.12" + inherits "2" + tar@^4: version "4.4.8" resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.8.tgz#b19eec3fde2a96e64666df9fdb40c5ca1bc3747d" @@ -12878,6 +13071,13 @@ trough@^1.0.0: resolved "https://registry.yarnpkg.com/trough/-/trough-1.0.3.tgz#e29bd1614c6458d44869fc28b255ab7857ef7c24" integrity sha512-fwkLWH+DimvA4YCy+/nvJd61nWQQ2liO/nF/RjkTpiOGi+zxZzVkhb1mvbHIIW4b/8nDsYI8uTmAlc0nNkRMOw== +"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-pnp@1.1.2, ts-pnp@^1.0.0, ts-pnp@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/ts-pnp/-/ts-pnp-1.1.2.tgz#be8e4bfce5d00f0f58e0666a82260c34a57af552" @@ -13643,12 +13843,17 @@ whatwg-url@^7.0.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.2.14, which@^1.2.9, which@^1.3.0, which@^1.3.1: +which@1, which@^1.2.14, which@^1.2.9, which@^1.3.0, which@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== @@ -13905,6 +14110,11 @@ xtend@^4.0.0, xtend@^4.0.1, xtend@~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" @@ -13943,6 +14153,13 @@ yargs-parser@^13.1.0: 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@12.0.2: version "12.0.2" resolved "https://registry.yarnpkg.com/yargs/-/yargs-12.0.2.tgz#fe58234369392af33ecbef53819171eff0f5aadc" @@ -13996,6 +14213,25 @@ yargs@13.2.4: y18n "^4.0.0" yargs-parser "^13.1.0" +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" + yauzl@^2.4.2: version "2.10.0" resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.10.0.tgz#c7eb17c93e112cb1086fa6d8e51fb0667b79a5f9" From f8be7598489da947121476e1234e36cf5b89f95a Mon Sep 17 00:00:00 2001 From: Willane Paiva Date: Wed, 26 Jun 2019 08:36:19 -0300 Subject: [PATCH 02/25] Modify menu styles --- src/components/Menu/index.tsx | 12 ++++-------- src/components/Menu/style.scss | 5 +++-- src/components/MenuItem/style.scss | 10 +++++++++- 3 files changed, 16 insertions(+), 11 deletions(-) diff --git a/src/components/Menu/index.tsx b/src/components/Menu/index.tsx index 3df31fd..805037c 100644 --- a/src/components/Menu/index.tsx +++ b/src/components/Menu/index.tsx @@ -4,16 +4,12 @@ import MenuItem from '../MenuItem'; import './style.scss'; -interface OwnProps { - items: string[]; -} - -const Menu: FunctionComponent = ({ items }) => { +const Menu: FunctionComponent = () => { return (
- {items.map(itemname => ( - - ))} + + +
); }; diff --git a/src/components/Menu/style.scss b/src/components/Menu/style.scss index 98223e6..ee8187b 100644 --- a/src/components/Menu/style.scss +++ b/src/components/Menu/style.scss @@ -2,6 +2,7 @@ display: flex; justify-content: space-between; align-items: center; - width: 50%; - min-width: 400px; + width: 40%; + min-width: 300px; + font-weight: bold; } diff --git a/src/components/MenuItem/style.scss b/src/components/MenuItem/style.scss index f5f44f0..debf485 100644 --- a/src/components/MenuItem/style.scss +++ b/src/components/MenuItem/style.scss @@ -1,6 +1,14 @@ $gray: #4f5c70; +$bg-hover: #526077; +$color-hover: #fff; + .menu-item { color: $gray; - padding: 20px; + padding: 10px; font-size: 18px; + &:hover { + background: $bg-hover; + color: $color-hover; + cursor: pointer; + } } From 7034d32f5ba37157e4c168ab58a9d5ba27369d2c Mon Sep 17 00:00:00 2001 From: Willane Paiva Date: Wed, 26 Jun 2019 08:39:14 -0300 Subject: [PATCH 03/25] Add Social Media button --- assets/images/github.png | Bin 0 -> 4268 bytes modules.d.ts | 1 + src/components/SocialMedia/index.tsx | 14 ++++++++++++++ src/components/SocialMedia/style.scss | 7 +++++++ src/stories/Menu.stories.tsx | 12 ++++++++---- 5 files changed, 30 insertions(+), 4 deletions(-) create mode 100644 assets/images/github.png create mode 100644 modules.d.ts create mode 100644 src/components/SocialMedia/index.tsx create mode 100644 src/components/SocialMedia/style.scss diff --git a/assets/images/github.png b/assets/images/github.png new file mode 100644 index 0000000000000000000000000000000000000000..ea6ff545a246caa64074ba809bbc86fcb8589071 GIT binary patch literal 4268 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 XLyRvu{aX3a{{tgEGu={c*U0|?Dtn-9 literal 0 HcmV?d00001 diff --git a/modules.d.ts b/modules.d.ts new file mode 100644 index 0000000..5c8ecd0 --- /dev/null +++ b/modules.d.ts @@ -0,0 +1 @@ +declare module '@storybook/react'; diff --git a/src/components/SocialMedia/index.tsx b/src/components/SocialMedia/index.tsx new file mode 100644 index 0000000..5b2d4f9 --- /dev/null +++ b/src/components/SocialMedia/index.tsx @@ -0,0 +1,14 @@ +import React, { FunctionComponent } from 'react'; + +import './style.scss'; + +interface OwnProps { + path: string; + desc: string; +} + +const SocialMedia: FunctionComponent = ({ path, desc }) => ( + {desc} +); + +export default SocialMedia; diff --git a/src/components/SocialMedia/style.scss b/src/components/SocialMedia/style.scss new file mode 100644 index 0000000..e63e475 --- /dev/null +++ b/src/components/SocialMedia/style.scss @@ -0,0 +1,7 @@ +.social-media { + width: 35px; + border-radius: 5px; + &:hover { + cursor: pointer; + } +} diff --git a/src/stories/Menu.stories.tsx b/src/stories/Menu.stories.tsx index 96169d9..12f6569 100644 --- a/src/stories/Menu.stories.tsx +++ b/src/stories/Menu.stories.tsx @@ -1,15 +1,19 @@ +/// import React from 'react'; import { storiesOf } from '@storybook/react'; import MenuItem from '../components/MenuItem'; import Menu from '../components/Menu'; +import SocialMedia from '../components/SocialMedia'; + +import ghLogo from '../../assets/images/github.png'; const menuStories = storiesOf('Menu', module); menuStories .add('Menu Item', () => ) - .add('Menu', () => { - const items = ['Home', 'Page 1', 'Page 2', 'Page 3']; - return ; - }); + .add('Menu', () => ) + .add('Social Media Icon', () => ( + + )); From d267412f4ea84001a8dc355de633ca362409707d Mon Sep 17 00:00:00 2001 From: Willane Paiva Date: Wed, 26 Jun 2019 23:09:50 -0300 Subject: [PATCH 04/25] Add section component --- src/components/Section/index.tsx | 17 +++++++++++++++++ src/components/Section/style.scss | 9 +++++++++ 2 files changed, 26 insertions(+) create mode 100644 src/components/Section/index.tsx create mode 100644 src/components/Section/style.scss diff --git a/src/components/Section/index.tsx b/src/components/Section/index.tsx new file mode 100644 index 0000000..488fb82 --- /dev/null +++ b/src/components/Section/index.tsx @@ -0,0 +1,17 @@ +import React, { FunctionComponent } from 'react'; + +import './style.scss'; + +interface OwnProps { + title: string; + description: string; +} + +const Section: FunctionComponent = ({ title, description }) => ( +
+

{title}

+

{description}

+
+); + +export default Section; diff --git a/src/components/Section/style.scss b/src/components/Section/style.scss new file mode 100644 index 0000000..73d4911 --- /dev/null +++ b/src/components/Section/style.scss @@ -0,0 +1,9 @@ +.section { + padding: 20px; + .section-title { + font-size: 25px; + } + .section-description { + text-align: left; + } +} From 3e6732d0b520e200f04f81b6c07a80cf1644334a Mon Sep 17 00:00:00 2001 From: Willane Paiva Date: Wed, 26 Jun 2019 23:10:00 -0300 Subject: [PATCH 05/25] Move icons to utils --- src/utils/icons.js | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 src/utils/icons.js diff --git a/src/utils/icons.js b/src/utils/icons.js new file mode 100644 index 0000000..e8c045b --- /dev/null +++ b/src/utils/icons.js @@ -0,0 +1,3 @@ +import LogoGithub from '../../assets/images/github.png'; + +export { LogoGithub }; From 15833cae91005298c7fdb57b9651f9283fc0da9f Mon Sep 17 00:00:00 2001 From: Willane Paiva Date: Wed, 26 Jun 2019 23:10:21 -0300 Subject: [PATCH 06/25] Fix import for github icon --- src/stories/Menu.stories.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/stories/Menu.stories.tsx b/src/stories/Menu.stories.tsx index 12f6569..e3d0297 100644 --- a/src/stories/Menu.stories.tsx +++ b/src/stories/Menu.stories.tsx @@ -7,7 +7,7 @@ import MenuItem from '../components/MenuItem'; import Menu from '../components/Menu'; import SocialMedia from '../components/SocialMedia'; -import ghLogo from '../../assets/images/github.png'; +import { LogoGithub } from '../utils/icons'; const menuStories = storiesOf('Menu', module); @@ -15,5 +15,5 @@ menuStories .add('Menu Item', () => ) .add('Menu', () => ) .add('Social Media Icon', () => ( - + )); From 48771ddfd39706061283471cee248c2049ab1f78 Mon Sep 17 00:00:00 2001 From: Willane Paiva Date: Wed, 26 Jun 2019 23:11:21 -0300 Subject: [PATCH 07/25] Add details as home sections --- src/containers/Details/index.tsx | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 src/containers/Details/index.tsx diff --git a/src/containers/Details/index.tsx b/src/containers/Details/index.tsx new file mode 100644 index 0000000..d57b520 --- /dev/null +++ b/src/containers/Details/index.tsx @@ -0,0 +1,12 @@ +import React from 'react'; +import Section from '../../components/Section'; + +const Details = () => ( + <> +
+
+
+ +); + +export default Details; From 52d73b6456c08a73a530f95f081cf6942a313fb2 Mon Sep 17 00:00:00 2001 From: Willane Paiva Date: Wed, 26 Jun 2019 23:11:52 -0300 Subject: [PATCH 08/25] Add stories for the body components --- src/stories/Body.stories.tsx | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 src/stories/Body.stories.tsx diff --git a/src/stories/Body.stories.tsx b/src/stories/Body.stories.tsx new file mode 100644 index 0000000..672b845 --- /dev/null +++ b/src/stories/Body.stories.tsx @@ -0,0 +1,10 @@ +import React from 'react' + +import { storiesOf } from '@storybook/react'; + +import Section from '../components/Section'; +import Details from '../containers/Details' + +const BodyStories = storiesOf('Body', module) + +BodyStories.add('Section' ,() =>
).add('Details', () =>
); \ No newline at end of file From cab4750f9b35599ef3ba00e6da203af8d0e2a9fb Mon Sep 17 00:00:00 2001 From: Willane Paiva Date: Sat, 29 Jun 2019 13:53:18 -0300 Subject: [PATCH 09/25] Modify social media component to accept link and title --- src/components/SocialMedia/index.tsx | 15 +++++++++++++-- src/components/SocialMedia/style.scss | 11 +++++++---- 2 files changed, 20 insertions(+), 6 deletions(-) diff --git a/src/components/SocialMedia/index.tsx b/src/components/SocialMedia/index.tsx index 5b2d4f9..7b89243 100644 --- a/src/components/SocialMedia/index.tsx +++ b/src/components/SocialMedia/index.tsx @@ -5,10 +5,21 @@ import './style.scss'; interface OwnProps { path: string; desc: string; + link: string; + title: string; } -const SocialMedia: FunctionComponent = ({ path, desc }) => ( - {desc} +const SocialMedia: FunctionComponent = ({ + path, + desc, + link, + title, +}) => ( +
+ + {desc} + +
); export default SocialMedia; diff --git a/src/components/SocialMedia/style.scss b/src/components/SocialMedia/style.scss index e63e475..31cbc7c 100644 --- a/src/components/SocialMedia/style.scss +++ b/src/components/SocialMedia/style.scss @@ -1,7 +1,10 @@ .social-media { - width: 35px; - border-radius: 5px; - &:hover { - cursor: pointer; + max-width: 50px; + img { + width: 35px; + height: 35px; + &:hover { + cursor: pointer; + } } } From 1b8fd534fe9f8f38a12a25f0a9a7a9c3c85a91ac Mon Sep 17 00:00:00 2001 From: Willane Paiva Date: Sat, 29 Jun 2019 13:53:38 -0300 Subject: [PATCH 10/25] Modify webpack to work with sass --- webpack.config.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/webpack.config.js b/webpack.config.js index 7ce6c32..825c01a 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -21,8 +21,8 @@ module.exports = { }, }, { - test: /\.css$/, - use: ['style-loader', 'css-loader'], + test: /\.(c|sc|sa)ss$/, + use: ['style-loader', 'css-loader', 'sass-loader'], }, { test: /\.(ico|jpg|jpeg|png|gif|eot|otf|webp|svg|ttf|woff|woff2|txt)(\?.*)?$/i, From 36fdfade5f90f473f6d70f342a85cf746d4d7396 Mon Sep 17 00:00:00 2001 From: Willane Paiva Date: Sat, 29 Jun 2019 13:53:55 -0300 Subject: [PATCH 11/25] Install sass-loader --- package.json | 1 + yarn.lock | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index 734d2d5..3ac4d40 100644 --- a/package.json +++ b/package.json @@ -52,6 +52,7 @@ "image-webpack-loader": "^5.0.0", "node-sass": "^4.12.0", "prettier": "1.18.2", + "sass-loader": "^7.1.0", "style-loader": "^0.23.1", "tslint": "^5.18.0", "tslint-config-prettier": "^1.18.0", diff --git a/yarn.lock b/yarn.lock index 0e4614e..5d09702 100644 --- a/yarn.lock +++ b/yarn.lock @@ -11869,7 +11869,7 @@ sass-graph@^2.2.4: scss-tokenizer "^0.2.3" yargs "^7.0.0" -sass-loader@7.1.0: +sass-loader@7.1.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== From 9759320aed5da48dd02139d1ab942ea7348f599e Mon Sep 17 00:00:00 2001 From: Willane Paiva Date: Sat, 29 Jun 2019 17:29:19 -0300 Subject: [PATCH 12/25] Remove Details Container and update to Home container --- src/App.tsx | 3 ++- src/containers/Details/index.tsx | 12 ------------ src/stories/Body.stories.tsx | 4 ++-- 3 files changed, 4 insertions(+), 15 deletions(-) delete mode 100644 src/containers/Details/index.tsx diff --git a/src/App.tsx b/src/App.tsx index 1c0c65f..c831e00 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -1,11 +1,12 @@ import React from 'react'; import './App.css'; +import Home from './containers/Home'; function App() { return (
- content +
); } diff --git a/src/containers/Details/index.tsx b/src/containers/Details/index.tsx deleted file mode 100644 index d57b520..0000000 --- a/src/containers/Details/index.tsx +++ /dev/null @@ -1,12 +0,0 @@ -import React from 'react'; -import Section from '../../components/Section'; - -const Details = () => ( - <> -
-
-
- -); - -export default Details; diff --git a/src/stories/Body.stories.tsx b/src/stories/Body.stories.tsx index 672b845..e716d1b 100644 --- a/src/stories/Body.stories.tsx +++ b/src/stories/Body.stories.tsx @@ -3,8 +3,8 @@ import React from 'react' import { storiesOf } from '@storybook/react'; import Section from '../components/Section'; -import Details from '../containers/Details' +import Home from '../containers/Home'; const BodyStories = storiesOf('Body', module) -BodyStories.add('Section' ,() =>
).add('Details', () =>
); \ No newline at end of file +BodyStories.add('Section' ,() =>
).add('Home Sections', () => ); \ No newline at end of file From f97f9e427d01d1a259219d1d5b64a271b81ec4a9 Mon Sep 17 00:00:00 2001 From: Willane Paiva Date: Sat, 29 Jun 2019 17:29:28 -0300 Subject: [PATCH 13/25] Add initial Home --- src/containers/Home/index.tsx | 82 ++++++++++++++++++++++++++++++++++ src/containers/Home/style.scss | 45 +++++++++++++++++++ 2 files changed, 127 insertions(+) create mode 100644 src/containers/Home/index.tsx create mode 100644 src/containers/Home/style.scss diff --git a/src/containers/Home/index.tsx b/src/containers/Home/index.tsx new file mode 100644 index 0000000..ddfc85e --- /dev/null +++ b/src/containers/Home/index.tsx @@ -0,0 +1,82 @@ +import React from 'react'; + +import Section from '../../components/Section'; +import Menu from '../../components/Menu'; +import SocialMedia from '../../components/SocialMedia'; + +import { LogoGithub } from '../../utils/icons'; + +import './style.scss'; + +const Home = () => ( +
+
+
+
+ Logo +

React Pure Loaders

+
+ +
+ + +
+ +
+
+

+ React Pure Loaders is a package that disponibilizes loaders for your + Project. Those loaders are used as components, using color and a + loading variables as properties. +

+

+ The component expects the to receive the color as a string with the + hexadecimal code and the loading as a boolean, that is true by + default. +

+
+
+
+ getting start instructions +
+
+ +
+
+

+ To Contributing to this project, you can access the{' '} + + repository + {' '} + and check the source code. To contribute to this website,{' '} + + {' '} + check this repository + + . +

+

License MIT.

+
+
+
+
+

Footer

+
+
+); + +export default Home; diff --git a/src/containers/Home/style.scss b/src/containers/Home/style.scss new file mode 100644 index 0000000..cde3887 --- /dev/null +++ b/src/containers/Home/style.scss @@ -0,0 +1,45 @@ +.header-home { + display: flex; + justify-content: space-between; + padding: 0.5% 2%; + height: 25px; + + &.menu { + width: 40%; + padding: 0; + &.logo { + width: 50%; + p { + font-size: 20px; + font-weight: bold; + align-self: center; + } + } + } +} + +.section-home { + width: 80%; + padding: 2% 10%; + display: flex; + flex-direction: column; + justify-content: center; + .section-home-children { + code { + background-color: #dde3ed; + padding: 5px; + border-radius: 5px; + } + a { + text-decoration: none; + } + } +} + +.footer-home { + display: flex; + flex-direction: column; + p { + text-align: center; + } +} From 304e99fe6d8ab41d85e34919e3ae34c3ec7e1992 Mon Sep 17 00:00:00 2001 From: Willane Paiva Date: Sat, 29 Jun 2019 17:29:53 -0300 Subject: [PATCH 14/25] Modify Menu to add anchor tag --- src/components/Menu/index.tsx | 9 ++++++++- src/components/Menu/style.scss | 14 ++++++++++++-- 2 files changed, 20 insertions(+), 3 deletions(-) diff --git a/src/components/Menu/index.tsx b/src/components/Menu/index.tsx index 805037c..ec27be1 100644 --- a/src/components/Menu/index.tsx +++ b/src/components/Menu/index.tsx @@ -8,7 +8,14 @@ const Menu: FunctionComponent = () => { return (
- + + + +
); diff --git a/src/components/Menu/style.scss b/src/components/Menu/style.scss index ee8187b..54aa775 100644 --- a/src/components/Menu/style.scss +++ b/src/components/Menu/style.scss @@ -1,8 +1,18 @@ .menu-items { display: flex; justify-content: space-between; + align-self: center; align-items: center; - width: 40%; + width: 20%; min-width: 300px; - font-weight: bold; + height: 40px; + a { + text-decoration: none; + } + @media screen and (max-width: 350px) { + min-width: 50%; + } + @media screen and (min-width: 350px) and (max-width: 576px) { + min-width: 40%; + } } From eeca8747b6e3425c941f74943dd704e82493ce06 Mon Sep 17 00:00:00 2001 From: Willane Paiva Date: Sat, 29 Jun 2019 17:30:22 -0300 Subject: [PATCH 15/25] Add responsiveness to menu item --- src/components/MenuItem/style.scss | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/components/MenuItem/style.scss b/src/components/MenuItem/style.scss index debf485..240163d 100644 --- a/src/components/MenuItem/style.scss +++ b/src/components/MenuItem/style.scss @@ -1,4 +1,4 @@ -$gray: #4f5c70; +$gray: #191b1f; $bg-hover: #526077; $color-hover: #fff; @@ -11,4 +11,10 @@ $color-hover: #fff; color: $color-hover; cursor: pointer; } + @media screen and (max-width: 350px) { + font-size: 12px; + } + @media screen and (min-width: 350px) and (max-width: 500px) { + font-size: 14px; + } } From 2888168628749228e7281dd58c6d49acd9af46ee Mon Sep 17 00:00:00 2001 From: Willane Paiva Date: Sat, 29 Jun 2019 17:30:45 -0300 Subject: [PATCH 16/25] Modify Section to accept optional children and description --- src/components/Section/index.tsx | 12 +++++++++--- src/components/Section/style.scss | 9 +++++---- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/src/components/Section/index.tsx b/src/components/Section/index.tsx index 488fb82..aa5ef74 100644 --- a/src/components/Section/index.tsx +++ b/src/components/Section/index.tsx @@ -4,13 +4,19 @@ import './style.scss'; interface OwnProps { title: string; - description: string; + description?: string; + children?: any; } -const Section: FunctionComponent = ({ title, description }) => ( +const Section: FunctionComponent = ({ + title, + description, + children, +}) => (

{title}

-

{description}

+ {description &&

{description}

} + {children}
); diff --git a/src/components/Section/style.scss b/src/components/Section/style.scss index 73d4911..3bcb79f 100644 --- a/src/components/Section/style.scss +++ b/src/components/Section/style.scss @@ -1,9 +1,10 @@ .section { + text-align: left; padding: 20px; .section-title { - font-size: 25px; - } - .section-description { - text-align: left; + font-size: 18px; } + // .section-description { + + // } } From d18d65dc2ba3c5a5029598450cd20e51d6f94ecb Mon Sep 17 00:00:00 2001 From: Willane Paiva Date: Sat, 29 Jun 2019 17:31:03 -0300 Subject: [PATCH 17/25] Add temp image for instructions in getting started --- assets/images/inst.png | Bin 0 -> 36213 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 assets/images/inst.png diff --git a/assets/images/inst.png b/assets/images/inst.png new file mode 100644 index 0000000000000000000000000000000000000000..f248dc4c67d47d2246d1486bef7e4e0437b26c44 GIT binary patch literal 36213 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 z rlrP#s7efW)2gATHl0MQyUBSum>@b`WNc62;f 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 Date: Thu, 4 Jul 2019 08:08:04 -0300 Subject: [PATCH 18/25] Modify hover color for menu item --- src/components/MenuItem/style.scss | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/components/MenuItem/style.scss b/src/components/MenuItem/style.scss index 240163d..262991a 100644 --- a/src/components/MenuItem/style.scss +++ b/src/components/MenuItem/style.scss @@ -1,5 +1,5 @@ $gray: #191b1f; -$bg-hover: #526077; +$bg-hover: #34009a; $color-hover: #fff; .menu-item { @@ -10,6 +10,7 @@ $color-hover: #fff; background: $bg-hover; color: $color-hover; cursor: pointer; + border-radius: 5px; } @media screen and (max-width: 350px) { font-size: 12px; From 009b728a209901c9470f4468bb559c5a3769e053 Mon Sep 17 00:00:00 2001 From: Willane Paiva Date: Thu, 4 Jul 2019 08:08:13 -0300 Subject: [PATCH 19/25] Add logo --- assets/images/logo.png | Bin 0 -> 5068 bytes src/utils/icons.js | 3 ++- 2 files changed, 2 insertions(+), 1 deletion(-) create mode 100644 assets/images/logo.png diff --git a/assets/images/logo.png b/assets/images/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..214968bbb18c834316ae374f9a5b064c01dd8b65 GIT binary patch literal 5068 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 i Date: Thu, 4 Jul 2019 08:08:45 -0300 Subject: [PATCH 20/25] Add logo and modify structure --- src/containers/Home/index.tsx | 9 ++++++--- src/containers/Home/style.scss | 19 ++++++++++++++++--- 2 files changed, 22 insertions(+), 6 deletions(-) diff --git a/src/containers/Home/index.tsx b/src/containers/Home/index.tsx index ddfc85e..079ba21 100644 --- a/src/containers/Home/index.tsx +++ b/src/containers/Home/index.tsx @@ -4,7 +4,7 @@ import Section from '../../components/Section'; import Menu from '../../components/Menu'; import SocialMedia from '../../components/SocialMedia'; -import { LogoGithub } from '../../utils/icons'; +import { LogoGithub, Logo } from '../../utils/icons'; import './style.scss'; @@ -13,8 +13,11 @@ const Home = () => (
- Logo -

React Pure Loaders

+ Logo +

+ React Pure + Loaders +

diff --git a/src/containers/Home/style.scss b/src/containers/Home/style.scss index cde3887..7fc6bd3 100644 --- a/src/containers/Home/style.scss +++ b/src/containers/Home/style.scss @@ -1,18 +1,31 @@ +$blue-logo: #32009f; +$pink-logo: #d80079; + .header-home { display: flex; justify-content: space-between; padding: 0.5% 2%; - height: 25px; + height: 40px; &.menu { width: 40%; padding: 0; &.logo { - width: 50%; - p { + width: 100%; + &.title { font-size: 20px; font-weight: bold; align-self: center; + flex-direction: column; + @media screen and (max-width: 500px) { + font-size: 14px; + } + #span-title-1 { + color: $blue-logo; + } + #span-title-2 { + color: $pink-logo; + } } } } From 43ff71af040f3aeef4548692c124c5af4f05b59f Mon Sep 17 00:00:00 2001 From: Willane Paiva Date: Thu, 4 Jul 2019 10:42:15 -0300 Subject: [PATCH 21/25] Modify style --- src/components/Menu/style.scss | 5 +++-- src/containers/Home/style.scss | 17 ++++++++++++++--- 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/src/components/Menu/style.scss b/src/components/Menu/style.scss index 54aa775..be2ab17 100644 --- a/src/components/Menu/style.scss +++ b/src/components/Menu/style.scss @@ -1,11 +1,11 @@ .menu-items { display: flex; justify-content: space-between; - align-self: center; align-items: center; width: 20%; min-width: 300px; height: 40px; + margin-right: 5%; a { text-decoration: none; } @@ -13,6 +13,7 @@ min-width: 50%; } @media screen and (min-width: 350px) and (max-width: 576px) { - min-width: 40%; + min-width: 50%; + margin-right: 15%; } } diff --git a/src/containers/Home/style.scss b/src/containers/Home/style.scss index 7fc6bd3..dbde519 100644 --- a/src/containers/Home/style.scss +++ b/src/containers/Home/style.scss @@ -4,21 +4,32 @@ $pink-logo: #d80079; .header-home { display: flex; justify-content: space-between; - padding: 0.5% 2%; + padding: 0.5% 10%; height: 40px; - + @media screen and (max-width:500px){ + padding: 1.5% 0; + height: 35px; + } &.menu { - width: 40%; + width: 100%; padding: 0; &.logo { width: 100%; + max-width: 200px; + margin-right: 1%; + @media screen and (max-width:1300px) { + padding: 1% 2%; + } &.title { + min-width: 120px; + max-width: 150px; font-size: 20px; font-weight: bold; align-self: center; flex-direction: column; @media screen and (max-width: 500px) { font-size: 14px; + min-width: 0; } #span-title-1 { color: $blue-logo; From 614b3831dbb8d55f95c06ef6affcd4b31d163d12 Mon Sep 17 00:00:00 2001 From: Willane Paiva Date: Thu, 4 Jul 2019 16:26:55 -0300 Subject: [PATCH 22/25] Refactor the homepage --- modules.d.ts | 2 + package.json | 2 + src/components/ContributingSection/index.tsx | 27 +++++++++ src/components/DescriptionSection/index.tsx | 17 ++++++ .../GettingStartedSection/index.tsx | 24 ++++++++ src/components/Logo/index.tsx | 17 ++++++ src/components/Section/index.tsx | 2 +- src/containers/Home/index.tsx | 55 ++++--------------- src/containers/Home/style.scss | 17 +++++- src/utils/FakeLoader.tsx | 10 ++++ src/utils/code.js | 19 +++++++ src/utils/icons.js | 4 +- yarn.lock | 26 ++++++++- 13 files changed, 170 insertions(+), 52 deletions(-) create mode 100644 src/components/ContributingSection/index.tsx create mode 100644 src/components/DescriptionSection/index.tsx create mode 100644 src/components/GettingStartedSection/index.tsx create mode 100644 src/components/Logo/index.tsx create mode 100644 src/utils/FakeLoader.tsx create mode 100644 src/utils/code.js diff --git a/modules.d.ts b/modules.d.ts index 5c8ecd0..221b245 100644 --- a/modules.d.ts +++ b/modules.d.ts @@ -1 +1,3 @@ declare module '@storybook/react'; +declare module 'markdown-to-jsx'; +declare module 'react-element-to-jsx-string'; diff --git a/package.json b/package.json index 3ac4d40..38bf7fd 100644 --- a/package.json +++ b/package.json @@ -7,6 +7,7 @@ "@types/node": "12.0.10", "@types/react": "16.8.22", "@types/react-dom": "16.8.4", + "markdown-to-jsx": "^6.10.2", "react": "^16.8.6", "react-dom": "^16.8.6", "react-scripts": "3.0.1", @@ -52,6 +53,7 @@ "image-webpack-loader": "^5.0.0", "node-sass": "^4.12.0", "prettier": "1.18.2", + "react-element-to-jsx-string": "^14.0.2", "sass-loader": "^7.1.0", "style-loader": "^0.23.1", "tslint": "^5.18.0", diff --git a/src/components/ContributingSection/index.tsx b/src/components/ContributingSection/index.tsx new file mode 100644 index 0000000..1028282 --- /dev/null +++ b/src/components/ContributingSection/index.tsx @@ -0,0 +1,27 @@ +import React from 'react'; + +const Contributing = () => ( + <> +

+ To Contributing to this project, you can access the{' '} + + repository + {' '} + and check the source code. To contribute to this website,{' '} + + {' '} + check this repository + + . +

+

License MIT.

+ +); + +export default Contributing; diff --git a/src/components/DescriptionSection/index.tsx b/src/components/DescriptionSection/index.tsx new file mode 100644 index 0000000..54b776d --- /dev/null +++ b/src/components/DescriptionSection/index.tsx @@ -0,0 +1,17 @@ +import React from 'react'; + +const Description = () => ( + <> +

+ React Pure Loaders is a package that disponibilizes loaders for your + Project. Those loaders are used as components, using color and a loading + variables as properties. +

+

+ The component expects the to receive the color as a string with the + hexadecimal code and the loading as a boolean, that is true by default. +

+ +); + +export default Description; diff --git a/src/components/GettingStartedSection/index.tsx b/src/components/GettingStartedSection/index.tsx new file mode 100644 index 0000000..3feb7f0 --- /dev/null +++ b/src/components/GettingStartedSection/index.tsx @@ -0,0 +1,24 @@ +import React from 'react'; + +import Markdown from 'markdown-to-jsx'; +import reactElementToJSXString from 'react-element-to-jsx-string'; + +import code from '../../utils/code'; +import BallBeat from '../../utils/FakeLoader'; + +const GettingStarted = () => ( + <> + +

{reactElementToJSXString()}

+

+ As no props are passed, the component will use the default values for the + color and loading state.If you want to personalize,use a string for the + color and a boolean for loading. +

+

+ {reactElementToJSXString()} +

+ +); + +export default GettingStarted; diff --git a/src/components/Logo/index.tsx b/src/components/Logo/index.tsx new file mode 100644 index 0000000..2079ab1 --- /dev/null +++ b/src/components/Logo/index.tsx @@ -0,0 +1,17 @@ +import React, { FunctionComponent } from 'react'; + +interface OwnProps { + image: any; +} + +const Logo: FunctionComponent = ({ image }) => ( +
+ Logo +

+ React Pure + Loaders +

+
+); + +export default Logo; diff --git a/src/components/Section/index.tsx b/src/components/Section/index.tsx index aa5ef74..7a13654 100644 --- a/src/components/Section/index.tsx +++ b/src/components/Section/index.tsx @@ -16,7 +16,7 @@ const Section: FunctionComponent = ({

{title}

{description &&

{description}

} - {children} +
{children}
); diff --git a/src/containers/Home/index.tsx b/src/containers/Home/index.tsx index 079ba21..9dabb74 100644 --- a/src/containers/Home/index.tsx +++ b/src/containers/Home/index.tsx @@ -3,8 +3,13 @@ import React from 'react'; import Section from '../../components/Section'; import Menu from '../../components/Menu'; import SocialMedia from '../../components/SocialMedia'; +import Logo from '../../components/Logo'; -import { LogoGithub, Logo } from '../../utils/icons'; +import Contributing from '../../components/ContributingSection'; +import Description from '../../components/DescriptionSection'; +import GettingStarted from '../../components/GettingStartedSection'; + +import { LogoGithub, LogoImage } from '../../utils/icons'; import './style.scss'; @@ -12,13 +17,7 @@ const Home = () => (
-
- Logo -

- React Pure - Loaders -

-
+
@@ -32,48 +31,14 @@ const Home = () => (
-

- React Pure Loaders is a package that disponibilizes loaders for your - Project. Those loaders are used as components, using color and a - loading variables as properties. -

-

- The component expects the to receive the color as a string with the - hexadecimal code and the loading as a boolean, that is true by - default. -

+
-
- getting start instructions -
+
-
-

- To Contributing to this project, you can access the{' '} - - repository - {' '} - and check the source code. To contribute to this website,{' '} - - {' '} - check this repository - - . -

-

License MIT.

-
+
diff --git a/src/containers/Home/style.scss b/src/containers/Home/style.scss index dbde519..e44ae07 100644 --- a/src/containers/Home/style.scss +++ b/src/containers/Home/style.scss @@ -1,12 +1,25 @@ $blue-logo: #32009f; $pink-logo: #d80079; +$code-bg: #c5cbd4; + +.code-snippet { + background-color: $code-bg; + width: 350px; + padding: 10px; + border-radius: 5px; + font-family: monospace; + @media screen and (max-width: 578px) { + width: 260px; + margin-left: -4px; + } +} .header-home { display: flex; justify-content: space-between; padding: 0.5% 10%; height: 40px; - @media screen and (max-width:500px){ + @media screen and (max-width: 500px) { padding: 1.5% 0; height: 35px; } @@ -17,7 +30,7 @@ $pink-logo: #d80079; width: 100%; max-width: 200px; margin-right: 1%; - @media screen and (max-width:1300px) { + @media screen and (max-width: 1300px) { padding: 1% 2%; } &.title { diff --git a/src/utils/FakeLoader.tsx b/src/utils/FakeLoader.tsx new file mode 100644 index 0000000..b4b8f19 --- /dev/null +++ b/src/utils/FakeLoader.tsx @@ -0,0 +1,10 @@ +import React, { FunctionComponent } from 'react'; + +interface OwnProps { + color?: string; + loading?: boolean; +} + +const BallBeat: FunctionComponent = () =>

; + +export default BallBeat; diff --git a/src/utils/code.js b/src/utils/code.js new file mode 100644 index 0000000..9dd8e7e --- /dev/null +++ b/src/utils/code.js @@ -0,0 +1,19 @@ +const code = `Install into your project using a node package manager. + +Using npm: + +

npm install react-pure-loaders

+ +Using yarn: + +

yarn add react-pure-loaders

+ +Import into the component: + +

import { BallBeat } from 'react-pure-loaders';

+ +Create the component: + +`; + +export default code; diff --git a/src/utils/icons.js b/src/utils/icons.js index 583e9c8..6946e03 100644 --- a/src/utils/icons.js +++ b/src/utils/icons.js @@ -1,4 +1,4 @@ import LogoGithub from '../../assets/images/github.png'; -import Logo from '../../assets/images/logo.png'; +import LogoImage from '../../assets/images/logo.png'; -export { LogoGithub, Logo }; +export { LogoGithub, LogoImage }; diff --git a/yarn.lock b/yarn.lock index 5d09702..9cb350e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6196,6 +6196,11 @@ get-caller-file@^2.0.1: resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== +get-own-enumerable-property-symbols@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-2.0.1.tgz#5c4ad87f2834c4b9b4e84549dc1e0650fb38c24b" + integrity sha512-TtY/sbOemiMKPRUDDanGCSgBYe7Mf0vbRsWnBZ+9yghpZ1MvcpSpuZFjHdEeY/LZjZy0vdLjS77L6HosisFiug== + 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" @@ -7461,7 +7466,7 @@ is-plain-obj@^1.0.0, is-plain-obj@^1.1.0: resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= -is-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4: +is-plain-object@2.0.4, 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== @@ -8668,7 +8673,7 @@ map-visit@^1.0.0: dependencies: object-visit "^1.0.0" -markdown-to-jsx@^6.9.1, markdown-to-jsx@^6.9.3: +markdown-to-jsx@^6.10.2, markdown-to-jsx@^6.9.1, markdown-to-jsx@^6.9.3: version "6.10.2" resolved "https://registry.yarnpkg.com/markdown-to-jsx/-/markdown-to-jsx-6.10.2.tgz#644f602b81d088f10aef1c3674874876146cf38b" integrity sha512-eDCsRobOkbQ4PqCphrxNi/U8geA8DGf52dMP4BrrYsVFyQ2ILFnXIB5sRcIxnRK2nPl8k5hUYdRNRXLlQNYLYg== @@ -11132,6 +11137,14 @@ react-draggable@^3.1.1: classnames "^2.2.5" prop-types "^15.6.0" +react-element-to-jsx-string@^14.0.2: + version "14.0.2" + resolved "https://registry.yarnpkg.com/react-element-to-jsx-string/-/react-element-to-jsx-string-14.0.2.tgz#586d248bb2416855aa6ac3881e18726832c146d2" + integrity sha512-eYcPUg3FJisgAb8q3sSdce8F/xMZD/iFEjMZYnkE3b7gPi5OamGr2Hst/1pE72mzn7//dfYPXb+UqPK2xdSGsg== + dependencies: + is-plain-object "2.0.4" + stringify-object "3.2.2" + react-error-overlay@^5.1.6: version "5.1.6" resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-5.1.6.tgz#0cd73407c5d141f9638ae1e0c63e7b2bf7e9929d" @@ -12614,6 +12627,15 @@ string_decoder@~1.1.1: dependencies: safe-buffer "~5.1.0" +stringify-object@3.2.2: + version "3.2.2" + resolved "https://registry.yarnpkg.com/stringify-object/-/stringify-object-3.2.2.tgz#9853052e5a88fb605a44cd27445aa257ad7ffbcd" + integrity sha512-O696NF21oLiDy8PhpWu8AEqoZHw++QW6mUv0UvKZe8gWSdSvMXkiLufK7OmnP27Dro4GU5kb9U7JIO0mBuCRQg== + dependencies: + get-own-enumerable-property-symbols "^2.0.1" + is-obj "^1.0.1" + is-regexp "^1.0.0" + stringify-object@^3.3.0: version "3.3.0" resolved "https://registry.yarnpkg.com/stringify-object/-/stringify-object-3.3.0.tgz#703065aefca19300d3ce88af4f5b3956d7556629" From 3bb1efe7e528f661e6611a4bcef6d28ee69b7b0a Mon Sep 17 00:00:00 2001 From: Willane Paiva Date: Thu, 4 Jul 2019 17:29:21 -0300 Subject: [PATCH 23/25] Add routes --- modules.d.ts | 1 + package.json | 1 + src/App.tsx | 9 ++-- src/components/Menu/index.tsx | 7 ++- src/routes.tsx | 22 ++++++++ src/utils/ErrorRoute.tsx | 12 +++++ yarn.lock | 95 +++++++++++++++++++++++++++++++++-- 7 files changed, 138 insertions(+), 9 deletions(-) create mode 100644 src/routes.tsx create mode 100644 src/utils/ErrorRoute.tsx diff --git a/modules.d.ts b/modules.d.ts index 221b245..bc734ff 100644 --- a/modules.d.ts +++ b/modules.d.ts @@ -1,3 +1,4 @@ declare module '@storybook/react'; declare module 'markdown-to-jsx'; declare module 'react-element-to-jsx-string'; +declare module 'react-router-dom'; diff --git a/package.json b/package.json index 38bf7fd..13c9247 100644 --- a/package.json +++ b/package.json @@ -10,6 +10,7 @@ "markdown-to-jsx": "^6.10.2", "react": "^16.8.6", "react-dom": "^16.8.6", + "react-router-dom": "^5.0.1", "react-scripts": "3.0.1", "typescript": "3.5.2" }, diff --git a/src/App.tsx b/src/App.tsx index c831e00..a510ea1 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -1,13 +1,14 @@ import React from 'react'; +import Routes from './routes'; + import './App.css'; -import Home from './containers/Home'; function App() { return ( -
- -
+ +
+
); } diff --git a/src/components/Menu/index.tsx b/src/components/Menu/index.tsx index ec27be1..7db5b83 100644 --- a/src/components/Menu/index.tsx +++ b/src/components/Menu/index.tsx @@ -1,5 +1,7 @@ import React, { FunctionComponent } from 'react'; +import { Link } from 'react-router-dom'; + import MenuItem from '../MenuItem'; import './style.scss'; @@ -15,8 +17,9 @@ const Menu: FunctionComponent = () => { > - - + + +
); }; diff --git a/src/routes.tsx b/src/routes.tsx new file mode 100644 index 0000000..797d110 --- /dev/null +++ b/src/routes.tsx @@ -0,0 +1,22 @@ +import React, { FunctionComponent } from 'react'; + +import { BrowserRouter, Route, Switch } from 'react-router-dom'; + +import Home from './containers/Home'; +import Error from './utils/ErrorRoute'; + +interface OwnProps { + children: any; +} + +const Routes: FunctionComponent = () => ( + + + + + + + +); + +export default Routes; diff --git a/src/utils/ErrorRoute.tsx b/src/utils/ErrorRoute.tsx new file mode 100644 index 0000000..015aae5 --- /dev/null +++ b/src/utils/ErrorRoute.tsx @@ -0,0 +1,12 @@ +import React from 'react'; +import { Link } from 'react-router-dom'; + +const ErrorMessage = () => ( +
+

Ops, nothing here!

+

This page will be build in the future

+ Click here to return home +
+); + +export default ErrorMessage; diff --git a/yarn.lock b/yarn.lock index 9cb350e..43d1324 100644 --- a/yarn.lock +++ b/yarn.lock @@ -990,6 +990,13 @@ dependencies: regenerator-runtime "^0.13.2" +"@babel/runtime@^7.4.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.5.0.tgz#49dcbcd637099a55d3a61e590a00d6861393b1b5" + integrity sha512-2xsuyZ0R0RBFwjgae5NpXk8FcfH4qovj5cEM5VEeB7KXnKqzaisIu2HSV/mCEISolJJuR4wkViUGYujA8MH9tw== + dependencies: + regenerator-runtime "^0.13.2" + "@babel/template@^7.1.0", "@babel/template@^7.4.0", "@babel/template@^7.4.4": version "7.4.4" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.4.4.tgz#f4b88d1225689a08f5bc3a17483545be9e4ed237" @@ -6617,6 +6624,18 @@ highlight.js@~9.12.0: resolved "https://registry.yarnpkg.com/highlight.js/-/highlight.js-9.12.0.tgz#e6d9dbe57cbefe60751f02af336195870c90c01e" integrity sha1-5tnb5Xy+/mB1HwKvM2GVhwyQwB4= +history@^4.9.0: + version "4.9.0" + resolved "https://registry.yarnpkg.com/history/-/history-4.9.0.tgz#84587c2068039ead8af769e9d6a6860a14fa1bca" + integrity sha512-H2DkjCjXf0Op9OAr6nJ56fcRkTSNrUiv41vNJ6IswJjif6wlpZK0BTfFbi7qK9dXLSYZxkq5lBsj3vUjlYBYZA== + dependencies: + "@babel/runtime" "^7.1.2" + loose-envify "^1.2.0" + resolve-pathname "^2.2.0" + tiny-invariant "^1.0.2" + tiny-warning "^1.0.0" + value-equal "^0.4.0" + hmac-drbg@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" @@ -6631,7 +6650,7 @@ hoist-non-react-statics@^2.3.1: 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.3.0: +hoist-non-react-statics@^3.1.0, hoist-non-react-statics@^3.3.0: version "3.3.0" resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.0.tgz#b09178f0122184fb95acf525daaecb4d8f45958b" integrity sha512-0XsbTXxgiaCDYDIWFcwkmerZPSwywfUqYmwT4jzewKTQSWoE6FCMoUVOeBJWK3E/CrWbxRG3m5GzY4lnIwGRBA== @@ -7561,6 +7580,11 @@ is-wsl@^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" @@ -8547,7 +8571,7 @@ longest@^1.0.0: resolved "https://registry.yarnpkg.com/longest/-/longest-1.0.1.tgz#30a0b2da38f73770e8294a0d22e6625ed77d0097" integrity sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc= -loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.4.0: +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== @@ -8857,6 +8881,15 @@ min-document@^2.19.0: dependencies: dom-walk "^0.1.0" +mini-create-react-context@^0.3.0: + version "0.3.2" + resolved "https://registry.yarnpkg.com/mini-create-react-context/-/mini-create-react-context-0.3.2.tgz#79fc598f283dd623da8e088b05db8cddab250189" + integrity sha512-2v+OeetEyliMt5VHMXsBhABoJ0/M4RCe7fatd/fBy6SMiKazUSEt3gxxypfnk2SHMkdBYvorHRoQxuGoiwbzAw== + dependencies: + "@babel/runtime" "^7.4.0" + gud "^1.0.0" + tiny-warning "^1.0.2" + mini-css-extract-plugin@0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-0.5.0.tgz#ac0059b02b9692515a637115b0cc9fed3a35c7b0" @@ -9867,6 +9900,13 @@ path-to-regexp@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" @@ -11192,7 +11232,7 @@ react-inspector@^3.0.2: is-dom "^1.0.9" prop-types "^15.6.1" -react-is@^16.7.0, react-is@^16.8.1, react-is@^16.8.4: +react-is@^16.6.0, react-is@^16.7.0, react-is@^16.8.1, react-is@^16.8.4: version "16.8.6" resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.8.6.tgz#5bbc1e2d29141c9fbdfed456343fe2bc430a6a16" integrity sha512-aUk3bHfZ2bRSVFFbbeVS4i+lNPZr3/WM5jT2J5omUVV1zzcs1nAaf3l51ctA5FFvCRbhrH0bdAsRRQddFJZPtA== @@ -11233,6 +11273,35 @@ react-resize-detector@^4.0.5: raf-schd "^4.0.0" resize-observer-polyfill "^1.5.1" +react-router-dom@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-5.0.1.tgz#ee66f4a5d18b6089c361958e443489d6bab714be" + integrity sha512-zaVHSy7NN0G91/Bz9GD4owex5+eop+KvgbxXsP/O+iW1/Ln+BrJ8QiIR5a6xNPtrdTvLkxqlDClx13QO1uB8CA== + dependencies: + "@babel/runtime" "^7.1.2" + history "^4.9.0" + loose-envify "^1.3.1" + prop-types "^15.6.2" + react-router "5.0.1" + tiny-invariant "^1.0.2" + tiny-warning "^1.0.0" + +react-router@5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/react-router/-/react-router-5.0.1.tgz#04ee77df1d1ab6cb8939f9f01ad5702dbadb8b0f" + integrity sha512-EM7suCPNKb1NxcTZ2LEOWFtQBQRQXecLxVpdsP4DW4PbbqYWeRiLyV/Tt1SdCrvT2jcyXAXmVTmzvSzrPR63Bg== + dependencies: + "@babel/runtime" "^7.1.2" + history "^4.9.0" + hoist-non-react-statics "^3.1.0" + loose-envify "^1.3.1" + mini-create-react-context "^0.3.0" + path-to-regexp "^1.7.0" + prop-types "^15.6.2" + react-is "^16.6.0" + tiny-invariant "^1.0.2" + tiny-warning "^1.0.0" + react-scripts@3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/react-scripts/-/react-scripts-3.0.1.tgz#e5565350d8069cc9966b5998d3fe3befe3d243ac" @@ -11728,6 +11797,11 @@ resolve-from@^5.0.0: resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== +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" @@ -12981,6 +13055,16 @@ tiny-emitter@^2.0.0: resolved "https://registry.yarnpkg.com/tiny-emitter/-/tiny-emitter-2.1.0.tgz#1d1a56edfc51c43e863cbb5382a72330e3555423" integrity sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q== +tiny-invariant@^1.0.2: + version "1.0.4" + resolved "https://registry.yarnpkg.com/tiny-invariant/-/tiny-invariant-1.0.4.tgz#346b5415fd93cb696b0c4e8a96697ff590f92463" + integrity sha512-lMhRd/djQJ3MoaHEBrw8e2/uM4rs9YMNk0iOr8rHQ0QdbM7D4l0gFl3szKdeixrlyfm9Zqi4dxHCM2qVG8ND5g== + +tiny-warning@^1.0.0, tiny-warning@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/tiny-warning/-/tiny-warning-1.0.2.tgz#1dfae771ee1a04396bdfde27a3adcebc6b648b28" + integrity sha512-rru86D9CpQRLvsFG5XFdy0KdLAvjdQDyZCsRcuu60WtzFylDM3eAWSxEVz5kzL2Gp544XiUvPbVKtOA/txLi9Q== + tmp@^0.0.33: version "0.0.33" resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" @@ -13487,6 +13571,11 @@ validate-npm-package-license@^3.0.1: 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" From 24a42a0392a3e99eed1403afebf0fb656c0c0d9c Mon Sep 17 00:00:00 2001 From: Willane Paiva Date: Thu, 4 Jul 2019 18:20:02 -0300 Subject: [PATCH 24/25] Modify footer --- src/components/ContributingSection/index.tsx | 1 - src/containers/Home/index.tsx | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/src/components/ContributingSection/index.tsx b/src/components/ContributingSection/index.tsx index 1028282..c03cbf1 100644 --- a/src/components/ContributingSection/index.tsx +++ b/src/components/ContributingSection/index.tsx @@ -20,7 +20,6 @@ const Contributing = () => ( .

-

License MIT.

); diff --git a/src/containers/Home/index.tsx b/src/containers/Home/index.tsx index 9dabb74..abfcf0e 100644 --- a/src/containers/Home/index.tsx +++ b/src/containers/Home/index.tsx @@ -42,7 +42,7 @@ const Home = () => (
-

Footer

+

Made using MIT License.

); From e82dadb6f1b81649add9774be821cfaa57b2ec3a Mon Sep 17 00:00:00 2001 From: Willane Paiva Date: Fri, 5 Jul 2019 15:34:37 -0300 Subject: [PATCH 25/25] Add tests for components --- jest.config.js | 13 + package.json | 23 +- src/__mocks__/styleMock.js | 1 + src/__tests__/Logo.test.tsx | 20 ++ src/__tests__/MenuItem.test.tsx | 13 + src/__tests__/Section.test.tsx | 42 +++ src/__tests__/SocialMedia.test.tsx | 18 + src/__tests__/setupTests.ts | 4 + src/components/Section/index.tsx | 2 +- tsconfig.json | 17 +- yarn.lock | 538 +++++++++++++++++++++++++++-- 11 files changed, 645 insertions(+), 46 deletions(-) create mode 100644 jest.config.js create mode 100644 src/__mocks__/styleMock.js create mode 100644 src/__tests__/Logo.test.tsx create mode 100644 src/__tests__/MenuItem.test.tsx create mode 100644 src/__tests__/Section.test.tsx create mode 100644 src/__tests__/SocialMedia.test.tsx create mode 100644 src/__tests__/setupTests.ts diff --git a/jest.config.js b/jest.config.js new file mode 100644 index 0000000..06e242c --- /dev/null +++ b/jest.config.js @@ -0,0 +1,13 @@ +module.exports = { + preset: 'ts-jest', + snapshotSerializers: ['enzyme-to-json/serializer'], + testEnvironment: 'node', + transform: { + '^.+\\.tsx?$': 'ts-jest', + '.+\\.(css|styl|less|sass|scss)$': 'jest-transform-css', + }, + testRegex: '/src/__tests__/.*\\.test.(ts|tsx)$', + moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx', 'json', 'node'], + setupFiles: ['/src/__tests__/setupTests.ts'], + collectCoverage: false, +}; diff --git a/package.json b/package.json index 13c9247..d607976 100644 --- a/package.json +++ b/package.json @@ -3,10 +3,10 @@ "version": "0.1.0", "private": true, "dependencies": { - "@types/jest": "24.0.15", + "@types/jest": "^24.0.15", "@types/node": "12.0.10", - "@types/react": "16.8.22", - "@types/react-dom": "16.8.4", + "@types/react": "^16.8.23", + "@types/react-dom": "^16.8.4", "markdown-to-jsx": "^6.10.2", "react": "^16.8.6", "react-dom": "^16.8.6", @@ -17,7 +17,7 @@ "scripts": { "start": "webpack-dev-server --mode development --open --hot", "build": "webpack --mode production", - "test": "echo \"Error: no test specified\" && exit 1", + "test": "jest --watch", "check-types": "tsc", "lint:ts": "tslint 'src/**/*.{ts,tsx,js}'", "storybook": "start-storybook -p 9009 -s public", @@ -48,15 +48,25 @@ "@storybook/addon-links": "^5.1.9", "@storybook/addons": "^5.1.9", "@storybook/react": "^5.1.9", + "@types/enzyme": "^3.10.1", + "@types/enzyme-adapter-react-16": "^1.0.5", + "@types/react-test-renderer": "^16.8.2", "babel-loader": "^8.0.6", "css-loader": "^3.0.0", + "enzyme": "^3.10.0", + "enzyme-adapter-react-16": "^1.14.0", + "enzyme-to-json": "^3.3.5", "html-webpack-plugin": "^3.2.0", "image-webpack-loader": "^5.0.0", + "jest": "^24.8.0", + "jest-transform-css": "^2.0.0", "node-sass": "^4.12.0", "prettier": "1.18.2", "react-element-to-jsx-string": "^14.0.2", + "react-test-renderer": "^16.8.6", "sass-loader": "^7.1.0", "style-loader": "^0.23.1", + "ts-jest": "^24.0.2", "tslint": "^5.18.0", "tslint-config-prettier": "^1.18.0", "tslint-immutable": "^6.0.0", @@ -64,5 +74,10 @@ "webpack": "^4.35.0", "webpack-cli": "^3.3.5", "webpack-dev-server": "^3.7.2" + }, + "jest": { + "moduleNameMapper": { + "\\.(jpg|jpeg|png|gif|eot|otf|webp|svg|ttf|woff|woff2|mp4|webm|wav|mp3|m4a|aac|oga)$": "/src/__mocks__/fileMock.js" + } } } diff --git a/src/__mocks__/styleMock.js b/src/__mocks__/styleMock.js new file mode 100644 index 0000000..f053ebf --- /dev/null +++ b/src/__mocks__/styleMock.js @@ -0,0 +1 @@ +module.exports = {}; diff --git a/src/__tests__/Logo.test.tsx b/src/__tests__/Logo.test.tsx new file mode 100644 index 0000000..f42ac35 --- /dev/null +++ b/src/__tests__/Logo.test.tsx @@ -0,0 +1,20 @@ +import React from 'react'; +import { shallow } from 'enzyme'; + +import Logo from '../components/Logo'; + +describe('Logo', () => { + it('should render correctly', () => { + const mounted = shallow(); + const result = mounted.contains( +
+ Logo +

+ React Pure + Loaders +

+
+ ); + expect(result).toBeTruthy(); + }); +}); diff --git a/src/__tests__/MenuItem.test.tsx b/src/__tests__/MenuItem.test.tsx new file mode 100644 index 0000000..1214319 --- /dev/null +++ b/src/__tests__/MenuItem.test.tsx @@ -0,0 +1,13 @@ +import * as React from 'react'; +import { shallow } from 'enzyme'; + +import MenuItem from '../components/MenuItem'; + +describe('Menu Item', () => { + it('should render correctly', () => { + const result = shallow().contains( +

Home

+ ); + expect(result).toBeTruthy(); + }); +}); diff --git a/src/__tests__/Section.test.tsx b/src/__tests__/Section.test.tsx new file mode 100644 index 0000000..d092444 --- /dev/null +++ b/src/__tests__/Section.test.tsx @@ -0,0 +1,42 @@ +import React from 'react'; +import { shallow } from 'enzyme'; + +import Section from '../components/Section'; + +describe('Section', () => { + it('should render correctly given a title', () => { + const mounted = shallow(
); + const result = mounted.contains( +
+

What

+
+ ); + expect(result).toBeTruthy(); + }); + it('should render a title and a description', () => { + const mounted = shallow(
); + const result = mounted.contains( +
+

Greeting

+

Hello

+
+ ); + expect(result).toBeTruthy(); + }); + it('should render a children', () => { + const mounted = shallow( +
+

Hello

+
+ ); + const result = mounted.contains( +
+

Greeting

+
+

Hello

+
+
+ ); + expect(result).toBeTruthy(); + }); +}); diff --git a/src/__tests__/SocialMedia.test.tsx b/src/__tests__/SocialMedia.test.tsx new file mode 100644 index 0000000..7ad932c --- /dev/null +++ b/src/__tests__/SocialMedia.test.tsx @@ -0,0 +1,18 @@ +import React from 'react'; +import { shallow } from 'enzyme'; + +import SocialMedia from '../components/SocialMedia'; + +describe('Social Media', () => { + it('should render correctly', () => { + const mounted = shallow(); + const result = mounted.contains( +
+ + + +
+ ); + expect(result).toBeTruthy(); + }); +}); diff --git a/src/__tests__/setupTests.ts b/src/__tests__/setupTests.ts new file mode 100644 index 0000000..32a0790 --- /dev/null +++ b/src/__tests__/setupTests.ts @@ -0,0 +1,4 @@ +import enzyme from 'enzyme'; +import Adapter from 'enzyme-adapter-react-16'; + +enzyme.configure({ adapter: new Adapter() }); diff --git a/src/components/Section/index.tsx b/src/components/Section/index.tsx index 7a13654..2d49041 100644 --- a/src/components/Section/index.tsx +++ b/src/components/Section/index.tsx @@ -16,7 +16,7 @@ const Section: FunctionComponent = ({

{title}

{description &&

{description}

} -
{children}
+ {children &&
{children}
}
); diff --git a/tsconfig.json b/tsconfig.json index 0980b23..e785cfb 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,11 +1,7 @@ { "compilerOptions": { "target": "es5", - "lib": [ - "dom", - "dom.iterable", - "esnext" - ], + "lib": ["dom", "dom.iterable", "esnext"], "allowJs": true, "skipLibCheck": true, "esModuleInterop": true, @@ -17,9 +13,12 @@ "resolveJsonModule": true, "isolatedModules": true, "noEmit": true, - "jsx": "preserve" + "jsx": "react", + "declaration": false, + "experimentalDecorators": true, + "emitDecoratorMetadata": true, + "sourceMap": true, + "typeRoots": ["node_modules/@types"] }, - "include": [ - "src" - ] + "include": ["src"] } diff --git a/yarn.lock b/yarn.lock index 43d1324..5b7f607 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1878,6 +1878,28 @@ dependencies: "@babel/types" "^7.3.0" +"@types/cheerio@*": + version "0.22.12" + resolved "https://registry.yarnpkg.com/@types/cheerio/-/cheerio-0.22.12.tgz#93c050401d4935a5376e8b352965f7458bed5340" + integrity sha512-aczowyAJNfrkBV+HS8DyAA87OnvkqGrrOmm5s7V6Jbgimzv/1ZoAy91cLJX8GQrUS60KufD7EIzA2LbK8HV4hg== + dependencies: + "@types/node" "*" + +"@types/enzyme-adapter-react-16@^1.0.5": + version "1.0.5" + resolved "https://registry.yarnpkg.com/@types/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.0.5.tgz#1bf30a166f49be69eeda4b81e3f24113c8b4e9d5" + integrity sha512-K7HLFTkBDN5RyRmU90JuYt8OWEY2iKUn43SDWEoBOXd/PowUWjLZ3Q6qMBiQuZeFYK/TOstaZxsnI0fXoAfLpg== + dependencies: + "@types/enzyme" "*" + +"@types/enzyme@*", "@types/enzyme@^3.10.1": + version "3.10.1" + resolved "https://registry.yarnpkg.com/@types/enzyme/-/enzyme-3.10.1.tgz#74a7f7345075a4c03e574661068d3f96a054f495" + integrity sha512-Jd2hvn3w/0rBH8qD2n+JLMq2GjmZoKTZc5TTg8q9cDnJ9jkR7gzPV+ZdipKwGkWpMRXKDm9kuc9UiUqsW5s20w== + dependencies: + "@types/cheerio" "*" + "@types/react" "*" + "@types/events@*": version "3.0.0" resolved "https://registry.yarnpkg.com/@types/events/-/events-3.0.0.tgz#2862f3f58a9a7f7c3e78d79f130dd4d71c25c2a7" @@ -1917,7 +1939,7 @@ resolved "https://registry.yarnpkg.com/@types/jest-diff/-/jest-diff-20.0.1.tgz#35cc15b9c4f30a18ef21852e255fdb02f6d59b89" integrity sha512-yALhelO3i0hqZwhjtcr6dYyaLoCHbAMshwtj6cGxTvHZAKXHsYGdff6E8EPw3xLKY0ELUTQ69Q1rQiJENnccMA== -"@types/jest@24.0.15": +"@types/jest@^24.0.15": version "24.0.15" resolved "https://registry.yarnpkg.com/@types/jest/-/jest-24.0.15.tgz#6c42d5af7fe3b44ffff7cc65de7bf741e8fa427f" integrity sha512-MU1HIvWUme74stAoc3mgAi+aMlgKOudgEvQDIm1v4RkrDudBh1T+NFp5sftpBAdXdx1J0PbdpJ+M2EsSOi1djA== @@ -1949,14 +1971,21 @@ resolved "https://registry.yarnpkg.com/@types/q/-/q-1.5.2.tgz#690a1475b84f2a884fd07cd797c00f5f31356ea8" integrity sha512-ce5d3q03Ex0sy4R14722Rmt6MT07Ua+k4FwDfdcToYJcMKNtRVQvJ6JCAPdAmAnbRb6CsX6aYb9m96NGod9uTw== -"@types/react-dom@16.8.4": +"@types/react-dom@^16.8.4": version "16.8.4" resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-16.8.4.tgz#7fb7ba368857c7aa0f4e4511c4710ca2c5a12a88" integrity sha512-eIRpEW73DCzPIMaNBDP5pPIpK1KXyZwNgfxiVagb5iGiz6da+9A5hslSX6GAQKdO7SayVCS/Fr2kjqprgAvkfA== dependencies: "@types/react" "*" -"@types/react@*", "@types/react@16.8.22": +"@types/react-test-renderer@^16.8.2": + version "16.8.2" + resolved "https://registry.yarnpkg.com/@types/react-test-renderer/-/react-test-renderer-16.8.2.tgz#ad544b5571ebfc5f182c320376f1431a2b725c5e" + integrity sha512-cm42QR9S9V3aOxLh7Fh7PUqQ8oSfSdnSni30T7TiTmlKvE6aUlo+LhQAzjnZBPriD9vYmgG8MXI8UDK4Nfb7gg== + dependencies: + "@types/react" "*" + +"@types/react@*": version "16.8.22" resolved "https://registry.yarnpkg.com/@types/react/-/react-16.8.22.tgz#7f18bf5ea0c1cad73c46b6b1c804a3ce0eec6d54" integrity sha512-C3O1yVqk4sUXqWyx0wlys76eQfhrQhiDhDlHBrjER76lR2S2Agiid/KpOU9oCqj1dISStscz7xXz1Cg8+sCQeA== @@ -1964,6 +1993,14 @@ "@types/prop-types" "*" csstype "^2.2.0" +"@types/react@^16.8.23": + version "16.8.23" + resolved "https://registry.yarnpkg.com/@types/react/-/react-16.8.23.tgz#ec6be3ceed6353a20948169b6cb4c97b65b97ad2" + integrity sha512-abkEOIeljniUN9qB5onp++g0EY38h7atnDHxwKUFz1r3VH1+yG1OKi2sNPTyObL40goBmfKFpdii2lEzwLX1cA== + dependencies: + "@types/prop-types" "*" + csstype "^2.2.0" + "@types/stack-utils@^1.0.1": version "1.0.1" resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-1.0.1.tgz#0a851d3bd96498fa25c33ab7278ed3bd65f06c3e" @@ -2263,6 +2300,22 @@ address@^1.0.1: string.prototype.padstart "^3.0.0" symbol.prototype.description "^1.0.0" +airbnb-prop-types@^2.13.2: + version "2.13.2" + resolved "https://registry.yarnpkg.com/airbnb-prop-types/-/airbnb-prop-types-2.13.2.tgz#43147a5062dd2a4a5600e748a47b64004cc5f7fc" + integrity sha512-2FN6DlHr6JCSxPPi25EnqGaXC4OC3/B3k1lCd6MMYrZ51/Gf/1qDfaR+JElzWa+Tl7cY2aYOlsYJGFeQyVHIeQ== + dependencies: + array.prototype.find "^2.0.4" + function.prototype.name "^1.1.0" + has "^1.0.3" + is-regex "^1.0.4" + object-is "^1.0.1" + object.assign "^4.1.0" + object.entries "^1.1.0" + prop-types "^15.7.2" + prop-types-exact "^1.2.0" + react-is "^16.8.6" + ajv-errors@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d" @@ -2415,6 +2468,11 @@ array-equal@^1.0.0: resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93" integrity sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM= +array-filter@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/array-filter/-/array-filter-1.0.0.tgz#baf79e62e6ef4c2a4c0b831232daffec251f9d83" + integrity sha1-uveeYubvTCpMC4MSMtr/7CUfnYM= + array-filter@~0.0.0: version "0.0.1" resolved "https://registry.yarnpkg.com/array-filter/-/array-filter-0.0.1.tgz#7da8cf2e26628ed732803581fd21f67cacd2eeec" @@ -2475,6 +2533,14 @@ array-unique@^0.3.2: resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= +array.prototype.find@^2.0.4: + version "2.1.0" + resolved "https://registry.yarnpkg.com/array.prototype.find/-/array.prototype.find-2.1.0.tgz#630f2eaf70a39e608ac3573e45cf8ccd0ede9ad7" + integrity sha512-Wn41+K1yuO5p7wRZDl7890c3xvv5UBrfVXTVIe28rSQb6LS0fZMDrQB6PAcxQFRFy6vJTLDc3A2+3CjQdzVKRg== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.13.0" + 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" @@ -3348,6 +3414,13 @@ browserslist@^4.6.0, browserslist@^4.6.2: electron-to-chromium "^1.3.164" node-releases "^1.1.23" +bs-logger@0.x: + version "0.2.6" + resolved "https://registry.yarnpkg.com/bs-logger/-/bs-logger-0.2.6.tgz#eb7d365307a72cf974cc6cda76b68354ad336bd8" + integrity sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog== + dependencies: + fast-json-stable-stringify "2.x" + bser@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/bser/-/bser-2.0.0.tgz#9ac78d3ed5d915804fd87acb158bc797147a1719" @@ -3378,7 +3451,7 @@ buffer-fill@^1.0.0: resolved "https://registry.yarnpkg.com/buffer-fill/-/buffer-fill-1.0.0.tgz#f8f78b76789888ef39f205cd637f68e702122b2c" integrity sha1-+PeLdniYiO858gXNY39o5wISKyw= -buffer-from@^1.0.0: +buffer-from@1.x, 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== @@ -3665,6 +3738,18 @@ chardet@^0.7.0: resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== +cheerio@^1.0.0-rc.2: + version "1.0.0-rc.3" + resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-1.0.0-rc.3.tgz#094636d425b2e9c0f4eb91a46c05630c9a1a8bf6" + integrity sha512-0td5ijfUPuubwLUu0OBoe98gZj8C/AA+RW3v67GPlGOrvxWjZmBXiBCRU+I8VEiNyJzjth40POfHiz2RB3gImA== + dependencies: + css-select "~1.2.0" + dom-serializer "~0.1.1" + entities "~1.1.1" + htmlparser2 "^3.9.1" + lodash "^4.15.0" + parse5 "^3.0.1" + chokidar@^2.0.0, chokidar@^2.0.2, chokidar@^2.0.4: version "2.1.5" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.5.tgz#0ae8434d962281a5f56c72869e79cb6d9d86ad4d" @@ -3940,7 +4025,7 @@ commander@~2.8.1: dependencies: graceful-readlink ">= 1.0.0" -common-tags@^1.8.0: +common-tags@1.8.0, common-tags@^1.8.0: version "1.8.0" resolved "https://registry.yarnpkg.com/common-tags/-/common-tags-1.8.0.tgz#8e3153e542d4a39e9b10554434afaaf98956a937" integrity sha512-6P6g0uetGpW/sdyUy/iQQCbFF0kWVMSIVSyYz7Zgjcgh8mgw8PQzDNZeyZ5DQ2gM7LBoZPHmnjz8rUthkBG5tw== @@ -4160,6 +4245,15 @@ corejs-upgrade-webpack-plugin@^2.0.0: resolve-from "^5.0.0" webpack "^4.33.0" +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@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-4.0.0.tgz#760391549580bbd2df1e562bc177b13c290972dc" @@ -4335,6 +4429,18 @@ css-loader@^3.0.0: postcss-value-parser "^4.0.0" schema-utils "^1.0.0" +css-modules-loader-core@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/css-modules-loader-core/-/css-modules-loader-core-1.1.0.tgz#5908668294a1becd261ae0a4ce21b0b551f21d16" + integrity sha1-WQhmgpShvs0mGuCkziGwtVHyHRY= + dependencies: + icss-replace-symbols "1.1.0" + postcss "6.0.1" + postcss-modules-extract-imports "1.1.0" + postcss-modules-local-by-default "1.2.0" + postcss-modules-scope "1.1.0" + postcss-modules-values "1.3.0" + css-prefers-color-scheme@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/css-prefers-color-scheme/-/css-prefers-color-scheme-3.1.1.tgz#6f830a2714199d4f0d0d0bb8a27916ed65cff1f4" @@ -4347,7 +4453,7 @@ css-select-base-adapter@^0.1.1: resolved "https://registry.yarnpkg.com/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz#3b2ff4972cc362ab88561507a95408a1432135d7" integrity sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w== -css-select@^1.1.0: +css-select@^1.1.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= @@ -4367,6 +4473,15 @@ css-select@^2.0.0: domutils "^1.7.0" nth-check "^1.0.2" +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-tree@1.0.0-alpha.28: version "1.0.0-alpha.28" resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.28.tgz#8e8968190d886c9477bc8d61e96f61af3f7ffa7f" @@ -4403,6 +4518,11 @@ cssdb@^4.3.0: resolved "https://registry.yarnpkg.com/cssdb/-/cssdb-4.4.0.tgz#3bf2f2a68c10f5c6a08abd92378331ee803cddb0" integrity sha512-LsTAR1JPEM9TpGhl/0p3nQecC2LJ0kD8X5YARu1hk/9I1gril5vDtMZyNxcEpxxDj34YNck/ucjuoUd66K03oQ== +cssesc@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-0.1.0.tgz#c814903e45623371a0477b40109aaafbeeaddbb4" + integrity sha1-yBSQPkViM3GgR3tAEJqq++6t27Q= + cssesc@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-2.0.0.tgz#3b13bd1bb1cb36e1bcb5a4dcd27f54c5dcb35703" @@ -4828,6 +4948,11 @@ dir-glob@2.0.0: arrify "^1.0.1" path-type "^3.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" @@ -4877,7 +5002,7 @@ dom-converter@^0.2: dependencies: utila "~0.4" -dom-serializer@0: +dom-serializer@0, dom-serializer@~0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.1.tgz#1ec4059e284babed36eec2941d4a970a189ce7c0" integrity sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA== @@ -5114,11 +5239,71 @@ enhanced-resolve@4.1.0, enhanced-resolve@^4.1.0: memory-fs "^0.4.0" tapable "^1.0.0" -entities@^1.1.1: +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.14.0: + version "1.14.0" + resolved "https://registry.yarnpkg.com/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.14.0.tgz#204722b769172bcf096cb250d33e6795c1f1858f" + integrity sha512-7PcOF7pb4hJUvjY7oAuPGpq3BmlCig3kxXGi2kFx0YzJHppqX1K8IIV9skT1IirxXlu8W7bneKi+oQ10QRnhcA== + dependencies: + enzyme-adapter-utils "^1.12.0" + has "^1.0.3" + object.assign "^4.1.0" + object.values "^1.1.0" + prop-types "^15.7.2" + react-is "^16.8.6" + react-test-renderer "^16.0.0-0" + semver "^5.7.0" + +enzyme-adapter-utils@^1.12.0: + version "1.12.0" + resolved "https://registry.yarnpkg.com/enzyme-adapter-utils/-/enzyme-adapter-utils-1.12.0.tgz#96e3730d76b872f593e54ce1c51fa3a451422d93" + integrity sha512-wkZvE0VxcFx/8ZsBw0iAbk3gR1d9hK447ebnSYBf95+r32ezBq+XDSAvRErkc4LZosgH8J7et7H7/7CtUuQfBA== + dependencies: + airbnb-prop-types "^2.13.2" + function.prototype.name "^1.1.0" + object.assign "^4.1.0" + object.fromentries "^2.0.0" + prop-types "^15.7.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.10.0: + version "3.10.0" + resolved "https://registry.yarnpkg.com/enzyme/-/enzyme-3.10.0.tgz#7218e347c4a7746e133f8e964aada4a3523452f6" + integrity sha512-p2yy9Y7t/PFbPoTvrWde7JIYB2ZyGC+NgTNbVEGvZ5/EyoYSr9aG/2rSbVvyNvMHEhw9/dmGUJHWtfQIEiX9pg== + dependencies: + array.prototype.flat "^1.2.1" + cheerio "^1.0.0-rc.2" + function.prototype.name "^1.1.0" + has "^1.0.3" + html-element-map "^1.0.0" + is-boolean-object "^1.0.0" + is-callable "^1.1.4" + is-number-object "^1.0.3" + is-regex "^1.0.4" + 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" @@ -5133,7 +5318,7 @@ error-ex@^1.2.0, error-ex@^1.3.1: dependencies: is-arrayish "^0.2.1" -es-abstract@^1.10.0, es-abstract@^1.11.0, es-abstract@^1.12.0, es-abstract@^1.13.0, es-abstract@^1.4.3, es-abstract@^1.5.1, es-abstract@^1.7.0, es-abstract@^1.9.0: +es-abstract@^1.10.0, es-abstract@^1.11.0, es-abstract@^1.12.0, es-abstract@^1.13.0, es-abstract@^1.4.3, es-abstract@^1.5.0, es-abstract@^1.5.1, es-abstract@^1.7.0, es-abstract@^1.9.0: version "1.13.0" resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.13.0.tgz#ac86145fdd5099d8dd49558ccba2eaf9b88e24e9" integrity sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg== @@ -5672,7 +5857,7 @@ fast-glob@^2.0.2: merge2 "^1.2.3" micromatch "^3.1.10" -fast-json-stable-stringify@^2.0.0: +fast-json-stable-stringify@2.x, 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= @@ -5682,6 +5867,11 @@ fast-levenshtein@~2.0.4: 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== + fault@^1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/fault/-/fault-1.0.3.tgz#4da88cf979b6b792b4e13c7ec836767725170b7e" @@ -6193,6 +6383,13 @@ gaze@^1.0.0: dependencies: globule "^1.0.0" +generic-names@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/generic-names/-/generic-names-1.0.3.tgz#2d786a121aee508876796939e8e3bff836c20917" + integrity sha1-LXhqEhruUIh2eWk56OO/+DbCCRc= + dependencies: + loader-utils "^0.2.16" + 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" @@ -6502,6 +6699,11 @@ has-ansi@^2.0.0: 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" @@ -6694,6 +6896,13 @@ html-comment-regex@^1.1.0: resolved "https://registry.yarnpkg.com/html-comment-regex/-/html-comment-regex-1.1.2.tgz#97d4688aeb5c81886a364faa0cad1dda14d433a7" integrity sha512-P+M65QY2JQ5Y0G9KKdlDpo0zK+/OHptU5AaBwUfAIDJZk1MYf32Frm84EcOytfJE0t5JvkAnKlmjsXDnWzCJmQ== +html-element-map@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/html-element-map/-/html-element-map-1.0.1.tgz#3c4fcb4874ebddfe4283b51c8994e7713782b592" + integrity sha512-BZSfdEm6n706/lBfXKWa4frZRZcT5k1cOusw95ijZsHlI+GdgY0v95h6IzO3iIDf2ROwq570YTwqNPqHcNMozw== + dependencies: + array-filter "^1.0.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" @@ -6744,7 +6953,7 @@ html-webpack-plugin@^3.2.0: toposort "^1.0.0" util.promisify "1.0.0" -htmlparser2@^3.3.0: +htmlparser2@^3.3.0, htmlparser2@^3.9.1: version "3.10.1" resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.10.1.tgz#bd679dc3f59897b6a34bb10749c855bb53a9392f" integrity sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ== @@ -6850,7 +7059,7 @@ iconv-lite@0.4.24, iconv-lite@^0.4.24, iconv-lite@^0.4.4, iconv-lite@~0.4.13: dependencies: safer-buffer ">= 2.1.2 < 3" -icss-replace-symbols@^1.1.0: +icss-replace-symbols@1.1.0, 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= @@ -7247,6 +7456,11 @@ is-binary-path@^1.0.0: 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.0.2, is-buffer@^1.1.5: version "1.1.6" resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" @@ -7425,6 +7639,11 @@ is-natural-number@^4.0.1: resolved "https://registry.yarnpkg.com/is-natural-number/-/is-natural-number-4.0.1.tgz#ab9d76e1db4ced51e35de0c72ebecf09f734cde8" integrity sha1-q5124dtM7VHjXeDHLr7PCfc0zeg= +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@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" @@ -7541,6 +7760,16 @@ is-stream@^1.0.0, is-stream@^1.0.1, is-stream@^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-svg@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/is-svg/-/is-svg-3.0.0.tgz#9321dbd29c212e5ca99c4fa9794c714bcafa2f75" @@ -7687,7 +7916,7 @@ jest-changed-files@^24.8.0: execa "^1.0.0" throat "^4.0.0" -jest-cli@^24.7.1: +jest-cli@^24.7.1, jest-cli@^24.8.0: version "24.8.0" resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-24.8.0.tgz#b075ac914492ed114fa338ade7362a301693e989" integrity sha512-+p6J00jSMPQ116ZLlHJJvdf8wbjNbZdeSX9ptfHX06/MSNaXmKihQzx5vQcw0q2G6JsdVkUIdWbOWtSnaYs3yA== @@ -7991,6 +8220,18 @@ jest-snapshot@^24.8.0: pretty-format "^24.8.0" semver "^5.5.0" +jest-transform-css@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/jest-transform-css/-/jest-transform-css-2.0.0.tgz#f384ad1922e3726201664c199fd368e657e295d3" + integrity sha512-KV5pD27qUltAVj0mZEVvqd+Ahe+WNPOVWKA1BRpIhBJ5OeUUOM46ivAznJrC5B1JrVNbMzWjPxnKl6QTsAAT3Q== + dependencies: + common-tags "1.8.0" + cosmiconfig "5.0.6" + cross-spawn "6.0.5" + postcss-load-config "2.0.0" + postcss-modules "1.3.2" + style-inject "0.3.0" + jest-util@^24.5.0, jest-util@^24.8.0: version "24.8.0" resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-24.8.0.tgz#41f0e945da11df44cc76d64ffb915d0716f46cd1" @@ -8062,6 +8303,14 @@ jest@24.7.1: import-local "^2.0.0" jest-cli "^24.7.1" +jest@^24.8.0: + version "24.8.0" + resolved "https://registry.yarnpkg.com/jest/-/jest-24.8.0.tgz#d5dff1984d0d1002196e9b7f12f75af1b2809081" + integrity sha512-o0HM90RKFRNWmAWvlyV8i5jGZ97pFwkeVoGvPW1EtLTgJc2+jcuqcbbqcSZLE/3f2S5pt0y2ZBETuhpWNl1Reg== + dependencies: + import-local "^2.0.0" + jest-cli "^24.8.0" + js-base64@^2.1.8: version "2.5.1" resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.5.1.tgz#1efa39ef2c5f7980bb1784ade4a8af2de3291121" @@ -8211,6 +8460,13 @@ json3@^3.3.2: resolved "https://registry.yarnpkg.com/json3/-/json3-3.3.2.tgz#3c0434743df93e2f5c42aee7b19bcb483575f4e1" integrity sha1-PAQ0dD35Pi9cQq7nsZvLSDV19OE= +json5@2.x, json5@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.1.0.tgz#e7a0c62c48285c628d20a10b85c89bb807c32850" + integrity sha512-8Mh9h6xViijj36g7Dxi+Y4S6hNGV96vcJZr/SrlHh1LR/pEn/8j/+qIBbs44YKl69Lrfctp4QD+AdWLTMqEZAQ== + dependencies: + minimist "^1.2.0" + json5@^0.5.0: version "0.5.1" resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" @@ -8223,13 +8479,6 @@ json5@^1.0.1: dependencies: minimist "^1.2.0" -json5@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.1.0.tgz#e7a0c62c48285c628d20a10b85c89bb807c32850" - integrity sha512-8Mh9h6xViijj36g7Dxi+Y4S6hNGV96vcJZr/SrlHh1LR/pEn/8j/+qIBbs44YKl69Lrfctp4QD+AdWLTMqEZAQ== - dependencies: - minimist "^1.2.0" - jsonfile@^2.1.0: version "2.4.0" resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-2.4.0.tgz#3736a2b428b87bbda0cc83b53fa3d633a35c2ae8" @@ -8478,16 +8727,36 @@ lodash._reinterpolate@~3.0.0: resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" integrity sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0= +lodash.camelcase@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" + integrity sha1-soqmKIorn8ZRA1x3EfZathkDMaY= + 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.get@^4.4.2: version "4.4.2" resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" integrity sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk= +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.isplainobject@^4.0.6: version "4.0.6" resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" @@ -8543,7 +8812,7 @@ lodash.uniq@^4.5.0: resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= -"lodash@>=3.5 <5", lodash@^4.0.0, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.3, lodash@^4.17.5, lodash@~4.17.10: +"lodash@>=3.5 <5", lodash@^4.0.0, lodash@^4.15.0, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.17.5, 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== @@ -8656,6 +8925,11 @@ make-dir@^3.0.0: dependencies: semver "^6.0.0" +make-error@1.x: + version "1.3.5" + resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.5.tgz#efe4e81f6db28cadd605c70f29c831b58ef776c8" + integrity sha512-c3sIjNUow0+8swNwVpqoH4YCShKNFkMaw6oH1mNS2haDZQqkeZFlHS3dhoeEbKKmJB4vXpJucU6oH75aDYeE9g== + makeerror@1.0.x: version "1.0.11" resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c" @@ -8988,13 +9262,18 @@ mixin-object@^2.0.1: for-in "^0.1.3" is-extendable "^0.1.1" -mkdirp@0.5.1, mkdirp@0.5.x, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0, mkdirp@~0.5.1: +mkdirp@0.5.1, mkdirp@0.5.x, mkdirp@0.x, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0, mkdirp@~0.5.1: 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" +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" @@ -9076,6 +9355,17 @@ natural-compare@^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.16.0" + resolved "https://registry.yarnpkg.com/nearley/-/nearley-2.16.0.tgz#77c297d041941d268290ec84b739d0ee297e83a7" + integrity sha512-Tr9XD3Vt/EujXbZBv6UAHYoLUSMQAxSsTnm9K3koXzjzNWY195NqALeyrzLZBKzAkL3gl92BcSogqrHjD8QuUg== + dependencies: + commander "^2.19.0" + moo "^0.4.3" + railroad-diagrams "^1.0.0" + randexp "0.4.6" + semver "^5.4.1" + needle@^2.2.1: version "2.3.1" resolved "https://registry.yarnpkg.com/needle/-/needle-2.3.1.tgz#d272f2f4034afb9c4c9ab1379aabc17fc85c9388" @@ -9403,6 +9693,16 @@ object-hash@^1.1.4: resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-1.3.1.tgz#fde452098a951cb145f039bb7d455449ddc126df" integrity sha512-OSuu/pU4ENM9kmREg0BdNrUDIl1heYa4mBZacJc+vVWz4GtAwu7jO8s4AIt2aGRUTqxykpWzI3Oqnsm13tTMDA== +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.1.1" resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" @@ -9425,7 +9725,7 @@ object.assign@^4.1.0: has-symbols "^1.0.0" object-keys "^1.0.11" -object.entries@^1.1.0: +object.entries@^1.0.4, object.entries@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.0.tgz#2024fc6d6ba246aee38bdb0ffd5cfbcf371b7519" integrity sha512-l+H6EQ8qzGRxbkHOd5I/aHRhHDKoQXQ8g0BYt4uSweQU1/J6dZUOyWh9a2Vky35YCKjzmgxOzta2hH6kf9HuXA== @@ -9460,7 +9760,7 @@ object.pick@^1.3.0: dependencies: isobject "^3.0.1" -object.values@^1.1.0: +object.values@^1.0.4, object.values@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.0.tgz#bf6810ef5da3e5325790eaaa2be213ea84624da9" integrity sha512-8mf0nKLAoFX6VlNVdhGj31SVYpaNFtUnuoOXWyFEstsWRgU837AK+JYM0iAxwkSzGRbwn8cbFmgbyxj1j4VbXg== @@ -9838,6 +10138,13 @@ parse5@5.1.0, parse5@^5.0.0: resolved "https://registry.yarnpkg.com/parse5/-/parse5-5.1.0.tgz#c59341c9723f414c452975564c7c00a68d58acd2" integrity sha512-fxNG2sQjHvlVAYmzBZS9YlDp6PTSSDwa98vkD4QgVDDCAo84z5X1t5XyJQ62ImdLXx5NdIIfihey6xpum9/gRQ== +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, parseurl@~1.3.3: version "1.3.3" resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" @@ -10296,7 +10603,7 @@ postcss-lab-function@^2.0.1: postcss "^7.0.2" postcss-values-parser "^2.0.0" -postcss-load-config@^2.0.0: +postcss-load-config@2.0.0, postcss-load-config@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-2.0.0.tgz#f1312ddbf5912cd747177083c5ef7a19d62ee484" integrity sha512-V5JBLzw406BB8UIfsAWSK2KSwIJ5yoEIVFb4gVkXci0QdKgA24jLmHZ/ghe/GgX0lJ0/D1uUK1ejhzEY94MChQ== @@ -10390,6 +10697,13 @@ postcss-minify-selectors@^4.0.2: postcss "^7.0.0" postcss-selector-parser "^3.0.0" +postcss-modules-extract-imports@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.1.0.tgz#b614c9720be6816eaee35fb3a5faa1dba6a05ddb" + integrity sha1-thTJcgvmgW6u41+zpfqh26agXds= + dependencies: + postcss "^6.0.1" + postcss-modules-extract-imports@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz#818719a1ae1da325f9832446b01136eeb493cd7e" @@ -10397,6 +10711,14 @@ postcss-modules-extract-imports@^2.0.0: dependencies: postcss "^7.0.5" +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-local-by-default@^2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-2.0.6.tgz#dd9953f6dd476b5fd1ef2d8830c8929760b56e63" @@ -10416,6 +10738,14 @@ postcss-modules-local-by-default@^3.0.2: postcss-selector-parser "^6.0.2" postcss-value-parser "^4.0.0" +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-scope@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-2.1.0.tgz#ad3f5bf7856114f6fcab901b0502e2a2bc39d4eb" @@ -10424,6 +10754,14 @@ postcss-modules-scope@^2.1.0: postcss "^7.0.6" postcss-selector-parser "^6.0.0" +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-modules-values@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-2.0.0.tgz#479b46dc0c5ca3dc7fa5270851836b9ec7152f64" @@ -10440,6 +10778,17 @@ postcss-modules-values@^3.0.0: icss-utils "^4.0.0" postcss "^7.0.6" +postcss-modules@1.3.2: + version "1.3.2" + resolved "https://registry.yarnpkg.com/postcss-modules/-/postcss-modules-1.3.2.tgz#0a616b84387f1f60dd28a01f597687e85b7b8481" + integrity sha512-QujH5ZpPtr1fBWTKDa43Hx45gm7p19aEtHaAtkMCBZZiB/D5za2wXSMtAf94tDUZHF3F5KZcTXISUNqgEQRiDw== + dependencies: + css-modules-loader-core "^1.1.0" + generic-names "^1.0.3" + lodash.camelcase "^4.3.0" + postcss "^7.0.1" + string-hash "^1.1.1" + postcss-nesting@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/postcss-nesting/-/postcss-nesting-7.0.0.tgz#6e26a770a0c8fcba33782a6b6f350845e1a448f6" @@ -10735,6 +11084,24 @@ postcss-values-parser@^2.0.0, postcss-values-parser@^2.0.1: indexes-of "^1.0.1" uniq "^1.0.1" +postcss@6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.1.tgz#000dbd1f8eef217aa368b9a212c5fc40b2a8f3f2" + integrity sha1-AA29H47vIXqjaLmiEsX8QLKo8/I= + dependencies: + chalk "^1.1.3" + source-map "^0.5.6" + supports-color "^3.2.3" + +postcss@^6.0.1: + 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" + postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.2, postcss@^7.0.5, postcss@^7.0.6: version "7.0.16" resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.16.tgz#48f64f1b4b558cb8b52c88987724359acb010da2" @@ -10873,6 +11240,15 @@ prompts@^2.0.1: kleur "^3.0.2" sisteransi "^1.0.0" +prop-types-exact@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/prop-types-exact/-/prop-types-exact-1.2.0.tgz#825d6be46094663848237e3925a98c6e944e9869" + integrity sha512-K+Tk3Kd9V0odiXFP9fwDHUYRyvK3Nun3GVyPapSIs5OBkITAm15W0CPFD/YKTkMUAbc0b9CUwRQp2ybiBIq+eA== + dependencies: + has "^1.0.3" + object.assign "^4.1.0" + reflect.ownkeys "^0.2.0" + prop-types@15.7.2, prop-types@^15.6.0, prop-types@^15.6.1, prop-types@^15.6.2, prop-types@^15.7.2: version "15.7.2" resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5" @@ -11021,18 +11397,31 @@ raf-schd@^4.0.0: resolved "https://registry.yarnpkg.com/raf-schd/-/raf-schd-4.0.1.tgz#e72f29a96de260dead719f34c29e56fdc1c1473e" integrity sha512-/QTXV4+Tf81CmJgTZac47N63ZzKmaVe+1cQX/grCFeLrs4Mcc6oq+KJfbF3tFjeS1NF91lmTvgmwYjk02UTo9A== -raf@3.4.1: +raf@3.4.1, 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= + ramda@^0.21.0: version "0.21.0" resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.21.0.tgz#a001abedb3ff61077d4ff1d577d44de77e8d0a35" integrity sha1-oAGr7bP/YQd9T/HVd9RN536NCjU= +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" + randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5: version "2.1.0" resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" @@ -11232,7 +11621,7 @@ react-inspector@^3.0.2: is-dom "^1.0.9" prop-types "^15.6.1" -react-is@^16.6.0, react-is@^16.7.0, react-is@^16.8.1, react-is@^16.8.4: +react-is@^16.6.0, react-is@^16.7.0, react-is@^16.8.1, react-is@^16.8.4, react-is@^16.8.6: version "16.8.6" resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.8.6.tgz#5bbc1e2d29141c9fbdfed456343fe2bc430a6a16" integrity sha512-aUk3bHfZ2bRSVFFbbeVS4i+lNPZr3/WM5jT2J5omUVV1zzcs1nAaf3l51ctA5FFvCRbhrH0bdAsRRQddFJZPtA== @@ -11373,6 +11762,16 @@ react-syntax-highlighter@^8.0.1: prismjs "^1.8.4" refractor "^2.4.1" +react-test-renderer@^16.0.0-0, react-test-renderer@^16.8.6: + version "16.8.6" + resolved "https://registry.yarnpkg.com/react-test-renderer/-/react-test-renderer-16.8.6.tgz#188d8029b8c39c786f998aa3efd3ffe7642d5ba1" + integrity sha512-H2srzU5IWYT6cZXof6AhUcx/wEyJddQ8l7cLM/F7gDXYyPr4oq+vCIxJYXVGhId1J706sqziAjuOEjyNkfgoEw== + dependencies: + object-assign "^4.1.1" + prop-types "^15.6.2" + react-is "^16.8.6" + scheduler "^0.13.6" + react-textarea-autosize@^7.1.0: version "7.1.0" resolved "https://registry.yarnpkg.com/react-textarea-autosize/-/react-textarea-autosize-7.1.0.tgz#3132cb77e65d94417558d37c0bfe415a5afd3445" @@ -11534,6 +11933,11 @@ redent@^1.0.0: indent-string "^2.1.0" strip-indent "^1.0.1" +reflect.ownkeys@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/reflect.ownkeys/-/reflect.ownkeys-0.2.0.tgz#749aceec7f3fdf8b63f927a04809e90c5c0b3460" + integrity sha1-dJrO7H8/34tj+SegSAnpDFwLNGA= + refractor@^2.4.1: version "2.9.0" resolved "https://registry.yarnpkg.com/refractor/-/refractor-2.9.0.tgz#0a381aadb51513e4e6ec1ed410b5104dd65e2489" @@ -11550,7 +11954,7 @@ regenerate-unicode-properties@^8.0.2: dependencies: regenerate "^1.4.0" -regenerate@^1.4.0: +regenerate@^1.2.1, regenerate@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.0.tgz#4a856ec4b56e4077c557589cae85e7a4c8869a11" integrity sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg== @@ -11614,6 +12018,15 @@ regexpp@^2.0.1: resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-2.0.1.tgz#8d19d31cf632482b589049f8281f93dbcba4d07f" integrity sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw== +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" + regexpu-core@^4.5.4: version "4.5.4" resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.5.4.tgz#080d9d02289aa87fe1667a4f5136bc98a6aebaae" @@ -11626,11 +12039,23 @@ regexpu-core@^4.5.4: unicode-match-property-ecmascript "^1.0.4" unicode-match-property-value-ecmascript "^1.1.0" +regjsgen@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7" + integrity sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc= + regjsgen@^0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.5.0.tgz#a7634dc08f89209c2049adda3525711fb97265dd" integrity sha512-RnIrLhrXCX5ow/E5/Mh2O4e/oa1/jW0eaBKTSy3LaCj+M3Bqvm97GWDp2yUtzIs4LEn65zR2yiYGFqb2ApnzDA== +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" + regjsparser@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.6.0.tgz#f1e6ae8b7da2bae96c99399b868cd6c933a2ba9c" @@ -11819,7 +12244,7 @@ resolve@1.10.0: dependencies: path-parse "^1.0.6" -resolve@^1.1.6, resolve@^1.11.0: +resolve@1.x, resolve@^1.1.6, resolve@^1.11.0: version "1.11.1" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.11.1.tgz#ea10d8110376982fef578df8fc30b9ac30a07a3e" integrity sha512-vIpgF6wfuJOZI7KKKSP+HmiKggadPQAdsp5HiC1mvqnfp0gF1vdwgBWZIdrVft9pgqoMFQN+R7BSWZiBxx+BBw== @@ -11883,6 +12308,14 @@ ripemd160@^2.0.0, ripemd160@^2.0.1: 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@^4.8.4: version "4.8.4" resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-4.8.4.tgz#b50e6b34583f3dd89329a2f23a8a2be072845911" @@ -12046,7 +12479,7 @@ semver-truncate@^1.1.2: dependencies: semver "^5.3.0" -"semver@2 || 3 || 4 || 5", semver@^5.3.0, semver@^5.4.1, semver@^5.5.0, semver@^5.5.1, semver@^5.6.0: +"semver@2 || 3 || 4 || 5", semver@^5.3.0, semver@^5.4.1, semver@^5.5, semver@^5.5.0, semver@^5.5.1, semver@^5.6.0, semver@^5.7.0: version "5.7.0" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.0.tgz#790a7cf6fea5459bac96110b29b60412dc8ff96b" integrity sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA== @@ -12624,6 +13057,11 @@ strict-uri-encode@^1.0.0: resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713" integrity sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM= +string-hash@^1.1.1: + version "1.1.3" + resolved "https://registry.yarnpkg.com/string-hash/-/string-hash-1.1.3.tgz#e8aafc0ac1855b4666929ed7dd1275df5d6c811b" + integrity sha1-6Kr8CsGFW0Zmkp7X3RJ1311sgRs= + string-length@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/string-length/-/string-length-2.0.0.tgz#d40dbb686a3ace960c1cffca562bf2c45f8363ed" @@ -12687,6 +13125,15 @@ string.prototype.padstart@^3.0.0: es-abstract "^1.4.3" function-bind "^1.0.2" +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" @@ -12791,6 +13238,11 @@ strip-outer@^1.0.0: dependencies: escape-string-regexp "^1.0.2" +style-inject@0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/style-inject/-/style-inject-0.3.0.tgz#d21c477affec91811cc82355832a700d22bf8dd3" + integrity sha512-IezA2qp+vcdlhJaVm5SOdPPTUu0FCEqfNSli2vRuSIBbu5Nq5UvygTk/VzeCqfLz2Atj3dVII5QBKGZRZ0edzw== + style-loader@0.23.1, style-loader@^0.23.1: version "0.23.1" resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-0.23.1.tgz#cb9154606f3e771ab6c4ab637026a1049174d925" @@ -12820,7 +13272,14 @@ supports-color@^2.0.0: resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= -supports-color@^5.3.0: +supports-color@^3.2.3: + 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.3.0, supports-color@^5.4.0: version "5.5.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== @@ -13184,6 +13643,21 @@ trough@^1.0.0: dependencies: glob "^7.1.2" +ts-jest@^24.0.2: + version "24.0.2" + resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-24.0.2.tgz#8dde6cece97c31c03e80e474c749753ffd27194d" + integrity sha512-h6ZCZiA1EQgjczxq+uGLXQlNgeg02WWJBbeT8j6nyIBRQdglqbvzDoHahTEIiS6Eor6x8mK6PfZ7brQ9Q6tzHw== + dependencies: + bs-logger "0.x" + buffer-from "1.x" + fast-json-stable-stringify "2.x" + json5 "2.x" + make-error "1.x" + mkdirp "0.x" + resolve "1.x" + semver "^5.5" + yargs-parser "10.x" + ts-pnp@1.1.2, ts-pnp@^1.0.0, ts-pnp@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/ts-pnp/-/ts-pnp-1.1.2.tgz#be8e4bfce5d00f0f58e0666a82260c34a57af552" @@ -14241,7 +14715,7 @@ yallist@^3.0.0, yallist@^3.0.2: 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: +yargs-parser@10.x, 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==