From 53d5da2771cec299e7c5f893ab97cd4f04580e23 Mon Sep 17 00:00:00 2001 From: homer0 Date: Sun, 25 Aug 2019 02:47:42 -0300 Subject: [PATCH 01/15] chore(project): update dependencies --- package.json | 16 +- yarn.lock | 693 ++++++++++++++++++++++++++++++++++++++++++++++++--- 2 files changed, 661 insertions(+), 48 deletions(-) diff --git a/package.json b/package.json index 751d935..56c9628 100644 --- a/package.json +++ b/package.json @@ -7,15 +7,15 @@ "author": "Leonardo Apiwan (@homer0) ", "license": "MIT", "dependencies": { - "projext": "^7.0.0", - "wootils": "^2.6.0", + "projext": "^7.0.1", + "wootils": "^2.6.5", "jimple": "^1.5.0", "fs-extra": "^8.1.0", "extend": "^3.0.2", "magic-string": "0.25.3", - "rollup": "^1.17.0", - "rollup-plugin-commonjs": "^10.0.1", + "rollup": "^1.20.2", + "rollup-plugin-commonjs": "^10.0.2", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-uglify": "^6.0.2", "rollup-plugin-html": "0.2.1", @@ -37,7 +37,7 @@ "prettysize": "^2.0.0", "colors": "^1.3.3", - "core-js": "^3.1.4", + "core-js": "^3.2.1", "regenerator-runtime": "0.13.3", "@babel/core": "7.5.5", @@ -50,15 +50,15 @@ "eslint-plugin-node": "^9.1.0", "@babel/plugin-transform-runtime": "7.5.5", "jest-ex": "^6.1.1", - "jest-cli": "^24.8.0", + "jest-cli": "^24.9.0", "jasmine-expect": "^4.0.3", "jimpex": "^4.0.1", "esdoc": "^1.1.0", "esdoc-standard-plugin": "^1.0.0", "esdoc-node": "^1.0.4", "leasot": "^8.0.0", - "coveralls": "^3.0.5", - "husky": "^3.0.2" + "coveralls": "^3.0.6", + "husky": "^3.0.4" }, "engine-strict": true, "engines": { diff --git a/yarn.lock b/yarn.lock index a9fbffe..5932b88 100644 --- a/yarn.lock +++ b/yarn.lock @@ -858,6 +858,15 @@ chalk "^2.0.1" slash "^2.0.0" +"@jest/console@^24.9.0": + version "24.9.0" + resolved "https://registry.yarnpkg.com/@jest/console/-/console-24.9.0.tgz#79b1bc06fb74a8cfb01cbdedf945584b1b9707f0" + integrity sha512-Zuj6b8TnKXi3q4ymac8EQfc3ea/uhLeCGThFqXeC8H9/raaH8ARPUTdId+XyGd03Z4In0/VjD2OYFcBF09fNLQ== + dependencies: + "@jest/source-map" "^24.9.0" + chalk "^2.0.1" + slash "^2.0.0" + "@jest/core@^24.8.0": version "24.8.0" resolved "https://registry.yarnpkg.com/@jest/core/-/core-24.8.0.tgz#fbbdcd42a41d0d39cddbc9f520c8bab0c33eed5b" @@ -891,6 +900,40 @@ rimraf "^2.5.4" strip-ansi "^5.0.0" +"@jest/core@^24.9.0": + version "24.9.0" + resolved "https://registry.yarnpkg.com/@jest/core/-/core-24.9.0.tgz#2ceccd0b93181f9c4850e74f2a9ad43d351369c4" + integrity sha512-Fogg3s4wlAr1VX7q+rhV9RVnUv5tD7VuWfYy1+whMiWUrvl7U3QJSJyWcDio9Lq2prqYsZaeTv2Rz24pWGkJ2A== + dependencies: + "@jest/console" "^24.7.1" + "@jest/reporters" "^24.9.0" + "@jest/test-result" "^24.9.0" + "@jest/transform" "^24.9.0" + "@jest/types" "^24.9.0" + ansi-escapes "^3.0.0" + chalk "^2.0.1" + exit "^0.1.2" + graceful-fs "^4.1.15" + jest-changed-files "^24.9.0" + jest-config "^24.9.0" + jest-haste-map "^24.9.0" + jest-message-util "^24.9.0" + jest-regex-util "^24.3.0" + jest-resolve "^24.9.0" + jest-resolve-dependencies "^24.9.0" + jest-runner "^24.9.0" + jest-runtime "^24.9.0" + jest-snapshot "^24.9.0" + jest-util "^24.9.0" + jest-validate "^24.9.0" + jest-watcher "^24.9.0" + micromatch "^3.1.10" + p-each-series "^1.0.0" + realpath-native "^1.1.0" + rimraf "^2.5.4" + slash "^2.0.0" + strip-ansi "^5.0.0" + "@jest/environment@^24.8.0": version "24.8.0" resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-24.8.0.tgz#0342261383c776bdd652168f68065ef144af0eac" @@ -901,6 +944,16 @@ "@jest/types" "^24.8.0" jest-mock "^24.8.0" +"@jest/environment@^24.9.0": + version "24.9.0" + resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-24.9.0.tgz#21e3afa2d65c0586cbd6cbefe208bafade44ab18" + integrity sha512-5A1QluTPhvdIPFYnO3sZC3smkNeXPVELz7ikPbhUj0bQjB07EoE9qtLrem14ZUYWdVayYbsjVwIiL4WBIMV4aQ== + dependencies: + "@jest/fake-timers" "^24.9.0" + "@jest/transform" "^24.9.0" + "@jest/types" "^24.9.0" + jest-mock "^24.9.0" + "@jest/fake-timers@^24.8.0": version "24.8.0" resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-24.8.0.tgz#2e5b80a4f78f284bcb4bd5714b8e10dd36a8d3d1" @@ -910,6 +963,15 @@ jest-message-util "^24.8.0" jest-mock "^24.8.0" +"@jest/fake-timers@^24.9.0": + version "24.9.0" + resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-24.9.0.tgz#ba3e6bf0eecd09a636049896434d306636540c93" + integrity sha512-eWQcNa2YSwzXWIMC5KufBh3oWRIijrQFROsIqt6v/NS9Io/gknw1jsAC9c+ih/RQX4A3O7SeWAhQeN0goKhT9A== + dependencies: + "@jest/types" "^24.9.0" + jest-message-util "^24.9.0" + jest-mock "^24.9.0" + "@jest/reporters@^24.8.0": version "24.8.0" resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-24.8.0.tgz#075169cd029bddec54b8f2c0fc489fd0b9e05729" @@ -937,6 +999,33 @@ source-map "^0.6.0" string-length "^2.0.0" +"@jest/reporters@^24.9.0": + version "24.9.0" + resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-24.9.0.tgz#86660eff8e2b9661d042a8e98a028b8d631a5b43" + integrity sha512-mu4X0yjaHrffOsWmVLzitKmmmWSQ3GGuefgNscUSWNiUNcEOSEQk9k3pERKEQVBb0Cnn88+UESIsZEMH3o88Gw== + dependencies: + "@jest/environment" "^24.9.0" + "@jest/test-result" "^24.9.0" + "@jest/transform" "^24.9.0" + "@jest/types" "^24.9.0" + chalk "^2.0.1" + exit "^0.1.2" + glob "^7.1.2" + istanbul-lib-coverage "^2.0.2" + istanbul-lib-instrument "^3.0.1" + istanbul-lib-report "^2.0.4" + istanbul-lib-source-maps "^3.0.1" + istanbul-reports "^2.2.6" + jest-haste-map "^24.9.0" + jest-resolve "^24.9.0" + jest-runtime "^24.9.0" + jest-util "^24.9.0" + jest-worker "^24.6.0" + node-notifier "^5.4.2" + slash "^2.0.0" + source-map "^0.6.0" + string-length "^2.0.0" + "@jest/source-map@^24.3.0": version "24.3.0" resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-24.3.0.tgz#563be3aa4d224caf65ff77edc95cd1ca4da67f28" @@ -946,6 +1035,15 @@ graceful-fs "^4.1.15" source-map "^0.6.0" +"@jest/source-map@^24.9.0": + version "24.9.0" + resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-24.9.0.tgz#0e263a94430be4b41da683ccc1e6bffe2a191714" + integrity sha512-/Xw7xGlsZb4MJzNDgB7PW5crou5JqWiBQaz6xyPd3ArOg2nfn/PunV8+olXbbEZzNl591o5rWKE9BRDaFAuIBg== + dependencies: + callsites "^3.0.0" + graceful-fs "^4.1.15" + source-map "^0.6.0" + "@jest/test-result@^24.8.0": version "24.8.0" resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-24.8.0.tgz#7675d0aaf9d2484caa65e048d9b467d160f8e9d3" @@ -955,6 +1053,15 @@ "@jest/types" "^24.8.0" "@types/istanbul-lib-coverage" "^2.0.0" +"@jest/test-result@^24.9.0": + version "24.9.0" + resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-24.9.0.tgz#11796e8aa9dbf88ea025757b3152595ad06ba0ca" + integrity sha512-XEFrHbBonBJ8dGp2JmF8kP/nQI/ImPpygKHwQ/SY+es59Z3L5PI4Qb9TQQMAEeYsThG1xF0k6tmG0tIKATNiiA== + dependencies: + "@jest/console" "^24.9.0" + "@jest/types" "^24.9.0" + "@types/istanbul-lib-coverage" "^2.0.0" + "@jest/test-sequencer@^24.8.0": version "24.8.0" resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-24.8.0.tgz#2f993bcf6ef5eb4e65e8233a95a3320248cf994b" @@ -965,6 +1072,16 @@ jest-runner "^24.8.0" jest-runtime "^24.8.0" +"@jest/test-sequencer@^24.9.0": + version "24.9.0" + resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-24.9.0.tgz#f8f334f35b625a4f2f355f2fe7e6036dad2e6b31" + integrity sha512-6qqsU4o0kW1dvA95qfNog8v8gkRN9ph6Lz7r96IvZpHdNipP2cBcb07J1Z45mz/VIS01OHJ3pY8T5fUY38tg4A== + dependencies: + "@jest/test-result" "^24.9.0" + jest-haste-map "^24.9.0" + jest-runner "^24.9.0" + jest-runtime "^24.9.0" + "@jest/transform@^24.8.0": version "24.8.0" resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-24.8.0.tgz#628fb99dce4f9d254c6fd9341e3eea262e06fef5" @@ -986,6 +1103,28 @@ source-map "^0.6.1" write-file-atomic "2.4.1" +"@jest/transform@^24.9.0": + version "24.9.0" + resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-24.9.0.tgz#4ae2768b296553fadab09e9ec119543c90b16c56" + integrity sha512-TcQUmyNRxV94S0QpMOnZl0++6RMiqpbH/ZMccFB/amku6Uwvyb1cjYX7xkp5nGNkbX4QPH/FcB6q1HBTHynLmQ== + dependencies: + "@babel/core" "^7.1.0" + "@jest/types" "^24.9.0" + babel-plugin-istanbul "^5.1.0" + chalk "^2.0.1" + convert-source-map "^1.4.0" + fast-json-stable-stringify "^2.0.0" + graceful-fs "^4.1.15" + jest-haste-map "^24.9.0" + jest-regex-util "^24.9.0" + jest-util "^24.9.0" + micromatch "^3.1.10" + pirates "^4.0.1" + realpath-native "^1.1.0" + slash "^2.0.0" + source-map "^0.6.1" + write-file-atomic "2.4.1" + "@jest/types@^24.8.0": version "24.8.0" resolved "https://registry.yarnpkg.com/@jest/types/-/types-24.8.0.tgz#f31e25948c58f0abd8c845ae26fcea1491dea7ad" @@ -995,6 +1134,15 @@ "@types/istanbul-reports" "^1.1.1" "@types/yargs" "^12.0.9" +"@jest/types@^24.9.0": + version "24.9.0" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-24.9.0.tgz#63cb26cb7500d069e5a389441a7c6ab5e909fc59" + integrity sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw== + dependencies: + "@types/istanbul-lib-coverage" "^2.0.0" + "@types/istanbul-reports" "^1.1.1" + "@types/yargs" "^13.0.0" + "@nodelib/fs.scandir@2.1.1": version "2.1.1" resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.1.tgz#7fa8fed654939e1a39753d286b48b4836d00e0eb" @@ -1093,11 +1241,16 @@ resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.3.tgz#3dca0e3f33b200fc7d1139c0cd96c1268cadfd9d" integrity sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA== -"@types/node@*", "@types/node@^12.6.2": +"@types/node@*": version "12.6.8" resolved "https://registry.yarnpkg.com/@types/node/-/node-12.6.8.tgz#e469b4bf9d1c9832aee4907ba8a051494357c12c" integrity sha512-aX+gFgA5GHcDi89KG5keey2zf0WfZk/HAQotEamsK2kbey+8yGKcson0hbK8E+v0NArlCJQCqMP161YhV6ZXLg== +"@types/node@^12.7.2": + version "12.7.2" + resolved "https://registry.yarnpkg.com/@types/node/-/node-12.7.2.tgz#c4e63af5e8823ce9cc3f0b34f7b998c2171f0c44" + integrity sha512-dyYO+f6ihZEtNPDcWNR1fkoTDf3zAK3lAABDze3mz6POyIercH0lEUawUFXlG8xaQZmm1yEBON/4TsYv/laDYg== + "@types/normalize-package-data@^2.4.0": version "2.4.0" resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz#e486d0d97396d79beedd0a6e33f4534ff6b4973e" @@ -1115,11 +1268,23 @@ resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-1.0.1.tgz#0a851d3bd96498fa25c33ab7278ed3bd65f06c3e" integrity sha512-l42BggppR6zLmpfU6fq9HEa2oGPEI8yrSPL3GITjfRInppYFahObbIQOQK3UGxEnyQpltZLaPe75046NOZQikw== +"@types/yargs-parser@*": + version "13.0.0" + resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-13.0.0.tgz#453743c5bbf9f1bed61d959baab5b06be029b2d0" + integrity sha512-wBlsw+8n21e6eTd4yVv8YD/E3xq0O6nNnJIquutAsFGE7EyMKz7W6RNT6BRu1SmdgmlCZ9tb0X+j+D6HGr8pZw== + "@types/yargs@^12.0.2", "@types/yargs@^12.0.9": version "12.0.12" resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-12.0.12.tgz#45dd1d0638e8c8f153e87d296907659296873916" integrity sha512-SOhuU4wNBxhhTHxYaiG5NY4HBhDIDnJF60GU+2LqHAdKKer86//e4yg69aENCtQ04n0ovz+tq2YPME5t5yp4pw== +"@types/yargs@^13.0.0": + version "13.0.2" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-13.0.2.tgz#a64674fc0149574ecd90ba746e932b5a5f7b3653" + integrity sha512-lwwgizwk/bIIU+3ELORkyuOgDjCh7zuWDFqRtPPhhVgq9N1F7CvLNKg1TX4f2duwtKQ0p044Au9r1PLIXHrIzQ== + dependencies: + "@types/yargs-parser" "*" + abab@^1.0.0: version "1.0.4" resolved "https://registry.yarnpkg.com/abab/-/abab-1.0.4.tgz#5faad9c2c07f60dd76770f71cf025b62a63cfd4e" @@ -1178,11 +1343,16 @@ acorn@^5.5.3: resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.7.3.tgz#67aa231bf8812974b85235a96771eb6bd07ea279" integrity sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw== -acorn@^6.0.1, acorn@^6.0.7, acorn@^6.2.0: +acorn@^6.0.1, acorn@^6.0.7: version "6.2.1" resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.2.1.tgz#3ed8422d6dec09e6121cc7a843ca86a330a86b51" integrity sha512-JD0xT5FCRDNyjDda3Lrg/IxFscp9q4tiYtxE1/nOzlKCk7hIRuYjhq1kCNkbPjMRMZuFq20HNQn1I9k8Oj0E+Q== +acorn@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.0.0.tgz#26b8d1cd9a9b700350b71c0905546f64d1284e7a" + integrity sha512-PaF/MduxijYYt7unVGRuds1vBC9bFxbNf+VWqhOClfdgy7RlVkQqt610ig1/yxTgsDIfW1cWDel5EBbOy3jdtQ== + add-matchers@0.6.2: version "0.6.2" resolved "https://registry.yarnpkg.com/add-matchers/-/add-matchers-0.6.2.tgz#faeb2fa9380228c1b0da5f21a655c69304dd2011" @@ -1448,6 +1618,19 @@ babel-jest@^24.8.0: chalk "^2.4.2" slash "^2.0.0" +babel-jest@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-24.9.0.tgz#3fc327cb8467b89d14d7bc70e315104a783ccd54" + integrity sha512-ntuddfyiN+EhMw58PTNL1ph4C9rECiQXjI4nMMBKBaNjXvqLdkXpPRcMSr4iyBrJg/+wz9brFUD6RhOAT6r4Iw== + dependencies: + "@jest/transform" "^24.9.0" + "@jest/types" "^24.9.0" + "@types/babel__core" "^7.1.0" + babel-plugin-istanbul "^5.1.0" + babel-preset-jest "^24.9.0" + chalk "^2.4.2" + slash "^2.0.0" + babel-messages@^6.23.0, babel-messages@^6.8.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" @@ -1479,6 +1662,13 @@ babel-plugin-jest-hoist@^24.6.0: dependencies: "@types/babel__traverse" "^7.0.6" +babel-plugin-jest-hoist@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-24.9.0.tgz#4f837091eb407e01447c8843cbec546d0002d756" + integrity sha512-2EMA2P8Vp7lG0RAzr4HXqtYwacfMErOuv1U3wrvxHX6rD1sV6xS3WXG3r8TRQ2r6w8OhvSdWt+z41hQNwNm3Xw== + dependencies: + "@types/babel__traverse" "^7.0.6" + babel-preset-jest@^24.6.0: version "24.6.0" resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-24.6.0.tgz#66f06136eefce87797539c0d63f1769cc3915984" @@ -1487,6 +1677,14 @@ babel-preset-jest@^24.6.0: "@babel/plugin-syntax-object-rest-spread" "^7.0.0" babel-plugin-jest-hoist "^24.6.0" +babel-preset-jest@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-24.9.0.tgz#192b521e2217fb1d1f67cf73f70c336650ad3cdc" + integrity sha512-izTUuhE4TMfTRPF92fFwD2QfdXaZW08qvWTFCI51V8rW5x00UuPgc3ajRoWofXOuxjfcOM5zzSYsQS3H8KGCAg== + dependencies: + "@babel/plugin-syntax-object-rest-spread" "^7.0.0" + babel-plugin-jest-hoist "^24.9.0" + babel-runtime@^6.22.0, babel-runtime@^6.23.0, babel-runtime@^6.26.0, babel-runtime@^6.9.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" @@ -1763,7 +1961,7 @@ camelcase@^4.0.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" integrity sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0= -camelcase@^5.0.0: +camelcase@^5.0.0, camelcase@^5.3.1: version "5.3.1" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== @@ -2024,6 +2222,11 @@ commander@^2.20.0, commander@^2.8.1, commander@~2.20.0: resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.0.tgz#d58bb2b5c1ee8f87b0d340027e9e94e222c5a422" integrity sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ== +commander@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-3.0.0.tgz#0641ea00838c7a964627f04cddc336a2deddd60a" + integrity sha512-pl3QrGOBa9RZaslQiqnnKX2J068wcQw7j9AIaBQ9/JEp5RY6je4jKTImg0Bd+rpoONSe7GUFSgkxLeo17m3Pow== + commander@~2.19.0: version "2.19.0" resolved "https://registry.yarnpkg.com/commander/-/commander-2.19.0.tgz#f6198aa84e5b83c46054b94ddedbfed5ee9ff12a" @@ -2149,10 +2352,10 @@ core-js@^2.4.0: resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.9.tgz#6b4b214620c834152e179323727fc19741b084f2" integrity sha512-HOpZf6eXmnl7la+cUdMnLvUxKNqLUzJvgIziQ0DiF3JwSImNphIqdGqzj6hIKyX04MmV0poclQ7+wjWvxQyR2A== -core-js@^3.1.4: - version "3.1.4" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.1.4.tgz#3a2837fc48e582e1ae25907afcd6cf03b0cc7a07" - integrity sha512-YNZN8lt82XIMLnLirj9MhKDFZHalwzzrL9YLt6eb0T5D0EDl4IQ90IGkua8mHbnxNrkj1d8hbdizMc0Qmg1WnQ== +core-js@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.2.1.tgz#cd41f38534da6cc59f7db050fe67307de9868b09" + integrity sha512-Qa5XSVefSVPRxy2XfUC13WbvqkxhkwB3ve+pgCQveNgYzbM/UxZeu1dcOX/xr4UmfUd+muuvsaxilQzCyUurMw== core-util-is@1.0.2, core-util-is@~1.0.0: version "1.0.2" @@ -2169,10 +2372,10 @@ cosmiconfig@^5.2.1: js-yaml "^3.13.1" parse-json "^4.0.0" -coveralls@^3.0.5: - version "3.0.5" - resolved "https://registry.yarnpkg.com/coveralls/-/coveralls-3.0.5.tgz#28d7274c6c9827aa85537eab82d66e7e62d0d527" - integrity sha512-/KD7PGfZv/tjKB6LoW97jzIgFqem0Tu9tZL9/iwBnBd8zkIZp7vT1ZSHNvnr0GSQMV/LTMxUstWg8WcDDUVQKg== +coveralls@^3.0.6: + version "3.0.6" + resolved "https://registry.yarnpkg.com/coveralls/-/coveralls-3.0.6.tgz#5c63b2759b6781118e7439bd870ba5e9ee428b25" + integrity sha512-Pgh4v3gCI4T/9VijVrm8Ym5v0OgjvGLKj3zTUwkvsCiwqae/p6VLzpsFNjQS2i6ewV7ef+DjFJ5TSKxYt/mCrA== dependencies: growl "~> 1.10.0" js-yaml "^3.13.1" @@ -2454,6 +2657,11 @@ diff-sequences@^24.3.0: resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-24.3.0.tgz#0f20e8a1df1abddaf4d9c226680952e64118b975" integrity sha512-xLqpez+Zj9GKSnPWS0WZw1igGocZ+uua8+y+5dDNTT934N3QuY1sp2LkHzwiaYQGz60hMq0pjAshdeXm5VUOEw== +diff-sequences@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-24.9.0.tgz#5715d6244e2aa65f48bba0bc972db0b0b11e95b5" + integrity sha512-Dj6Wk3tWyTE+Fo1rW8v0Xhwk80um6yFYKbuAxc9c3EZxIHFDYwbi34Uk42u1CdnIiVorvt4RmlSDjIPyzGC2ew== + dir-glob@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" @@ -3010,6 +3218,18 @@ expect@^24.8.0: jest-message-util "^24.8.0" jest-regex-util "^24.3.0" +expect@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/expect/-/expect-24.9.0.tgz#b75165b4817074fa4a157794f46fe9f1ba15b6ca" + integrity sha512-wvVAx8XIol3Z5m9zvZXiyZOQ+sRJqNTIm6sGjdWlaZIeupQGO3WbYI+15D/AmEwZywL6wtJkbAbJtzkOfBuR0Q== + dependencies: + "@jest/types" "^24.9.0" + ansi-styles "^3.2.0" + jest-get-type "^24.9.0" + jest-matcher-utils "^24.9.0" + jest-message-util "^24.9.0" + jest-regex-util "^24.9.0" + express@^4.17.1: version "4.17.1" resolved "https://registry.yarnpkg.com/express/-/express-4.17.1.tgz#4491fc38605cf51f8629d39c2b5d026f98a4c134" @@ -3712,10 +3932,10 @@ http-signature@~1.2.0: jsprim "^1.2.2" sshpk "^1.7.0" -husky@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/husky/-/husky-3.0.2.tgz#e78fd2ae16edca59fc88e56aeb8d70acdcc1c082" - integrity sha512-WXCtaME2x0o4PJlKY4ap8BzLA+D0zlvefqAvLCPriOOu+x0dpO5uc5tlB7CY6/0SE2EESmoZsj4jW5D09KrJoA== +husky@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/husky/-/husky-3.0.4.tgz#10a48ac11ab50859b0939750fa0b4e07ad0bf669" + integrity sha512-7Rnt8aJfy+MlV28snmYK7O7vWwtOfeVxV6KhLpUFXlmx5ukQ1nQmNUB7QsAwSgdySB5X+bm7q7JIRgazqBUzKA== dependencies: chalk "^2.4.2" cosmiconfig "^5.2.1" @@ -3724,7 +3944,7 @@ husky@^3.0.2: is-ci "^2.0.0" opencollective-postinstall "^2.0.2" pkg-dir "^4.2.0" - please-upgrade-node "^3.1.1" + please-upgrade-node "^3.2.0" read-pkg "^5.1.1" run-node "^1.0.0" slash "^3.0.0" @@ -4242,7 +4462,7 @@ istanbul-lib-source-maps@^3.0.1: rimraf "^2.6.3" source-map "^0.6.1" -istanbul-reports@^2.1.1: +istanbul-reports@^2.1.1, istanbul-reports@^2.2.6: version "2.2.6" resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-2.2.6.tgz#7b4f2660d82b29303a8fe6091f8ca4bf058da1af" integrity sha512-SKi4rnMyLBKe0Jy2uUdx28h8oG7ph2PPuQPvIAh31d+Ci+lSiEu4C+h3oBPuJ9+mPKhOyW0M8gY4U5NM1WLeXA== @@ -4265,6 +4485,15 @@ jest-changed-files@^24.8.0: execa "^1.0.0" throat "^4.0.0" +jest-changed-files@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-24.9.0.tgz#08d8c15eb79a7fa3fc98269bc14b451ee82f8039" + integrity sha512-6aTWpe2mHF0DhL28WjdkO8LyGjs3zItPET4bMSeXU6T3ub4FPMw+mcOcbdGXQOAfmLcxofD23/5Bl9Z4AkFwqg== + dependencies: + "@jest/types" "^24.9.0" + execa "^1.0.0" + throat "^4.0.0" + jest-cli@^24.8.0: version "24.8.0" resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-24.8.0.tgz#b075ac914492ed114fa338ade7362a301693e989" @@ -4284,6 +4513,25 @@ jest-cli@^24.8.0: realpath-native "^1.1.0" yargs "^12.0.2" +jest-cli@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-24.9.0.tgz#ad2de62d07472d419c6abc301fc432b98b10d2af" + integrity sha512-+VLRKyitT3BWoMeSUIHRxV/2g8y9gw91Jh5z2UmXZzkZKpbC08CSehVxgHUwTpy+HwGcns/tqafQDJW7imYvGg== + dependencies: + "@jest/core" "^24.9.0" + "@jest/test-result" "^24.9.0" + "@jest/types" "^24.9.0" + chalk "^2.0.1" + exit "^0.1.2" + import-local "^2.0.0" + is-ci "^2.0.0" + jest-config "^24.9.0" + jest-util "^24.9.0" + jest-validate "^24.9.0" + prompts "^2.0.1" + realpath-native "^1.1.0" + yargs "^13.3.0" + jest-config@^24.8.0: version "24.8.0" resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-24.8.0.tgz#77db3d265a6f726294687cbbccc36f8a76ee0f4f" @@ -4307,6 +4555,29 @@ jest-config@^24.8.0: pretty-format "^24.8.0" realpath-native "^1.1.0" +jest-config@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-24.9.0.tgz#fb1bbc60c73a46af03590719efa4825e6e4dd1b5" + integrity sha512-RATtQJtVYQrp7fvWg6f5y3pEFj9I+H8sWw4aKxnDZ96mob5i5SD6ZEGWgMLXQ4LE8UurrjbdlLWdUeo+28QpfQ== + dependencies: + "@babel/core" "^7.1.0" + "@jest/test-sequencer" "^24.9.0" + "@jest/types" "^24.9.0" + babel-jest "^24.9.0" + chalk "^2.0.1" + glob "^7.1.1" + jest-environment-jsdom "^24.9.0" + jest-environment-node "^24.9.0" + jest-get-type "^24.9.0" + jest-jasmine2 "^24.9.0" + jest-regex-util "^24.3.0" + jest-resolve "^24.9.0" + jest-util "^24.9.0" + jest-validate "^24.9.0" + micromatch "^3.1.10" + pretty-format "^24.9.0" + realpath-native "^1.1.0" + jest-diff@^24.8.0: version "24.8.0" resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-24.8.0.tgz#146435e7d1e3ffdf293d53ff97e193f1d1546172" @@ -4317,6 +4588,16 @@ jest-diff@^24.8.0: jest-get-type "^24.8.0" pretty-format "^24.8.0" +jest-diff@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-24.9.0.tgz#931b7d0d5778a1baf7452cb816e325e3724055da" + integrity sha512-qMfrTs8AdJE2iqrTp0hzh7kTd2PQWrsFyj9tORoKmu32xjPjeE4NyjVRDz8ybYwqS2ik8N4hsIpiVTyFeo2lBQ== + dependencies: + chalk "^2.0.1" + diff-sequences "^24.9.0" + jest-get-type "^24.9.0" + pretty-format "^24.9.0" + jest-docblock@^24.3.0: version "24.3.0" resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-24.3.0.tgz#b9c32dac70f72e4464520d2ba4aec02ab14db5dd" @@ -4335,6 +4616,17 @@ jest-each@^24.8.0: jest-util "^24.8.0" pretty-format "^24.8.0" +jest-each@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-24.9.0.tgz#eb2da602e2a610898dbc5f1f6df3ba86b55f8b05" + integrity sha512-ONi0R4BvW45cw8s2Lrx8YgbeXL1oCQ/wIDwmsM3CqM/nlblNCPmnC3IPQlMbRFZu3wKdQ2U8BqM6lh3LJ5Bsog== + dependencies: + "@jest/types" "^24.9.0" + chalk "^2.0.1" + jest-get-type "^24.9.0" + jest-util "^24.9.0" + pretty-format "^24.9.0" + jest-environment-jsdom@^24.8.0: version "24.8.0" resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-24.8.0.tgz#300f6949a146cabe1c9357ad9e9ecf9f43f38857" @@ -4347,6 +4639,18 @@ jest-environment-jsdom@^24.8.0: jest-util "^24.8.0" jsdom "^11.5.1" +jest-environment-jsdom@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-24.9.0.tgz#4b0806c7fc94f95edb369a69cc2778eec2b7375b" + integrity sha512-Zv9FV9NBRzLuALXjvRijO2351DRQeLYXtpD4xNvfoVFw21IOKNhZAEUKcbiEtjTkm2GsJ3boMVgkaR7rN8qetA== + dependencies: + "@jest/environment" "^24.9.0" + "@jest/fake-timers" "^24.9.0" + "@jest/types" "^24.9.0" + jest-mock "^24.9.0" + jest-util "^24.9.0" + jsdom "^11.5.1" + jest-environment-node@^24.8.0: version "24.8.0" resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-24.8.0.tgz#d3f726ba8bc53087a60e7a84ca08883a4c892231" @@ -4358,6 +4662,17 @@ jest-environment-node@^24.8.0: jest-mock "^24.8.0" jest-util "^24.8.0" +jest-environment-node@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-24.9.0.tgz#333d2d2796f9687f2aeebf0742b519f33c1cbfd3" + integrity sha512-6d4V2f4nxzIzwendo27Tr0aFm+IXWa0XEUnaH6nU0FMaozxovt+sfRvh4J47wL1OvF83I3SSTu0XK+i4Bqe7uA== + dependencies: + "@jest/environment" "^24.9.0" + "@jest/fake-timers" "^24.9.0" + "@jest/types" "^24.9.0" + jest-mock "^24.9.0" + jest-util "^24.9.0" + jest-ex@^6.1.1: version "6.1.1" resolved "https://registry.yarnpkg.com/jest-ex/-/jest-ex-6.1.1.tgz#3ce1b9d216ef5d224eeca78da2aba46831354f24" @@ -4376,6 +4691,11 @@ jest-get-type@^24.8.0: resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-24.8.0.tgz#a7440de30b651f5a70ea3ed7ff073a32dfe646fc" integrity sha512-RR4fo8jEmMD9zSz2nLbs2j0zvPpk/KCEz3a62jJWbd2ayNo0cb+KFRxPHVhE4ZmgGJEQp0fosmNz84IfqM8cMQ== +jest-get-type@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-24.9.0.tgz#1684a0c8a50f2e4901b6644ae861f579eed2ef0e" + integrity sha512-lUseMzAley4LhIcpSP9Jf+fTrQ4a1yHQwLNeeVa2cEmbCGeoZAtYPOIv8JaxLD/sUpKxetKGP+gsHl8f8TSj8Q== + jest-haste-map@^24.8.0: version "24.8.1" resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-24.8.1.tgz#f39cc1d2b1d907e014165b4bd5a957afcb992982" @@ -4395,6 +4715,25 @@ jest-haste-map@^24.8.0: optionalDependencies: fsevents "^1.2.7" +jest-haste-map@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-24.9.0.tgz#b38a5d64274934e21fa417ae9a9fbeb77ceaac7d" + integrity sha512-kfVFmsuWui2Sj1Rp1AJ4D9HqJwE4uwTlS/vO+eRUaMmd54BFpli2XhMQnPC2k4cHFVbB2Q2C+jtI1AGLgEnCjQ== + dependencies: + "@jest/types" "^24.9.0" + anymatch "^2.0.0" + fb-watchman "^2.0.0" + graceful-fs "^4.1.15" + invariant "^2.2.4" + jest-serializer "^24.9.0" + jest-util "^24.9.0" + jest-worker "^24.9.0" + micromatch "^3.1.10" + sane "^4.0.3" + walker "^1.0.7" + optionalDependencies: + fsevents "^1.2.7" + jest-jasmine2@^24.8.0: version "24.8.0" resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-24.8.0.tgz#a9c7e14c83dd77d8b15e820549ce8987cc8cd898" @@ -4417,6 +4756,28 @@ jest-jasmine2@^24.8.0: pretty-format "^24.8.0" throat "^4.0.0" +jest-jasmine2@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-24.9.0.tgz#1f7b1bd3242c1774e62acabb3646d96afc3be6a0" + integrity sha512-Cq7vkAgaYKp+PsX+2/JbTarrk0DmNhsEtqBXNwUHkdlbrTBLtMJINADf2mf5FkowNsq8evbPc07/qFO0AdKTzw== + dependencies: + "@babel/traverse" "^7.1.0" + "@jest/environment" "^24.9.0" + "@jest/test-result" "^24.9.0" + "@jest/types" "^24.9.0" + chalk "^2.0.1" + co "^4.6.0" + expect "^24.9.0" + is-generator-fn "^2.0.0" + jest-each "^24.9.0" + jest-matcher-utils "^24.9.0" + jest-message-util "^24.9.0" + jest-runtime "^24.9.0" + jest-snapshot "^24.9.0" + jest-util "^24.9.0" + pretty-format "^24.9.0" + throat "^4.0.0" + jest-leak-detector@^24.8.0: version "24.8.0" resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-24.8.0.tgz#c0086384e1f650c2d8348095df769f29b48e6980" @@ -4424,6 +4785,14 @@ jest-leak-detector@^24.8.0: dependencies: pretty-format "^24.8.0" +jest-leak-detector@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-24.9.0.tgz#b665dea7c77100c5c4f7dfcb153b65cf07dcf96a" + integrity sha512-tYkFIDsiKTGwb2FG1w8hX9V0aUb2ot8zY/2nFg087dUageonw1zrLMP4W6zsRO59dPkTSKie+D4rhMuP9nRmrA== + dependencies: + jest-get-type "^24.9.0" + pretty-format "^24.9.0" + jest-matcher-utils@^24.8.0: version "24.8.0" resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-24.8.0.tgz#2bce42204c9af12bde46f83dc839efe8be832495" @@ -4434,6 +4803,16 @@ jest-matcher-utils@^24.8.0: jest-get-type "^24.8.0" pretty-format "^24.8.0" +jest-matcher-utils@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-24.9.0.tgz#f5b3661d5e628dffe6dd65251dfdae0e87c3a073" + integrity sha512-OZz2IXsu6eaiMAwe67c1T+5tUAtQyQx27/EMEkbFAGiw52tB9em+uGbzpcgYVpA8wl0hlxKPZxrly4CXU/GjHA== + dependencies: + chalk "^2.0.1" + jest-diff "^24.9.0" + jest-get-type "^24.9.0" + pretty-format "^24.9.0" + jest-message-util@^24.8.0: version "24.8.0" resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-24.8.0.tgz#0d6891e72a4beacc0292b638685df42e28d6218b" @@ -4448,6 +4827,20 @@ jest-message-util@^24.8.0: slash "^2.0.0" stack-utils "^1.0.1" +jest-message-util@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-24.9.0.tgz#527f54a1e380f5e202a8d1149b0ec872f43119e3" + integrity sha512-oCj8FiZ3U0hTP4aSui87P4L4jC37BtQwUMqk+zk/b11FR19BJDeZsZAvIHutWnmtw7r85UmR3CEWZ0HWU2mAlw== + dependencies: + "@babel/code-frame" "^7.0.0" + "@jest/test-result" "^24.9.0" + "@jest/types" "^24.9.0" + "@types/stack-utils" "^1.0.1" + chalk "^2.0.1" + micromatch "^3.1.10" + slash "^2.0.0" + stack-utils "^1.0.1" + jest-mock@^24.8.0: version "24.8.0" resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-24.8.0.tgz#2f9d14d37699e863f1febf4e4d5a33b7fdbbde56" @@ -4455,6 +4848,13 @@ jest-mock@^24.8.0: dependencies: "@jest/types" "^24.8.0" +jest-mock@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-24.9.0.tgz#c22835541ee379b908673ad51087a2185c13f1c6" + integrity sha512-3BEYN5WbSq9wd+SyLDES7AHnjH9A/ROBwmz7l2y+ol+NtSFO8DYiEBzoO1CeFc9a8DYy10EO4dDFVv/wN3zl1w== + dependencies: + "@jest/types" "^24.9.0" + jest-pnp-resolver@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.1.tgz#ecdae604c077a7fbc70defb6d517c3c1c898923a" @@ -4465,6 +4865,11 @@ jest-regex-util@^24.3.0: resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-24.3.0.tgz#d5a65f60be1ae3e310d5214a0307581995227b36" integrity sha512-tXQR1NEOyGlfylyEjg1ImtScwMq8Oh3iJbGTjN7p0J23EuVX1MA8rwU69K4sLbCmwzgCUbVkm0FkSF9TdzOhtg== +jest-regex-util@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-24.9.0.tgz#c13fb3380bde22bf6575432c493ea8fe37965636" + integrity sha512-05Cmb6CuxaA+Ys6fjr3PhvV3bGQmO+2p2La4hFbU+W5uOc479f7FdLXUWXw4pYMAhhSZIuKHwSXSu6CsSBAXQA== + jest-resolve-dependencies@^24.8.0: version "24.8.0" resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-24.8.0.tgz#19eec3241f2045d3f990dba331d0d7526acff8e0" @@ -4474,6 +4879,15 @@ jest-resolve-dependencies@^24.8.0: jest-regex-util "^24.3.0" jest-snapshot "^24.8.0" +jest-resolve-dependencies@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-24.9.0.tgz#ad055198959c4cfba8a4f066c673a3f0786507ab" + integrity sha512-Fm7b6AlWnYhT0BXy4hXpactHIqER7erNgIsIozDXWl5dVm+k8XdGVe1oTg1JyaFnOxarMEbax3wyRJqGP2Pq+g== + dependencies: + "@jest/types" "^24.9.0" + jest-regex-util "^24.3.0" + jest-snapshot "^24.9.0" + jest-resolve@^24.8.0: version "24.8.0" resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-24.8.0.tgz#84b8e5408c1f6a11539793e2b5feb1b6e722439f" @@ -4485,6 +4899,17 @@ jest-resolve@^24.8.0: jest-pnp-resolver "^1.2.1" realpath-native "^1.1.0" +jest-resolve@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-24.9.0.tgz#dff04c7687af34c4dd7e524892d9cf77e5d17321" + integrity sha512-TaLeLVL1l08YFZAt3zaPtjiVvyy4oSA6CRe+0AFPPVX3Q/VI0giIWWoAvoS5L96vj9Dqxj4fB5p2qrHCmTU/MQ== + dependencies: + "@jest/types" "^24.9.0" + browser-resolve "^1.11.3" + chalk "^2.0.1" + jest-pnp-resolver "^1.2.1" + realpath-native "^1.1.0" + jest-runner@^24.8.0: version "24.8.0" resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-24.8.0.tgz#4f9ae07b767db27b740d7deffad0cf67ccb4c5bb" @@ -4510,6 +4935,31 @@ jest-runner@^24.8.0: source-map-support "^0.5.6" throat "^4.0.0" +jest-runner@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-24.9.0.tgz#574fafdbd54455c2b34b4bdf4365a23857fcdf42" + integrity sha512-KksJQyI3/0mhcfspnxxEOBueGrd5E4vV7ADQLT9ESaCzz02WnbdbKWIf5Mkaucoaj7obQckYPVX6JJhgUcoWWg== + dependencies: + "@jest/console" "^24.7.1" + "@jest/environment" "^24.9.0" + "@jest/test-result" "^24.9.0" + "@jest/types" "^24.9.0" + chalk "^2.4.2" + exit "^0.1.2" + graceful-fs "^4.1.15" + jest-config "^24.9.0" + jest-docblock "^24.3.0" + jest-haste-map "^24.9.0" + jest-jasmine2 "^24.9.0" + jest-leak-detector "^24.9.0" + jest-message-util "^24.9.0" + jest-resolve "^24.9.0" + jest-runtime "^24.9.0" + jest-util "^24.9.0" + jest-worker "^24.6.0" + source-map-support "^0.5.6" + throat "^4.0.0" + jest-runtime@^24.8.0: version "24.8.0" resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-24.8.0.tgz#05f94d5b05c21f6dc54e427cd2e4980923350620" @@ -4539,11 +4989,45 @@ jest-runtime@^24.8.0: strip-bom "^3.0.0" yargs "^12.0.2" +jest-runtime@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-24.9.0.tgz#9f14583af6a4f7314a6a9d9f0226e1a781c8e4ac" + integrity sha512-8oNqgnmF3v2J6PVRM2Jfuj8oX3syKmaynlDMMKQ4iyzbQzIG6th5ub/lM2bCMTmoTKM3ykcUYI2Pw9xwNtjMnw== + dependencies: + "@jest/console" "^24.7.1" + "@jest/environment" "^24.9.0" + "@jest/source-map" "^24.3.0" + "@jest/transform" "^24.9.0" + "@jest/types" "^24.9.0" + "@types/yargs" "^13.0.0" + chalk "^2.0.1" + exit "^0.1.2" + glob "^7.1.3" + graceful-fs "^4.1.15" + jest-config "^24.9.0" + jest-haste-map "^24.9.0" + jest-message-util "^24.9.0" + jest-mock "^24.9.0" + jest-regex-util "^24.3.0" + jest-resolve "^24.9.0" + jest-snapshot "^24.9.0" + jest-util "^24.9.0" + jest-validate "^24.9.0" + realpath-native "^1.1.0" + slash "^2.0.0" + strip-bom "^3.0.0" + yargs "^13.3.0" + jest-serializer@^24.4.0: version "24.4.0" resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-24.4.0.tgz#f70c5918c8ea9235ccb1276d232e459080588db3" integrity sha512-k//0DtglVstc1fv+GY/VHDIjrtNjdYvYjMlbLUed4kxrE92sIUewOi5Hj3vrpB8CXfkJntRPDRjCrCvUhBdL8Q== +jest-serializer@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-24.9.0.tgz#e6d7d7ef96d31e8b9079a714754c5d5c58288e73" + integrity sha512-DxYipDr8OvfrKH3Kel6NdED3OXxjvxXZ1uIY2I9OFbGg+vUkkg7AGvi65qbhbWNPvDckXmzMPbK3u3HaDO49bQ== + jest-snapshot@^24.8.0: version "24.8.0" resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-24.8.0.tgz#3bec6a59da2ff7bc7d097a853fb67f9d415cb7c6" @@ -4562,6 +5046,25 @@ jest-snapshot@^24.8.0: pretty-format "^24.8.0" semver "^5.5.0" +jest-snapshot@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-24.9.0.tgz#ec8e9ca4f2ec0c5c87ae8f925cf97497b0e951ba" + integrity sha512-uI/rszGSs73xCM0l+up7O7a40o90cnrk429LOiK3aeTvfC0HHmldbd81/B7Ix81KSFe1lwkbl7GnBGG4UfuDew== + dependencies: + "@babel/types" "^7.0.0" + "@jest/types" "^24.9.0" + chalk "^2.0.1" + expect "^24.9.0" + jest-diff "^24.9.0" + jest-get-type "^24.9.0" + jest-matcher-utils "^24.9.0" + jest-message-util "^24.9.0" + jest-resolve "^24.9.0" + mkdirp "^0.5.1" + natural-compare "^1.4.0" + pretty-format "^24.9.0" + semver "^6.2.0" + jest-util@^24.8.0: version "24.8.0" resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-24.8.0.tgz#41f0e945da11df44cc76d64ffb915d0716f46cd1" @@ -4580,6 +5083,24 @@ jest-util@^24.8.0: slash "^2.0.0" source-map "^0.6.0" +jest-util@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-24.9.0.tgz#7396814e48536d2e85a37de3e4c431d7cb140162" + integrity sha512-x+cZU8VRmOJxbA1K5oDBdxQmdq0OIdADarLxk0Mq+3XS4jgvhG/oKGWcIDCtPG0HgjxOYvF+ilPJQsAyXfbNOg== + dependencies: + "@jest/console" "^24.9.0" + "@jest/fake-timers" "^24.9.0" + "@jest/source-map" "^24.9.0" + "@jest/test-result" "^24.9.0" + "@jest/types" "^24.9.0" + callsites "^3.0.0" + chalk "^2.0.1" + graceful-fs "^4.1.15" + is-ci "^2.0.0" + mkdirp "^0.5.1" + slash "^2.0.0" + source-map "^0.6.0" + jest-validate@^24.8.0: version "24.8.0" resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-24.8.0.tgz#624c41533e6dfe356ffadc6e2423a35c2d3b4849" @@ -4592,6 +5113,18 @@ jest-validate@^24.8.0: leven "^2.1.0" pretty-format "^24.8.0" +jest-validate@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-24.9.0.tgz#0775c55360d173cd854e40180756d4ff52def8ab" + integrity sha512-HPIt6C5ACwiqSiwi+OfSSHbK8sG7akG8eATl+IPKaeIjtPOeBUd/g3J7DghugzxrGjI93qS/+RPKe1H6PqvhRQ== + dependencies: + "@jest/types" "^24.9.0" + camelcase "^5.3.1" + chalk "^2.0.1" + jest-get-type "^24.9.0" + leven "^3.1.0" + pretty-format "^24.9.0" + jest-watcher@^24.8.0: version "24.8.0" resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-24.8.0.tgz#58d49915ceddd2de85e238f6213cef1c93715de4" @@ -4605,6 +5138,19 @@ jest-watcher@^24.8.0: jest-util "^24.8.0" string-length "^2.0.0" +jest-watcher@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-24.9.0.tgz#4b56e5d1ceff005f5b88e528dc9afc8dd4ed2b3b" + integrity sha512-+/fLOfKPXXYJDYlks62/4R4GoT+GU1tYZed99JSCOsmzkkF7727RqKrjNAxtfO4YpGv11wybgRvCjR73lK2GZw== + dependencies: + "@jest/test-result" "^24.9.0" + "@jest/types" "^24.9.0" + "@types/yargs" "^13.0.0" + ansi-escapes "^3.0.0" + chalk "^2.0.1" + jest-util "^24.9.0" + string-length "^2.0.0" + jest-worker@^24.0.0, jest-worker@^24.6.0: version "24.6.0" resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-24.6.0.tgz#7f81ceae34b7cde0c9827a6980c35b7cdc0161b3" @@ -4613,6 +5159,14 @@ jest-worker@^24.0.0, jest-worker@^24.6.0: merge-stream "^1.0.1" supports-color "^6.1.0" +jest-worker@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-24.9.0.tgz#5dbfdb5b2d322e98567898238a9697bcce67b3e5" + integrity sha512-51PE4haMSXcHohnSMdM42anbvZANYTqMrr52tVKPqqsPJMzoP6FYYDVqahX/HrAoKEKz3uUPzSvKs9A3qR4iVw== + dependencies: + merge-stream "^2.0.0" + supports-color "^6.1.0" + jimpex@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/jimpex/-/jimpex-4.0.1.tgz#0737367f98936556a2767a40f8682355a916646d" @@ -4898,6 +5452,11 @@ leven@^2.1.0: resolved "https://registry.yarnpkg.com/leven/-/leven-2.1.0.tgz#c2e7a9f772094dee9d34202ae8acce4687875580" integrity sha1-wuep93IJTe6dNCAq6KzORoeHVYA= +leven@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" + integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== + levn@^0.3.0, levn@~0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" @@ -5204,6 +5763,11 @@ merge-stream@^1.0.1: dependencies: readable-stream "^2.0.1" +merge-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" + integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== + merge2@^1.2.3: version "1.2.4" resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.2.4.tgz#c9269589e6885a60cf80605d9522d4b67ca646e3" @@ -5471,6 +6035,17 @@ node-notifier@^5.2.1: shellwords "^0.1.1" which "^1.3.0" +node-notifier@^5.4.2: + version "5.4.3" + resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-5.4.3.tgz#cb72daf94c93904098e28b9c590fd866e464bd50" + integrity sha512-M4UBGcs4jeOK9CjTsYwkvH6/MzuUmGCyTW+kCY7uO+1ZVr0+FHGdPdIf5CCLqAaxnRrWidyoQlNkMIIVwbKB8Q== + dependencies: + growly "^1.3.0" + is-wsl "^1.1.0" + semver "^5.5.0" + shellwords "^0.1.1" + which "^1.3.0" + node-pre-gyp@^0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.12.0.tgz#39ba4bb1439da030295f899e3b520b7785766149" @@ -6107,10 +6682,10 @@ pkginfo@0.x.x: resolved "https://registry.yarnpkg.com/pkginfo/-/pkginfo-0.4.1.tgz#b5418ef0439de5425fc4995042dced14fb2a84ff" integrity sha1-tUGO8EOd5UJfxJlQQtztFPsqhP8= -please-upgrade-node@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/please-upgrade-node/-/please-upgrade-node-3.1.1.tgz#ed320051dfcc5024fae696712c8288993595e8ac" - integrity sha512-KY1uHnQ2NlQHqIJQpnh/i54rKkuxCEBx+voJIS/Mvb+L2iYd2NMotwduhKTMjfC1uKoX3VXOxLjIYG66dfJTVQ== +please-upgrade-node@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz#aeddd3f994c933e4ad98b99d9a556efa0e2fe942" + integrity sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg== dependencies: semver-compare "^1.0.0" @@ -6213,6 +6788,16 @@ pretty-format@^24.8.0: ansi-styles "^3.2.0" react-is "^16.8.4" +pretty-format@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-24.9.0.tgz#12fac31b37019a4eea3c11aa9a959eb7628aa7c9" + integrity sha512-00ZMZUiHaJrNfk33guavqgvfJS30sLYf0f8+Srklv0AMPodGGHcoHgksZ3OThYnIvOd+8yMCn0YiEOogjlgsnA== + dependencies: + "@jest/types" "^24.9.0" + ansi-regex "^4.0.0" + ansi-styles "^3.2.0" + react-is "^16.8.4" + prettysize@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/prettysize/-/prettysize-2.0.0.tgz#902c02480d865d9cc0813011c9feb4fa02ce6996" @@ -6233,10 +6818,10 @@ progress@^2.0.0: resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== -projext@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/projext/-/projext-7.0.0.tgz#36c12f44d9d921c6f077f29665ce59bc682b277b" - integrity sha512-5JKoiZwvXFkDqR92HAPdb8T5IyUs7cBsT8E1hkjUJFcPEnwddSg7XMPo/cvaAXlPsYKdqZHPxqE69k5aGD2Dww== +projext@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/projext/-/projext-7.0.1.tgz#4ff9bd49d0c28a6b4018edd4594a46bcc34c7265" + integrity sha512-Yt06XFzTON0ZtQQCN21gZggiuakd2WlzHKRMCVDssMHKzlfHg2C6bvdyBSLTduWg9+nJx7hpy+mlSmjAknWHdQ== dependencies: "@babel/cli" "7.5.5" "@babel/core" "7.5.5" @@ -6249,7 +6834,7 @@ projext@^7.0.0: "@babel/preset-flow" "7.0.0" "@babel/preset-typescript" "7.3.3" "@babel/runtime" "7.5.5" - commander "^2.20.0" + commander "^3.0.0" del "^5.0.0" dotenv "^8.0.0" dotenv-expand "^5.1.0" @@ -6261,7 +6846,7 @@ projext@^7.0.0: prompt "^1.0.0" shelljs "0.8.3" watchpack "^1.6.0" - wootils "^2.6.0" + wootils "^2.6.3" prompt@^1.0.0: version "1.0.0" @@ -6785,10 +7370,10 @@ rollup-plugin-babel@^4.3.3: "@babel/helper-module-imports" "^7.0.0" rollup-pluginutils "^2.8.1" -rollup-plugin-commonjs@^10.0.1: - version "10.0.1" - resolved "https://registry.yarnpkg.com/rollup-plugin-commonjs/-/rollup-plugin-commonjs-10.0.1.tgz#fbfcadf4ce2e826068e056a9f5c19287d9744ddf" - integrity sha512-x0PcCVdEc4J8igv1qe2vttz8JKAKcTs3wfIA3L8xEty3VzxgORLrzZrNWaVMc+pBC4U3aDOb9BnWLAQ8J11vkA== +rollup-plugin-commonjs@^10.0.2: + version "10.0.2" + resolved "https://registry.yarnpkg.com/rollup-plugin-commonjs/-/rollup-plugin-commonjs-10.0.2.tgz#61328f3a29945e2c35f2b2e824c18944fd88a54d" + integrity sha512-DxeR4QXTgTOFseYls1V7vgKbrSJmPYNdEMOs0OvH+7+89C3GiIonU9gFrE0u39Vv1KWm3wepq8KAvKugtoM2Zw== dependencies: estree-walker "^0.6.1" is-reference "^1.1.2" @@ -6874,14 +7459,14 @@ rollup-pluginutils@^1.5.0: estree-walker "^0.2.1" minimatch "^3.0.2" -rollup@^1.17.0: - version "1.17.0" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-1.17.0.tgz#47ee8b04514544fc93b39bae06271244c8db7dfa" - integrity sha512-k/j1m0NIsI4SYgCJR4MWPstGJOWfJyd6gycKoMhyoKPVXxm+L49XtbUwZyFsrSU2YXsOkM4u1ll9CS/ZgJBUpw== +rollup@^1.20.2: + version "1.20.2" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-1.20.2.tgz#0e1be13cb5de244c9c463027092f7c93461558b9" + integrity sha512-pF4jFzNWMUuudIAeiTgOcSxn8XkBN2Y2/IwPR7iL/IZ8k9RwoLyp2QwNWiYT+HF537zwpmzZHTBYw345H9vq1A== dependencies: "@types/estree" "0.0.39" - "@types/node" "^12.6.2" - acorn "^6.2.0" + "@types/node" "^12.7.2" + acorn "^7.0.0" rsvp@^4.8.4: version "4.8.5" @@ -6996,7 +7581,7 @@ semver-diff@^2.0.0: resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.0.tgz#790a7cf6fea5459bac96110b29b60412dc8ff96b" integrity sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA== -semver@^6.0.0, semver@^6.1.0, semver@^6.1.1: +semver@^6.0.0, semver@^6.1.0, semver@^6.1.1, semver@^6.2.0: version "6.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== @@ -7967,7 +8552,7 @@ winston@2.1.x: pkginfo "0.3.x" stack-trace "0.0.x" -wootils@^2.4.1, wootils@^2.6.0: +wootils@^2.4.1: version "2.6.0" resolved "https://registry.yarnpkg.com/wootils/-/wootils-2.6.0.tgz#0a512e02a6c3ed4f66f3ac1e21277d5a9c580dfb" integrity sha512-wHqkIfPO8+/1GYvwCtGVzT008OfjzXG4Q74asfT4nDWDOJjFSJQ6LrgyrRjfCsOeyIkk+NnRBCMTxIetnPJVZQ== @@ -7979,6 +8564,18 @@ wootils@^2.4.1, wootils@^2.6.0: statuses "^1.5.0" urijs "^1.19.1" +wootils@^2.6.3, wootils@^2.6.5: + version "2.6.5" + resolved "https://registry.yarnpkg.com/wootils/-/wootils-2.6.5.tgz#7f01cf6bb0a93f7aa0fea56ddcd692ffdda5e442" + integrity sha512-SoF5M8pwX2D3W/neZLJOp0SFcHQKJfGKlT1GVhCrw58gREtTZZz32b6MQ3mvo4/L9RBziEIaNgRf1gEwcIkxaQ== + dependencies: + colors "^1.3.3" + extend "^3.0.2" + fs-extra "^8.1.0" + jimple "^1.5.0" + statuses "^1.5.0" + urijs "^1.19.1" + wordwrap@~0.0.2: version "0.0.3" resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107" @@ -8091,7 +8688,7 @@ yargs-parser@^11.1.1: camelcase "^5.0.0" decamelize "^1.2.0" -yargs-parser@^13.1.0: +yargs-parser@^13.1.0, yargs-parser@^13.1.1: version "13.1.1" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.1.tgz#d26058532aa06d365fe091f6a1fc06b2f7e5eca0" integrity sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ== @@ -8141,6 +8738,22 @@ yargs@^12.0.2: y18n "^3.2.1 || ^4.0.0" yargs-parser "^11.1.1" +yargs@^13.3.0: + version "13.3.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.0.tgz#4c657a55e07e5f2cf947f8a366567c04a0dedc83" + integrity sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA== + dependencies: + cliui "^5.0.0" + find-up "^3.0.0" + get-caller-file "^2.0.1" + require-directory "^2.1.1" + require-main-filename "^2.0.0" + set-blocking "^2.0.0" + string-width "^3.0.0" + which-module "^2.0.0" + y18n "^4.0.0" + yargs-parser "^13.1.1" + yargs@^7.0.0: version "7.1.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-7.1.0.tgz#6ba318eb16961727f5d284f8ea003e8d6154d0c8" From e23ac17e476d6b5082a57e44b802a6ac59a618fa Mon Sep 17 00:00:00 2001 From: homer0 Date: Sun, 25 Aug 2019 02:56:03 -0300 Subject: [PATCH 02/15] fix(services/configurations): use terser instead of uglify --- package.json | 2 +- .../browserProductionConfiguration.js | 4 +- .../configurations/pluginsConfiguration.js | 18 ++--- .../browserProductionConfiguration.test.js | 30 ++++---- .../pluginsConfiguration.test.js | 76 +++++++++---------- yarn.lock | 38 ++++++---- 6 files changed, 89 insertions(+), 79 deletions(-) diff --git a/package.json b/package.json index 56c9628..3513aad 100644 --- a/package.json +++ b/package.json @@ -17,7 +17,7 @@ "rollup": "^1.20.2", "rollup-plugin-commonjs": "^10.0.2", "rollup-plugin-node-resolve": "^5.2.0", - "rollup-plugin-uglify": "^6.0.2", + "rollup-plugin-terser": "^5.1.1", "rollup-plugin-html": "0.2.1", "rollup-plugin-babel": "^4.3.3", "rollup-plugin-json": "^4.0.0", diff --git a/src/services/configurations/browserProductionConfiguration.js b/src/services/configurations/browserProductionConfiguration.js index bc39673..1a8a17d 100644 --- a/src/services/configurations/browserProductionConfiguration.js +++ b/src/services/configurations/browserProductionConfiguration.js @@ -5,7 +5,7 @@ const sass = require('rollup-plugin-sass'); const html = require('rollup-plugin-html'); const json = require('rollup-plugin-json'); const polyfill = require('rollup-plugin-polyfill'); -const { uglify } = require('rollup-plugin-uglify'); +const { terser } = require('rollup-plugin-terser'); const { provider } = require('jimple'); const ConfigurationFile = require('../../abstracts/configurationFile'); @@ -115,7 +115,7 @@ class RollupBrowserProductionConfiguration extends ConfigurationFile { urls(pluginSettings.urls), ...( target.uglifyOnProduction ? - [uglify(pluginSettings.uglify)] : + [terser(pluginSettings.terser)] : [] ), copy(pluginSettings.copy), diff --git a/src/services/configurations/pluginsConfiguration.js b/src/services/configurations/pluginsConfiguration.js index 7c87249..af8565a 100644 --- a/src/services/configurations/pluginsConfiguration.js +++ b/src/services/configurations/pluginsConfiguration.js @@ -111,7 +111,7 @@ class RollupPluginSettingsConfiguration extends ConfigurationFile { json: this._getJSONSettings(params, stats), urls: this._getURLsSettings(params, stats), watch: this._getWatchSettings(params, stats), - uglify: this._getUglifySettings(params, stats), + terser: this._getTerserSettings(params, stats), compression: this._getCompressionSettings(params, stats), copy: this._getCopySettings(params, stats), polyfill: this._getPolyfillSettings(params, stats), @@ -936,10 +936,10 @@ class RollupPluginSettingsConfiguration extends ConfigurationFile { ); } /** - * Defines the settings for the `ugify` plugin. - * This method uses the reducer event `rollup-uglify-plugin-settings-configuration-for-browser` - * or `rollup-uglify-plugin-settings-configuration-for-node`, depending on the target type, and - * then `rollup-uglify-plugin-settings-configuration`. The event receives the settings, the + * Defines the settings for the `terser` plugin. + * This method uses the reducer event `rollup-terser-plugin-settings-configuration-for-browser` + * or `rollup-terser-plugin-settings-configuration-for-node`, depending on the target type, and + * then `rollup-terser-plugin-settings-configuration`. The event receives the settings, the * `params` and expects new settings on return. * @param {RollupConfigurationParams} params A dictionary generated by the top service building * the configuration and that includes things like the @@ -949,7 +949,7 @@ class RollupPluginSettingsConfiguration extends ConfigurationFile { * @access protected * @ignore */ - _getUglifySettings(params) { + _getTerserSettings(params) { /** * There are no settings, but because the plugin is used, the method reduces the empty * configuration so other plugins/services can update it if needed. @@ -957,11 +957,11 @@ class RollupPluginSettingsConfiguration extends ConfigurationFile { const settings = {}; const eventName = params.target.is.node ? - 'rollup-uglify-plugin-settings-configuration-for-node' : - 'rollup-uglify-plugin-settings-configuration-for-browser'; + 'rollup-terser-plugin-settings-configuration-for-node' : + 'rollup-terser-plugin-settings-configuration-for-browser'; // Return the reduced configuration. return this.events.reduce( - [eventName, 'rollup-uglify-plugin-settings-configuration'], + [eventName, 'rollup-terser-plugin-settings-configuration'], settings, params ); diff --git a/tests/services/configurations/browserProductionConfiguration.test.js b/tests/services/configurations/browserProductionConfiguration.test.js index 205d935..16f66d2 100644 --- a/tests/services/configurations/browserProductionConfiguration.test.js +++ b/tests/services/configurations/browserProductionConfiguration.test.js @@ -10,7 +10,7 @@ jest.mock('rollup-plugin-sass'); jest.mock('rollup-plugin-html'); jest.mock('rollup-plugin-json'); jest.mock('rollup-plugin-polyfill'); -jest.mock('rollup-plugin-uglify'); +jest.mock('rollup-plugin-terser'); jest.mock('/src/abstracts/configurationFile', () => ConfigurationFileMock); jest.unmock('/src/services/configurations/browserProductionConfiguration'); @@ -40,7 +40,7 @@ const sass = require('rollup-plugin-sass'); const html = require('rollup-plugin-html'); const json = require('rollup-plugin-json'); const polyfill = require('rollup-plugin-polyfill'); -const { uglify } = require('rollup-plugin-uglify'); +const { terser } = require('rollup-plugin-terser'); describe('services/configurations:browserProductionConfiguration', () => { const getPlugins = () => { @@ -70,7 +70,7 @@ describe('services/configurations:browserProductionConfiguration', () => { sass: 'sass-plugin', html: 'html-plugin', json: 'json-plugin', - uglify: 'uglify-plugin', + terser: 'terser-plugin', }; values.statsReset = statsResetValue; values.statsLog = statsLogValue; @@ -93,7 +93,7 @@ describe('services/configurations:browserProductionConfiguration', () => { sass.mockImplementationOnce(() => values.sass); html.mockImplementationOnce(() => values.html); json.mockImplementationOnce(() => values.json); - uglify.mockImplementationOnce(() => values.uglify); + terser.mockImplementationOnce(() => values.terser); const mocks = { copy, css, @@ -116,7 +116,7 @@ describe('services/configurations:browserProductionConfiguration', () => { sass, html, json, - uglify, + terser, }; const settings = { resolve: 'resolve-plugin-settings', @@ -173,7 +173,7 @@ describe('services/configurations:browserProductionConfiguration', () => { sass.mockClear(); html.mockClear(); json.mockClear(); - uglify.mockClear(); + terser.mockClear(); polyfill.mockClear(); }); @@ -256,7 +256,7 @@ describe('services/configurations:browserProductionConfiguration', () => { plugins.values.html, plugins.values.json, plugins.values.urls, - plugins.values.uglify, + plugins.values.terser, plugins.values.copy, plugins.values.template, plugins.values.compression, @@ -305,8 +305,8 @@ describe('services/configurations:browserProductionConfiguration', () => { expect(plugins.mocks.json).toHaveBeenCalledWith(plugins.settings.json); expect(plugins.mocks.urls).toHaveBeenCalledTimes(1); expect(plugins.mocks.urls).toHaveBeenCalledWith(plugins.settings.urls); - expect(plugins.mocks.uglify).toHaveBeenCalledTimes(1); - expect(plugins.mocks.uglify).toHaveBeenCalledWith(plugins.settings.uglify); + expect(plugins.mocks.terser).toHaveBeenCalledTimes(1); + expect(plugins.mocks.terser).toHaveBeenCalledWith(plugins.settings.terser); expect(plugins.mocks.copy).toHaveBeenCalledTimes(1); expect(plugins.mocks.copy).toHaveBeenCalledWith(plugins.settings.copy); expect(plugins.mocks.template).toHaveBeenCalledTimes(1); @@ -389,7 +389,7 @@ describe('services/configurations:browserProductionConfiguration', () => { plugins.values.html, plugins.values.json, plugins.values.urls, - plugins.values.uglify, + plugins.values.terser, plugins.values.copy, plugins.values.template, plugins.values.compression, @@ -612,7 +612,7 @@ describe('services/configurations:browserProductionConfiguration', () => { plugins.values.html, plugins.values.json, plugins.values.urls, - plugins.values.uglify, + plugins.values.terser, plugins.values.copy, plugins.values.template, plugins.values.compression, @@ -686,7 +686,7 @@ describe('services/configurations:browserProductionConfiguration', () => { plugins.values.html, plugins.values.json, plugins.values.urls, - plugins.values.uglify, + plugins.values.terser, plugins.values.copy, plugins.values.template, plugins.values.compression, @@ -762,7 +762,7 @@ describe('services/configurations:browserProductionConfiguration', () => { plugins.values.html, plugins.values.json, plugins.values.urls, - plugins.values.uglify, + plugins.values.terser, plugins.values.copy, plugins.values.template, plugins.values.compression, @@ -832,7 +832,7 @@ describe('services/configurations:browserProductionConfiguration', () => { plugins.values.html, plugins.values.json, plugins.values.urls, - plugins.values.uglify, + plugins.values.terser, plugins.values.copy, plugins.values.statsLog, ], @@ -907,7 +907,7 @@ describe('services/configurations:browserProductionConfiguration', () => { plugins.values.html, plugins.values.json, plugins.values.urls, - plugins.values.uglify, + plugins.values.terser, plugins.values.copy, plugins.values.compression, plugins.values.statsLog, diff --git a/tests/services/configurations/pluginsConfiguration.test.js b/tests/services/configurations/pluginsConfiguration.test.js index 85ec5d9..593ac8b 100644 --- a/tests/services/configurations/pluginsConfiguration.test.js +++ b/tests/services/configurations/pluginsConfiguration.test.js @@ -355,7 +355,7 @@ describe('services/configurations:plugins', () => { watch: { clearScreen: false, }, - uglify: {}, + terser: {}, compression: { folder: target.paths.build, include: [expect.any(RegExp)], @@ -499,10 +499,10 @@ describe('services/configurations:plugins', () => { }, { events: [ - 'rollup-uglify-plugin-settings-configuration-for-node', - 'rollup-uglify-plugin-settings-configuration', + 'rollup-terser-plugin-settings-configuration-for-node', + 'rollup-terser-plugin-settings-configuration', ], - settings: expectedSettings.uglify, + settings: expectedSettings.terser, }, { events: [ @@ -859,7 +859,7 @@ describe('services/configurations:plugins', () => { watch: { clearScreen: false, }, - uglify: {}, + terser: {}, compression: { folder: target.paths.build, include: [expect.any(RegExp)], @@ -1002,10 +1002,10 @@ describe('services/configurations:plugins', () => { }, { events: [ - 'rollup-uglify-plugin-settings-configuration-for-node', - 'rollup-uglify-plugin-settings-configuration', + 'rollup-terser-plugin-settings-configuration-for-node', + 'rollup-terser-plugin-settings-configuration', ], - settings: expectedSettings.uglify, + settings: expectedSettings.terser, }, { events: [ @@ -1023,10 +1023,10 @@ describe('services/configurations:plugins', () => { }, { events: [ - 'rollup-uglify-plugin-settings-configuration-for-node', - 'rollup-uglify-plugin-settings-configuration', + 'rollup-terser-plugin-settings-configuration-for-node', + 'rollup-terser-plugin-settings-configuration', ], - settings: expectedSettings.uglify, + settings: expectedSettings.terser, }, { events: [ @@ -1368,7 +1368,7 @@ describe('services/configurations:plugins', () => { watch: { clearScreen: false, }, - uglify: {}, + terser: {}, compression: { folder: target.paths.build, include: [expect.any(RegExp)], @@ -1521,10 +1521,10 @@ describe('services/configurations:plugins', () => { }, { events: [ - 'rollup-uglify-plugin-settings-configuration-for-browser', - 'rollup-uglify-plugin-settings-configuration', + 'rollup-terser-plugin-settings-configuration-for-browser', + 'rollup-terser-plugin-settings-configuration', ], - settings: expectedSettings.uglify, + settings: expectedSettings.terser, }, { events: [ @@ -1542,10 +1542,10 @@ describe('services/configurations:plugins', () => { }, { events: [ - 'rollup-uglify-plugin-settings-configuration-for-browser', - 'rollup-uglify-plugin-settings-configuration', + 'rollup-terser-plugin-settings-configuration-for-browser', + 'rollup-terser-plugin-settings-configuration', ], - settings: expectedSettings.uglify, + settings: expectedSettings.terser, }, { events: [ @@ -1886,7 +1886,7 @@ describe('services/configurations:plugins', () => { watch: { clearScreen: false, }, - uglify: {}, + terser: {}, compression: { folder: target.paths.build, include: [expect.any(RegExp)], @@ -2035,10 +2035,10 @@ describe('services/configurations:plugins', () => { }, { events: [ - 'rollup-uglify-plugin-settings-configuration-for-browser', - 'rollup-uglify-plugin-settings-configuration', + 'rollup-terser-plugin-settings-configuration-for-browser', + 'rollup-terser-plugin-settings-configuration', ], - settings: expectedSettings.uglify, + settings: expectedSettings.terser, }, { events: [ @@ -2407,7 +2407,7 @@ describe('services/configurations:plugins', () => { watch: { clearScreen: false, }, - uglify: {}, + terser: {}, compression: { folder: target.paths.build, include: [expect.any(RegExp)], @@ -2562,10 +2562,10 @@ describe('services/configurations:plugins', () => { }, { events: [ - 'rollup-uglify-plugin-settings-configuration-for-browser', - 'rollup-uglify-plugin-settings-configuration', + 'rollup-terser-plugin-settings-configuration-for-browser', + 'rollup-terser-plugin-settings-configuration', ], - settings: expectedSettings.uglify, + settings: expectedSettings.terser, }, { events: [ @@ -2938,7 +2938,7 @@ describe('services/configurations:plugins', () => { watch: { clearScreen: false, }, - uglify: {}, + terser: {}, compression: { folder: target.paths.build, include: [expect.any(RegExp)], @@ -3097,10 +3097,10 @@ describe('services/configurations:plugins', () => { }, { events: [ - 'rollup-uglify-plugin-settings-configuration-for-browser', - 'rollup-uglify-plugin-settings-configuration', + 'rollup-terser-plugin-settings-configuration-for-browser', + 'rollup-terser-plugin-settings-configuration', ], - settings: expectedSettings.uglify, + settings: expectedSettings.terser, }, { events: [ @@ -3465,7 +3465,7 @@ describe('services/configurations:plugins', () => { watch: { clearScreen: false, }, - uglify: {}, + terser: {}, compression: { folder: target.paths.build, include: [expect.any(RegExp)], @@ -3622,10 +3622,10 @@ describe('services/configurations:plugins', () => { }, { events: [ - 'rollup-uglify-plugin-settings-configuration-for-browser', - 'rollup-uglify-plugin-settings-configuration', + 'rollup-terser-plugin-settings-configuration-for-browser', + 'rollup-terser-plugin-settings-configuration', ], - settings: expectedSettings.uglify, + settings: expectedSettings.terser, }, { events: [ @@ -3986,7 +3986,7 @@ describe('services/configurations:plugins', () => { watch: { clearScreen: false, }, - uglify: {}, + terser: {}, compression: { folder: target.paths.build, include: [expect.any(RegExp)], @@ -4143,10 +4143,10 @@ describe('services/configurations:plugins', () => { }, { events: [ - 'rollup-uglify-plugin-settings-configuration-for-browser', - 'rollup-uglify-plugin-settings-configuration', + 'rollup-terser-plugin-settings-configuration-for-browser', + 'rollup-terser-plugin-settings-configuration', ], - settings: expectedSettings.uglify, + settings: expectedSettings.terser, }, { events: [ diff --git a/yarn.lock b/yarn.lock index 5932b88..566c732 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5151,7 +5151,7 @@ jest-watcher@^24.9.0: jest-util "^24.9.0" string-length "^2.0.0" -jest-worker@^24.0.0, jest-worker@^24.6.0: +jest-worker@^24.6.0: version "24.6.0" resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-24.6.0.tgz#7f81ceae34b7cde0c9827a6980c35b7cdc0161b3" integrity sha512-jDwgW5W9qGNvpI1tNnvajh0a5IE/PuGLFmHk6aR/BZFz8tSgGw17GsDPXAJ6p91IvYDjOw8GpFbvvZGAK+DPQQ== @@ -7434,15 +7434,16 @@ rollup-plugin-sass@^1.2.2: rollup-pluginutils ">= 1.3.1" sass "1.7.2" -rollup-plugin-uglify@^6.0.2: - version "6.0.2" - resolved "https://registry.yarnpkg.com/rollup-plugin-uglify/-/rollup-plugin-uglify-6.0.2.tgz#681042cfdf7ea4e514971946344e1a95bc2772fe" - integrity sha512-qwz2Tryspn5QGtPUowq5oumKSxANKdrnfz7C0jm4lKxvRDsNe/hSGsB9FntUul7UeC4TsZEWKErVgE1qWSO0gw== +rollup-plugin-terser@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/rollup-plugin-terser/-/rollup-plugin-terser-5.1.1.tgz#e9d2545ec8d467f96ba99b9216d2285aad8d5b66" + integrity sha512-McIMCDEY8EU6Y839C09UopeRR56wXHGdvKKjlfiZG/GrP6wvZQ62u2ko/Xh1MNH2M9WDL+obAAHySljIZYCuPQ== dependencies: "@babel/code-frame" "^7.0.0" - jest-worker "^24.0.0" - serialize-javascript "^1.6.1" - uglify-js "^3.4.9" + jest-worker "^24.6.0" + rollup-pluginutils "^2.8.1" + serialize-javascript "^1.7.0" + terser "^4.1.0" "rollup-pluginutils@>= 1.3.1", rollup-pluginutils@^2.5.0, rollup-pluginutils@^2.6.0, rollup-pluginutils@^2.8.1: version "2.8.1" @@ -7610,10 +7611,10 @@ send@0.17.1: range-parser "~1.2.1" statuses "~1.5.0" -serialize-javascript@^1.6.1: - version "1.7.0" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-1.7.0.tgz#d6e0dfb2a3832a8c94468e6eb1db97e55a192a65" - integrity sha512-ke8UG8ulpFOxO8f8gRYabHQe/ZntKlcig2Mp+8+URDP1D8vJZ0KUt7LYo07q25Z/+JVSgpr/cui9PIp5H6/+nA== +serialize-javascript@^1.7.0: + version "1.8.0" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-1.8.0.tgz#9515fc687232e2321aea1ca7a529476eb34bb480" + integrity sha512-3tHgtF4OzDmeKYj6V9nSyceRS0UJ3C7VqyD2Yj28vC/z2j6jG5FmFGahOKMD9CrglxTm3tETr87jEypaYV8DUg== serve-static@1.14.1: version "1.14.1" @@ -7741,7 +7742,7 @@ source-map-resolve@^0.5.0: source-map-url "^0.4.0" urix "^0.1.0" -source-map-support@^0.5.6: +source-map-support@^0.5.6, source-map-support@~0.5.12: version "0.5.13" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.13.tgz#31b24a9c2e73c2de85066c0feb7d44767ed52932" integrity sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w== @@ -8057,6 +8058,15 @@ term-size@^1.2.0: dependencies: execa "^0.7.0" +terser@^4.1.0: + version "4.2.1" + resolved "https://registry.yarnpkg.com/terser/-/terser-4.2.1.tgz#1052cfe17576c66e7bc70fcc7119f22b155bdac1" + integrity sha512-cGbc5utAcX4a9+2GGVX4DsenG6v0x3glnDi5hx8816X1McEAwPlPgRtXPJzSBsbpILxZ8MQMT0KvArLuE0HP5A== + dependencies: + commander "^2.20.0" + source-map "~0.6.1" + source-map-support "~0.5.12" + test-exclude@^5.2.3: version "5.2.3" resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-5.2.3.tgz#c3d3e1e311eb7ee405e092dac10aefd09091eac0" @@ -8248,7 +8258,7 @@ uglify-js@3.4.x: commander "~2.19.0" source-map "~0.6.1" -uglify-js@^3.1.4, uglify-js@^3.4.9: +uglify-js@^3.1.4: version "3.6.0" resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.6.0.tgz#704681345c53a8b2079fb6cec294b05ead242ff5" integrity sha512-W+jrUHJr3DXKhrsS7NUVxn3zqMOFn0hL/Ei6v0anCIMoKC93TjcflTagwIHLW7SfMFfiQuktQyFVCFHGUE0+yg== From 5284a21280b87e259e4207cca84007a54ed4aa45 Mon Sep 17 00:00:00 2001 From: homer0 Date: Sun, 25 Aug 2019 03:05:10 -0300 Subject: [PATCH 03/15] style(plugins/stylesheetAssets): disable ESLint rule as it's not detecting the current engine --- src/plugins/stylesheetAssets/index.js | 1 + 1 file changed, 1 insertion(+) diff --git a/src/plugins/stylesheetAssets/index.js b/src/plugins/stylesheetAssets/index.js index a0ec94a..87535dc 100644 --- a/src/plugins/stylesheetAssets/index.js +++ b/src/plugins/stylesheetAssets/index.js @@ -524,6 +524,7 @@ class ProjextRollupStylesheetAssetsPlugin { * @ignore */ _parseURL(urlPath) { + // eslint-disable-next-line node/no-deprecated-api const parsed = url.parse(urlPath); const urlQuery = parsed.search || ''; const urlHash = parsed.hash || ''; From 0985a35603c76cfe056a2f3df1ee9ca8a63f236e Mon Sep 17 00:00:00 2001 From: homer0 Date: Sun, 25 Aug 2019 03:05:54 -0300 Subject: [PATCH 04/15] refactor(services/building/configuration): extract a method for the configuration builder to reduce complexity --- src/services/building/configuration.js | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/src/services/building/configuration.js b/src/services/building/configuration.js index 9c4a8cc..0c97db9 100644 --- a/src/services/building/configuration.js +++ b/src/services/building/configuration.js @@ -50,8 +50,8 @@ class RollupConfiguration { } /** * This method generates a complete Rollup configuration for a target. - * @param {Target} target The target information. - * @param {string} buildType The intended build type: `production` or `development`. + * @param {Target} target The target information. + * @param {string} buildType The intended build type: `production` or `development`. * @return {Object} * @throws {Error} If there's no base configuration for the target type. * @throws {Error} If there's no base configuration for the target type and build type. @@ -68,7 +68,7 @@ class RollupConfiguration { const input = path.join(target.paths.source, target.entry[buildType]); - const defaultFormat = target.is.node ? 'cjs' : 'iife'; + const defaultFormat = this._getTargetDefaultFormat(target); const output = { sourcemap: !!(target.sourceMap && target.sourceMap[buildType]), name: target.name.replace(/-(\w)/ig, (match, letter) => letter.toUpperCase()), @@ -129,6 +129,18 @@ class RollupConfiguration { return config; } + /** + * Based on the taget type, this method will decide which will be the default output format + * the target will use. The reason this is the "default" format, it's because the service + * can later changed dependeding in whether the target is a library or not. + * @param {Target} target The target information. + * @return {string} + * @access protected + * @ignore + */ + _getTargetDefaultFormat(target) { + return target.is.node ? 'cjs' : 'iife'; + } /** * Generates a function that when called will return a dictionary with definitions that will be * replaced on the bundle. From 0c2163b40ea217975ceb04bd0451c60ac4176f0b Mon Sep 17 00:00:00 2001 From: homer0 Date: Sun, 25 Aug 2019 03:06:38 -0300 Subject: [PATCH 05/15] feat(project): install homer0's ESLint plugin --- package.json | 7 ++- yarn.lock | 133 ++++++++++++++++++++++++++++++++------------------- 2 files changed, 86 insertions(+), 54 deletions(-) diff --git a/package.json b/package.json index 3513aad..53858fc 100644 --- a/package.json +++ b/package.json @@ -36,6 +36,7 @@ "opener": "^1.5.1", "prettysize": "^2.0.0", "colors": "^1.3.3", + "statuses": "^1.5.0", "core-js": "^3.2.1", "regenerator-runtime": "0.13.3", @@ -44,10 +45,8 @@ "@babel/preset-env": "7.5.5" }, "devDependencies": { - "eslint": "^5.16.0", - "eslint-config-airbnb-base": "^13.2.0", - "eslint-plugin-import": "^2.18.2", - "eslint-plugin-node": "^9.1.0", + "eslint": "^6.2.2", + "eslint-plugin-homer0": "^2.0.0", "@babel/plugin-transform-runtime": "7.5.5", "jest-ex": "^6.1.1", "jest-cli": "^24.9.0", diff --git a/yarn.lock b/yarn.lock index 566c732..b911482 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1323,10 +1323,10 @@ acorn-globals@^4.1.0: acorn "^6.0.1" acorn-walk "^6.0.1" -acorn-jsx@^5.0.0: - version "5.0.1" - resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.0.1.tgz#32a064fd925429216a09b141102bfdd185fae40e" - integrity sha512-HJ7CfNHrfJLlNTzIEUTj43LNWGkqpRLxm3YjAlcD0ACydk9XynzYsCBHxut+iqt+1aBXkx9UP/w/ZqMr13XIzg== +acorn-jsx@^5.0.2: + version "5.0.2" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.0.2.tgz#84b68ea44b373c4f8686023a551f61a21b7c4a4f" + integrity sha512-tiNTrP1MP0QrChmD2DdupCr6HWSFeKVw5d/dHTu4Y7rkAkRhU/Dt7dphAfIUyxtHpl/eBVip5uTNSpQJHylpAw== acorn-walk@^6.0.1: version "6.2.0" @@ -1343,7 +1343,7 @@ acorn@^5.5.3: resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.7.3.tgz#67aa231bf8812974b85235a96771eb6bd07ea279" integrity sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw== -acorn@^6.0.1, acorn@^6.0.7: +acorn@^6.0.1: version "6.2.1" resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.2.1.tgz#3ed8422d6dec09e6121cc7a843ca86a330a86b51" integrity sha512-JD0xT5FCRDNyjDda3Lrg/IxFscp9q4tiYtxE1/nOzlKCk7hIRuYjhq1kCNkbPjMRMZuFq20HNQn1I9k8Oj0E+Q== @@ -1358,7 +1358,7 @@ add-matchers@0.6.2: resolved "https://registry.yarnpkg.com/add-matchers/-/add-matchers-0.6.2.tgz#faeb2fa9380228c1b0da5f21a655c69304dd2011" integrity sha512-hVO2wodMei9RF00qe+506MoeJ/NEOdCMEkSJ12+fC3hx/5Z4zmhNiP92nJEF6XhmXokeB0hOtuQrjHCx2vmXrQ== -ajv@^6.10.2, ajv@^6.5.5, ajv@^6.9.1: +ajv@^6.10.0, ajv@^6.10.2, ajv@^6.5.5: version "6.10.2" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.10.2.tgz#d3cea04d6b017b2894ad69040fec8b623eb4bd52" integrity sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw== @@ -2284,10 +2284,10 @@ configstore@^3.0.0: write-file-atomic "^2.0.0" xdg-basedir "^3.0.0" -confusing-browser-globals@^1.0.5: - version "1.0.7" - resolved "https://registry.yarnpkg.com/confusing-browser-globals/-/confusing-browser-globals-1.0.7.tgz#5ae852bd541a910e7ffb2dbb864a2d21a36ad29b" - integrity sha512-cgHI1azax5ATrZ8rJ+ODDML9Fvu67PimB6aNxBrc/QwSaDaM9eTfIEUHx3bBLJJ82ioSb+/5zfsMCCEJax3ByQ== +confusing-browser-globals@^1.0.7: + version "1.0.8" + resolved "https://registry.yarnpkg.com/confusing-browser-globals/-/confusing-browser-globals-1.0.8.tgz#93ffec1f82a6e2bf2bc36769cc3a92fa20e502f3" + integrity sha512-lI7asCibVJ6Qd3FGU7mu4sfG4try4LX3+GVS+Gv8UlrEf2AeW57piecapnog2UHZSbcX/P/1UDWVaTsblowlZg== console-control-strings@^1.0.0, console-control-strings@~1.1.0: version "1.1.0" @@ -2975,12 +2975,12 @@ esdoc@^1.1.0: minimist "1.2.0" taffydb "2.7.3" -eslint-config-airbnb-base@^13.2.0: - version "13.2.0" - resolved "https://registry.yarnpkg.com/eslint-config-airbnb-base/-/eslint-config-airbnb-base-13.2.0.tgz#f6ea81459ff4dec2dda200c35f1d8f7419d57943" - integrity sha512-1mg/7eoB4AUeB0X1c/ho4vb2gYkNH8Trr/EgCT/aGmKhhG+F6vF5s8+iRBlWAzFIAphxIdp3YfEKgEl0f9Xg+w== +eslint-config-airbnb-base@^14.0.0: + version "14.0.0" + resolved "https://registry.yarnpkg.com/eslint-config-airbnb-base/-/eslint-config-airbnb-base-14.0.0.tgz#8a7bcb9643d13c55df4dd7444f138bf4efa61e17" + integrity sha512-2IDHobw97upExLmsebhtfoD3NAKhV4H0CJWP3Uprd/uk+cHuWYOczPVxQ8PxLFUAw7o3Th1RAU8u1DoUpr+cMA== dependencies: - confusing-browser-globals "^1.0.5" + confusing-browser-globals "^1.0.7" object.assign "^4.1.0" object.entries "^1.1.0" @@ -3008,6 +3008,16 @@ eslint-plugin-es@^1.4.0: eslint-utils "^1.3.0" regexpp "^2.0.1" +eslint-plugin-homer0@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-homer0/-/eslint-plugin-homer0-2.0.0.tgz#0420f1b1525bd2ef4a41267bfeb36a9dc779a99a" + integrity sha512-EoJWbnmGntFHwQLrnlsQYqhvOA9cFEQ7rmOxwAEKY9naXLLnj8M4tfcU0kYafnjvoXZDy9hQ0IguUhq0nECbOQ== + dependencies: + eslint "^6.1.0" + eslint-config-airbnb-base "^14.0.0" + eslint-plugin-import "^2.18.2" + eslint-plugin-node "^9.1.0" + eslint-plugin-import@^2.18.2: version "2.18.2" resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.18.2.tgz#02f1180b90b077b33d447a17a2326ceb400aceb6" @@ -3037,10 +3047,10 @@ eslint-plugin-node@^9.1.0: resolve "^1.10.1" semver "^6.1.0" -eslint-scope@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.3.tgz#ca03833310f6889a3264781aa82e63eb9cfe7848" - integrity sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg== +eslint-scope@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.0.0.tgz#e87c8887c73e8d1ec84f1ca591645c358bfc8fb9" + integrity sha512-oYrhJW7S0bxAFDvWqzvMPRm6pcgcnWc4QnofCAqRTRfQC0JcwenzGglTtsLyIuuWFfkqDG9vz67cnttSd53djw== dependencies: esrecurse "^4.1.0" estraverse "^4.1.1" @@ -3052,61 +3062,74 @@ eslint-utils@^1.3.0, eslint-utils@^1.3.1: dependencies: eslint-visitor-keys "^1.0.0" +eslint-utils@^1.4.2: + version "1.4.2" + resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.4.2.tgz#166a5180ef6ab7eb462f162fd0e6f2463d7309ab" + integrity sha512-eAZS2sEUMlIeCjBeubdj45dmBHQwPHWyBcT1VSYB7o9x9WRRqKxyUoiXlRjyAwzN7YEzHJlYg0NmzDRWx6GP4Q== + dependencies: + eslint-visitor-keys "^1.0.0" + eslint-visitor-keys@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#3f3180fb2e291017716acb4c9d6d5b5c34a6a81d" integrity sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ== -eslint@^5.16.0: - version "5.16.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-5.16.0.tgz#a1e3ac1aae4a3fbd8296fcf8f7ab7314cbb6abea" - integrity sha512-S3Rz11i7c8AA5JPv7xAH+dOyq/Cu/VXHiHXBPOU1k/JAM5dXqQPt3qcrhpHSorXmrpu2g0gkIBVXAqCpzfoZIg== +eslint-visitor-keys@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz#e2a82cea84ff246ad6fb57f9bde5b46621459ec2" + integrity sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A== + +eslint@^6.1.0, eslint@^6.2.2: + version "6.2.2" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-6.2.2.tgz#03298280e7750d81fcd31431f3d333e43d93f24f" + integrity sha512-mf0elOkxHbdyGX1IJEUsNBzCDdyoUgljF3rRlgfyYh0pwGnreLc0jjD6ZuleOibjmnUWZLY2eXwSooeOgGJ2jw== dependencies: "@babel/code-frame" "^7.0.0" - ajv "^6.9.1" + ajv "^6.10.0" chalk "^2.1.0" cross-spawn "^6.0.5" debug "^4.0.1" doctrine "^3.0.0" - eslint-scope "^4.0.3" - eslint-utils "^1.3.1" - eslint-visitor-keys "^1.0.0" - espree "^5.0.1" + eslint-scope "^5.0.0" + eslint-utils "^1.4.2" + eslint-visitor-keys "^1.1.0" + espree "^6.1.1" esquery "^1.0.1" esutils "^2.0.2" file-entry-cache "^5.0.1" functional-red-black-tree "^1.0.1" - glob "^7.1.2" + glob-parent "^5.0.0" globals "^11.7.0" ignore "^4.0.6" import-fresh "^3.0.0" imurmurhash "^0.1.4" - inquirer "^6.2.2" - js-yaml "^3.13.0" + inquirer "^6.4.1" + is-glob "^4.0.0" + js-yaml "^3.13.1" json-stable-stringify-without-jsonify "^1.0.1" levn "^0.3.0" - lodash "^4.17.11" + lodash "^4.17.14" minimatch "^3.0.4" mkdirp "^0.5.1" natural-compare "^1.4.0" optionator "^0.8.2" - path-is-inside "^1.0.2" progress "^2.0.0" regexpp "^2.0.1" - semver "^5.5.1" - strip-ansi "^4.0.0" - strip-json-comments "^2.0.1" + semver "^6.1.2" + strip-ansi "^5.2.0" + strip-json-comments "^3.0.1" table "^5.2.3" text-table "^0.2.0" + v8-compile-cache "^2.0.3" -espree@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/espree/-/espree-5.0.1.tgz#5d6526fa4fc7f0788a5cf75b15f30323e2f81f7a" - integrity sha512-qWAZcWh4XE/RwzLJejfcofscgMc9CamR6Tn1+XRXNzrvUSSbiAjGOI/fggztjIi7y9VLPqnICMIPiGyr8JaZ0A== +espree@^6.1.1: + version "6.1.1" + resolved "https://registry.yarnpkg.com/espree/-/espree-6.1.1.tgz#7f80e5f7257fc47db450022d723e356daeb1e5de" + integrity sha512-EYbr8XZUhWbYCqQRW0duU5LxzL5bETN6AjKBGy1302qqzPaCH10QbRg3Wvco79Z8x9WbiE8HYB4e75xl6qUYvQ== dependencies: - acorn "^6.0.7" - acorn-jsx "^5.0.0" - eslint-visitor-keys "^1.0.0" + acorn "^7.0.0" + acorn-jsx "^5.0.2" + eslint-visitor-keys "^1.1.0" esprima@^3.1.3, esprima@~3.1.0: version "3.1.3" @@ -4065,10 +4088,10 @@ ini@^1.3.4, ini@~1.3.0: resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw== -inquirer@^6.2.2: - version "6.5.0" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.5.0.tgz#2303317efc9a4ea7ec2e2df6f86569b734accf42" - integrity sha512-scfHejeG/lVZSpvCXpsB4j/wQNPM5JC8kiElOI0OUTwmc1RTpXr4H32/HOlQHcZiYl2z2VElwuCVDRG8vFmbnA== +inquirer@^6.4.1: + version "6.5.2" + resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.5.2.tgz#ad50942375d036d327ff528c08bd5fab089928ca" + integrity sha512-cntlB5ghuB0iuO65Ovoi8ogLHiWGs/5yNrtUcKjFhSSiVeAIVpD7koaSU9RM8mpXw5YDi9RdYXGQMaOURB7ycQ== dependencies: ansi-escapes "^3.2.0" chalk "^2.4.2" @@ -5209,7 +5232,7 @@ js-tokens@^3.0.2: resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls= -js-yaml@^3.13.0, js-yaml@^3.13.1: +js-yaml@^3.13.1: version "3.13.1" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847" integrity sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw== @@ -7582,7 +7605,7 @@ semver-diff@^2.0.0: resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.0.tgz#790a7cf6fea5459bac96110b29b60412dc8ff96b" integrity sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA== -semver@^6.0.0, semver@^6.1.0, semver@^6.1.1, semver@^6.2.0: +semver@^6.0.0, semver@^6.1.0, semver@^6.1.1, semver@^6.1.2, semver@^6.2.0: version "6.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== @@ -7973,7 +7996,12 @@ strip-indent@^1.0.1: dependencies: get-stdin "^4.0.1" -strip-json-comments@^2.0.1, strip-json-comments@~2.0.1: +strip-json-comments@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.0.1.tgz#85713975a91fb87bf1b305cca77395e40d2a64a7" + integrity sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw== + +strip-json-comments@~2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= @@ -8426,6 +8454,11 @@ uuid@^3.3.2: resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131" integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA== +v8-compile-cache@^2.0.3: + version "2.1.0" + resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz#e14de37b31a6d194f5690d67efc4e7f6fc6ab30e" + integrity sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g== + validate-npm-package-license@^3.0.1: version "3.0.4" resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" From 9ae115b03061d223891dd5a5310ed46cf255874f Mon Sep 17 00:00:00 2001 From: homer0 Date: Sun, 25 Aug 2019 03:07:01 -0300 Subject: [PATCH 06/15] refactor(ESLint): update the ESLint configurations to use homer0's plugin --- .eslintrc | 25 +++---------------------- tests/.eslintrc | 14 ++------------ 2 files changed, 5 insertions(+), 34 deletions(-) diff --git a/.eslintrc b/.eslintrc index d3c9c97..24f7ef7 100644 --- a/.eslintrc +++ b/.eslintrc @@ -1,24 +1,5 @@ { - "extends": "airbnb-base", - "rules": { - indent: ['error', 2, { - MemberExpression: 0, - }], - "no-underscore-dangle": ["error", { "allowAfterThis": true }], - "comma-dangle": ["error", { - arrays: "always-multiline", - objects: "always-multiline", - imports: "always-multiline", - exports: "always-multiline", - functions: "never", - }], - "class-methods-use-this": "off", - "import/no-unresolved": "off", - "import/no-extraneous-dependencies": "off", - "function-paren-newline": "off", - "arrow-parens": ["error", "always"], - "no-plusplus": "off", - "lines-between-class-members": "off", - "operator-linebreak": ["error", "after"] - } + "root": true, + "plugins": ["homer0"], + "extends": ["plugin:homer0/node"] } diff --git a/tests/.eslintrc b/tests/.eslintrc index ef0a600..7101587 100644 --- a/tests/.eslintrc +++ b/tests/.eslintrc @@ -1,14 +1,4 @@ { - "extends": ["../.eslintrc"], - "env": { - "jest": true, - }, - "rules": { - "import/no-unresolved": "off", - "import/no-absolute-path": "off", - "node/no-missing-require": "off" - }, - "globals": { - "spyOn": true - } + "plugins": ["homer0"], + "extends": ["plugin:homer0/jest"] } From a3ab514681487a79256825e3de78ce19893bc8d3 Mon Sep 17 00:00:00 2001 From: homer0 Date: Sun, 25 Aug 2019 05:54:03 -0300 Subject: [PATCH 07/15] feat(project): install the Rollup visualizer plugin --- package.json | 1 + yarn.lock | 34 ++++++++++++++++++++++++++++++++++ 2 files changed, 35 insertions(+) diff --git a/package.json b/package.json index 53858fc..909bbe2 100644 --- a/package.json +++ b/package.json @@ -25,6 +25,7 @@ "rollup-plugin-sass": "^1.2.2", "rollup-pluginutils": "^2.8.1", "rollup-plugin-polyfill": "^3.0.0", + "rollup-plugin-visualizer": "^2.5.4", "builtin-modules": "^3.1.0", diff --git a/yarn.lock b/yarn.lock index b911482..247f2fc 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2847,6 +2847,11 @@ es6-templates@^0.2.3: recast "~0.11.12" through "~2.3.6" +escape-goat@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/escape-goat/-/escape-goat-2.1.0.tgz#0f55d3fa1d41a4175fc7a26e25bdb5b2d1afbe31" + integrity sha512-7fMXQmS/6yjYQT/yydWKCAm5ucuU7QtqP6/CE7BIKk6z3xTP4MLqkdUBwaViQVuTAde8yZgZIjSnEAPRl6u53g== + escape-html@1.0.3, escape-html@~1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" @@ -6329,6 +6334,13 @@ onetime@^2.0.0: dependencies: mimic-fn "^1.0.0" +open@^6.3.0: + version "6.4.0" + resolved "https://registry.yarnpkg.com/open/-/open-6.4.0.tgz#5c13e96d0dc894686164f18965ecfe889ecfc8a9" + integrity sha512-IFenVPgF70fSm1keSd2iDBIDIBZkroLeuffXq+wKTzTJlBpesFWojV9lb8mzOfaAzM1sr7HQHuO0vtV0zYekGg== + dependencies: + is-wsl "^1.1.0" + opencollective-postinstall@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/opencollective-postinstall/-/opencollective-postinstall-2.0.2.tgz#5657f1bede69b6e33a45939b061eb53d3c6c3a89" @@ -6932,6 +6944,13 @@ punycode@^2.1.0, punycode@^2.1.1: resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== +pupa@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/pupa/-/pupa-2.0.1.tgz#dbdc9ff48ffbea4a26a069b6f9f7abb051008726" + integrity sha512-hEJH0s8PXLY/cdXh66tNEQGndDrIKNqNC5xmrysZy3i5C3oEoLna7YAOad+7u125+zH1HNXUmGEkrhb3c2VriA== + dependencies: + escape-goat "^2.0.0" + qs@6.7.0: version "6.7.0" resolved "https://registry.yarnpkg.com/qs/-/qs-6.7.0.tgz#41dc1a015e3d581f1621776be31afb2876a9b1bc" @@ -7468,6 +7487,16 @@ rollup-plugin-terser@^5.1.1: serialize-javascript "^1.7.0" terser "^4.1.0" +rollup-plugin-visualizer@^2.5.4: + version "2.5.4" + resolved "https://registry.yarnpkg.com/rollup-plugin-visualizer/-/rollup-plugin-visualizer-2.5.4.tgz#195945e1d5329067a18d2973066ef23b24a30acc" + integrity sha512-ehMX8Us4UmHmt9y6uvBdtW3ASAQDqCcmp07Qrm8dBqQMf1eAd89Rc/owGZr0cDp764dvLKQRA03W+nWlRajl4w== + dependencies: + mkdirp "^0.5.1" + open "^6.3.0" + pupa "^2.0.0" + source-map "^0.7.3" + "rollup-pluginutils@>= 1.3.1", rollup-pluginutils@^2.5.0, rollup-pluginutils@^2.6.0, rollup-pluginutils@^2.8.1: version "2.8.1" resolved "https://registry.yarnpkg.com/rollup-pluginutils/-/rollup-pluginutils-2.8.1.tgz#8fa6dd0697344938ef26c2c09d2488ce9e33ce97" @@ -7795,6 +7824,11 @@ source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== +source-map@^0.7.3: + version "0.7.3" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" + integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== + sourcemap-codec@^1.4.4: version "1.4.6" resolved "https://registry.yarnpkg.com/sourcemap-codec/-/sourcemap-codec-1.4.6.tgz#e30a74f0402bad09807640d39e971090a08ce1e9" From b4174ce35f4ba92a1b4c2b633545827b9a9c4959 Mon Sep 17 00:00:00 2001 From: homer0 Date: Sun, 25 Aug 2019 05:54:49 -0300 Subject: [PATCH 08/15] feat(services/configurations/plugins): add support for the visualizer settings --- .../configurations/pluginsConfiguration.js | 33 +++++++ .../pluginsConfiguration.test.js | 97 ++++++++++++++++++- 2 files changed, 127 insertions(+), 3 deletions(-) diff --git a/src/services/configurations/pluginsConfiguration.js b/src/services/configurations/pluginsConfiguration.js index af8565a..0d60a93 100644 --- a/src/services/configurations/pluginsConfiguration.js +++ b/src/services/configurations/pluginsConfiguration.js @@ -115,6 +115,7 @@ class RollupPluginSettingsConfiguration extends ConfigurationFile { compression: this._getCompressionSettings(params, stats), copy: this._getCopySettings(params, stats), polyfill: this._getPolyfillSettings(params, stats), + visualizer: this._getVisualizerSettings(params, stats), statsLog: this._getStatsLogSettings(params), }; @@ -1073,6 +1074,38 @@ class RollupPluginSettingsConfiguration extends ConfigurationFile { params ); } + /** + * Defines the settings for the `visualizer` plugin. + * This method uses the reducer event + * `rollup-visualizer-plugin-settings-configuration-for-browser` or + * `rollup-visualizer-plugin-settings-configuration-for-node`, depending on the target type, and + * then `rollup-visualizer-plugin-settings-configuration`. The event receives the settings, the + * `params` and expects new settings on return. + * @param {RollupConfigurationParams} params A dictionary generated by the top service building + * the configuration and that includes things like the + * target information, its entry settings, output + * paths, etc. + * @return {Object} + * @access protected + * @ignore + */ + _getVisualizerSettings(params) { + const { target } = params; + const targetFilename = target.name.replace(/\//g, '-'); + const settings = { + filename: `${targetFilename}-visualizer.html`, + }; + + const eventName = target.is.node ? + 'rollup-visualizer-plugin-settings-configuration-for-node' : + 'rollup-visualizer-plugin-settings-configuration-for-browser'; + + return this.events.reduce( + [eventName, 'rollup-visualizer-plugin-settings-configuration'], + settings, + params + ); + } /** * Defines the settings for the `stats` plugin `log` _"sub plugin"_. The `stats` plugin is a * projext plugin that allows other plugins and services to add stats entries to eventually diff --git a/tests/services/configurations/pluginsConfiguration.test.js b/tests/services/configurations/pluginsConfiguration.test.js index 593ac8b..04a4aad 100644 --- a/tests/services/configurations/pluginsConfiguration.test.js +++ b/tests/services/configurations/pluginsConfiguration.test.js @@ -83,6 +83,7 @@ describe('services/configurations:plugins', () => { images: 'images-path', }; const target = { + name: 'my-target', css: { modules: false, }, @@ -367,6 +368,9 @@ describe('services/configurations:plugins', () => { stats, }, polyfill: [], + visualizer: { + filename: `${target.name}-visualizer.html`, + }, statsLog: { extraEntries: [ { @@ -525,6 +529,13 @@ describe('services/configurations:plugins', () => { ], settings: expectedSettings.polyfill, }, + { + events: [ + 'rollup-visualizer-plugin-settings-configuration-for-node', + 'rollup-visualizer-plugin-settings-configuration', + ], + settings: expectedSettings.visualizer, + }, { events: [ 'rollup-stats-plugin-settings-configuration-for-node', @@ -591,6 +602,7 @@ describe('services/configurations:plugins', () => { images: 'images-path', }; const target = { + name: 'my-target', css: { modules: false, }, @@ -871,6 +883,9 @@ describe('services/configurations:plugins', () => { stats, }, polyfill: [], + visualizer: { + filename: `${target.name}-visualizer.html`, + }, statsLog: { extraEntries: [ { @@ -1028,6 +1043,13 @@ describe('services/configurations:plugins', () => { ], settings: expectedSettings.terser, }, + { + events: [ + 'rollup-visualizer-plugin-settings-configuration-for-node', + 'rollup-visualizer-plugin-settings-configuration', + ], + settings: expectedSettings.visualizer, + }, { events: [ 'rollup-stats-plugin-settings-configuration-for-node', @@ -1097,6 +1119,7 @@ describe('services/configurations:plugins', () => { babelPolyfill: polyfillFile, }; const target = { + name: 'my-target', css: { modules: false, }, @@ -1380,6 +1403,9 @@ describe('services/configurations:plugins', () => { stats, }, polyfill: [`${pluginName}/${polyfillFile}`], + visualizer: { + filename: `${target.name}-visualizer.html`, + }, statsLog: { extraEntries: [ { @@ -1542,10 +1568,17 @@ describe('services/configurations:plugins', () => { }, { events: [ - 'rollup-terser-plugin-settings-configuration-for-browser', - 'rollup-terser-plugin-settings-configuration', + 'rollup-polyfill-plugin-settings-configuration-for-browser', + 'rollup-polyfill-plugin-settings-configuration', ], - settings: expectedSettings.terser, + settings: expectedSettings.polyfill, + }, + { + events: [ + 'rollup-visualizer-plugin-settings-configuration-for-browser', + 'rollup-visualizer-plugin-settings-configuration', + ], + settings: expectedSettings.visualizer, }, { events: [ @@ -1609,6 +1642,7 @@ describe('services/configurations:plugins', () => { }; const excludeModule = 'colors'; const target = { + name: 'my-target', css: { modules: false, inject: true, @@ -1898,6 +1932,9 @@ describe('services/configurations:plugins', () => { stats, }, polyfill: [], + visualizer: { + filename: `${target.name}-visualizer.html`, + }, statsLog: { extraEntries: [ { @@ -2061,6 +2098,13 @@ describe('services/configurations:plugins', () => { ], settings: expectedSettings.polyfill, }, + { + events: [ + 'rollup-visualizer-plugin-settings-configuration-for-browser', + 'rollup-visualizer-plugin-settings-configuration', + ], + settings: expectedSettings.visualizer, + }, { events: [ 'rollup-stats-plugin-settings-configuration-for-browser', @@ -2128,6 +2172,7 @@ describe('services/configurations:plugins', () => { }; const excludeModule = 'colors'; const target = { + name: 'my-target', css: { modules: false, }, @@ -2419,6 +2464,9 @@ describe('services/configurations:plugins', () => { stats, }, polyfill: [], + visualizer: { + filename: `${target.name}-visualizer.html`, + }, statsLog: { extraEntries: [ { @@ -2588,6 +2636,13 @@ describe('services/configurations:plugins', () => { ], settings: expectedSettings.polyfill, }, + { + events: [ + 'rollup-visualizer-plugin-settings-configuration-for-browser', + 'rollup-visualizer-plugin-settings-configuration', + ], + settings: expectedSettings.visualizer, + }, { events: [ 'rollup-stats-plugin-settings-configuration-for-browser', @@ -2655,6 +2710,7 @@ describe('services/configurations:plugins', () => { }; const excludeModule = 'colors'; const target = { + name: 'my-target', css: { modules: false, }, @@ -2950,6 +3006,9 @@ describe('services/configurations:plugins', () => { stats, }, polyfill: [], + visualizer: { + filename: `${target.name}-visualizer.html`, + }, statsLog: { extraEntries: [ { @@ -3123,6 +3182,13 @@ describe('services/configurations:plugins', () => { ], settings: expectedSettings.polyfill, }, + { + events: [ + 'rollup-visualizer-plugin-settings-configuration-for-browser', + 'rollup-visualizer-plugin-settings-configuration', + ], + settings: expectedSettings.visualizer, + }, { events: [ 'rollup-stats-plugin-settings-configuration-for-browser', @@ -3185,6 +3251,7 @@ describe('services/configurations:plugins', () => { }; const excludeModule = 'colors'; const target = { + name: 'my-target', css: { modules: false, }, @@ -3477,6 +3544,9 @@ describe('services/configurations:plugins', () => { stats, }, polyfill: [], + visualizer: { + filename: `${target.name}-visualizer.html`, + }, statsLog: { extraEntries: [ { @@ -3648,6 +3718,13 @@ describe('services/configurations:plugins', () => { ], settings: expectedSettings.polyfill, }, + { + events: [ + 'rollup-visualizer-plugin-settings-configuration-for-browser', + 'rollup-visualizer-plugin-settings-configuration', + ], + settings: expectedSettings.visualizer, + }, { events: [ 'rollup-stats-plugin-settings-configuration-for-browser', @@ -3710,6 +3787,7 @@ describe('services/configurations:plugins', () => { }; const excludeModule = 'colors'; const target = { + name: 'my-target', css: { modules: false, }, @@ -3998,6 +4076,9 @@ describe('services/configurations:plugins', () => { stats, }, polyfill: [], + visualizer: { + filename: `${target.name}-visualizer.html`, + }, statsLog: { extraEntries: [ { @@ -4169,6 +4250,13 @@ describe('services/configurations:plugins', () => { ], settings: expectedSettings.polyfill, }, + { + events: [ + 'rollup-visualizer-plugin-settings-configuration-for-browser', + 'rollup-visualizer-plugin-settings-configuration', + ], + settings: expectedSettings.visualizer, + }, { events: [ 'rollup-stats-plugin-settings-configuration-for-browser', @@ -4233,6 +4321,7 @@ describe('services/configurations:plugins', () => { }; const excludeModule = 'colors'; const target = { + name: 'my-target', css: { modules: false, }, @@ -4451,6 +4540,7 @@ describe('services/configurations:plugins', () => { }; const excludeModule = 'colors'; const target = { + name: 'my-target', css: { modules: true, }, @@ -4665,6 +4755,7 @@ describe('services/configurations:plugins', () => { }; const excludeModule = 'colors'; const target = { + name: 'my-target', css: { modules: false, }, From 98969e4c2061351daae084b244de8fd961ca2853 Mon Sep 17 00:00:00 2001 From: homer0 Date: Sun, 25 Aug 2019 06:21:23 -0300 Subject: [PATCH 09/15] refactor(services/configurations/plugins): make the visualizer save the file on the build directory --- .../configurations/pluginsConfiguration.js | 3 ++- .../pluginsConfiguration.test.js | 24 ++++++++++++------- 2 files changed, 18 insertions(+), 9 deletions(-) diff --git a/src/services/configurations/pluginsConfiguration.js b/src/services/configurations/pluginsConfiguration.js index 0d60a93..13ded63 100644 --- a/src/services/configurations/pluginsConfiguration.js +++ b/src/services/configurations/pluginsConfiguration.js @@ -1093,7 +1093,8 @@ class RollupPluginSettingsConfiguration extends ConfigurationFile { const { target } = params; const targetFilename = target.name.replace(/\//g, '-'); const settings = { - filename: `${targetFilename}-visualizer.html`, + filename: `${target.paths.build}/${targetFilename}-stats-visualizer.html`, + open: true, }; const eventName = target.is.node ? diff --git a/tests/services/configurations/pluginsConfiguration.test.js b/tests/services/configurations/pluginsConfiguration.test.js index 04a4aad..4ffe4b7 100644 --- a/tests/services/configurations/pluginsConfiguration.test.js +++ b/tests/services/configurations/pluginsConfiguration.test.js @@ -369,7 +369,8 @@ describe('services/configurations:plugins', () => { }, polyfill: [], visualizer: { - filename: `${target.name}-visualizer.html`, + filename: `${target.paths.build}/${target.name}-stats-visualizer.html`, + open: true, }, statsLog: { extraEntries: [ @@ -884,7 +885,8 @@ describe('services/configurations:plugins', () => { }, polyfill: [], visualizer: { - filename: `${target.name}-visualizer.html`, + filename: `${target.paths.build}/${target.name}-stats-visualizer.html`, + open: true, }, statsLog: { extraEntries: [ @@ -1404,7 +1406,8 @@ describe('services/configurations:plugins', () => { }, polyfill: [`${pluginName}/${polyfillFile}`], visualizer: { - filename: `${target.name}-visualizer.html`, + filename: `${target.paths.build}/${target.name}-stats-visualizer.html`, + open: true, }, statsLog: { extraEntries: [ @@ -1933,7 +1936,8 @@ describe('services/configurations:plugins', () => { }, polyfill: [], visualizer: { - filename: `${target.name}-visualizer.html`, + filename: `${target.paths.build}/${target.name}-stats-visualizer.html`, + open: true, }, statsLog: { extraEntries: [ @@ -2465,7 +2469,8 @@ describe('services/configurations:plugins', () => { }, polyfill: [], visualizer: { - filename: `${target.name}-visualizer.html`, + filename: `${target.paths.build}/${target.name}-stats-visualizer.html`, + open: true, }, statsLog: { extraEntries: [ @@ -3007,7 +3012,8 @@ describe('services/configurations:plugins', () => { }, polyfill: [], visualizer: { - filename: `${target.name}-visualizer.html`, + filename: `${target.paths.build}/${target.name}-stats-visualizer.html`, + open: true, }, statsLog: { extraEntries: [ @@ -3545,7 +3551,8 @@ describe('services/configurations:plugins', () => { }, polyfill: [], visualizer: { - filename: `${target.name}-visualizer.html`, + filename: `${target.paths.build}/${target.name}-stats-visualizer.html`, + open: true, }, statsLog: { extraEntries: [ @@ -4077,7 +4084,8 @@ describe('services/configurations:plugins', () => { }, polyfill: [], visualizer: { - filename: `${target.name}-visualizer.html`, + filename: `${target.paths.build}/${target.name}-stats-visualizer.html`, + open: true, }, statsLog: { extraEntries: [ From 4a7a179fc24540c65ea68c5177922008f816a136 Mon Sep 17 00:00:00 2001 From: homer0 Date: Sun, 25 Aug 2019 06:26:05 -0300 Subject: [PATCH 10/15] feat(services/building/engine): add support for the analyze instruction --- src/services/building/engine.js | 34 +++++-- tests/services/building/engine.test.js | 121 +++++++++++++++++++++++++ 2 files changed, 146 insertions(+), 9 deletions(-) diff --git a/src/services/building/engine.js b/src/services/building/engine.js index cca7cf3..f58d91d 100644 --- a/src/services/building/engine.js +++ b/src/services/building/engine.js @@ -55,6 +55,9 @@ class RollupBuildEngine { * @property {string} inspect Whether or not to enable the Node inspector. This will be like a * fake boolean as the CLI doesn't support boolean variables, so its * value will be either `'true'` or `'false'`. + * @property {string} analyze Whether or not to enable the bundle analyzer. This will be like a + * fake boolean as the CLI doesn't support boolean variables, so its + * value will be either `'true'` or `'false'`. * @access protected * @ignore */ @@ -64,6 +67,7 @@ class RollupBuildEngine { run: 'PXTRP_RUN', watch: 'PXTRP_WATCH', inspect: 'PXTRP_INSPECT', + analyze: 'PXTRP_ANALYZE', }; } /** @@ -76,6 +80,7 @@ class RollupBuildEngine { * setting for the required build type is set to `false`. * @param {boolean} [forceInspect=false] Enables the Node inspector even if the target setting * is set to `false`. + * @param {boolean} [forceAnalyze=false] Enables the bundle analyzer. * @return {string} */ getBuildCommand( @@ -83,7 +88,8 @@ class RollupBuildEngine { buildType, forceRun = false, forceWatch = false, - forceInspect = false + forceInspect = false, + forceAnalyze = false ) { const vars = this._getEnvVarsAsString({ target: target.name, @@ -91,6 +97,7 @@ class RollupBuildEngine { run: forceRun, watch: forceWatch, inspect: forceInspect, + analyze: forceAnalyze, }); const config = path.join( @@ -130,17 +137,26 @@ class RollupBuildEngine { throw new Error('This file can only be run by using the `build` command'); } - const { type, run, inspect } = vars; + const { + type, + run, + inspect, + analyze, + } = vars; const target = Object.assign({}, this.targets.getTarget(vars.target)); - if (run === 'true') { - target.runOnDevelopment = true; - if (inspect === 'true') { - target.inspect.enabled = true; + if (analyze === 'true') { + target.analyze = true; + } else { + if (run === 'true') { + target.runOnDevelopment = true; + if (inspect === 'true') { + target.inspect.enabled = true; + } } - } - if (vars.watch === 'true') { - target.watch[type] = true; + if (vars.watch === 'true') { + target.watch[type] = true; + } } return this.getConfiguration(target, type); diff --git a/tests/services/building/engine.test.js b/tests/services/building/engine.test.js index b675ffb..7006d76 100644 --- a/tests/services/building/engine.test.js +++ b/tests/services/building/engine.test.js @@ -66,6 +66,7 @@ describe('services/building:engine', () => { expect(result).toMatch(/PXTRP_RUN=false.*?rollup/); expect(result).toMatch(/PXTRP_WATCH=false.*?rollup/); expect(result).toMatch(/PXTRP_INSPECT=false.*?rollup/); + expect(result).toMatch(/PXTRP_ANALYZE=false.*?rollup/); expect(result).toMatch(new RegExp(`rollup --config ${expectedConfigPath}`)); }); @@ -104,6 +105,7 @@ describe('services/building:engine', () => { expect(result).toMatch(/PXTRP_RUN=false.*?rollup/); expect(result).toMatch(/PXTRP_WATCH=false.*?rollup/); expect(result).toMatch(/PXTRP_INSPECT=false.*?rollup/); + expect(result).toMatch(/PXTRP_ANALYZE=false.*?rollup/); expect(result).toMatch(new RegExp(`rollup --config ${expectedConfigPath}`)); expect(result).toMatch(/rollup --config.*?--watch/); }); @@ -141,6 +143,7 @@ describe('services/building:engine', () => { expect(result).toMatch(/PXTRP_RUN=true.*?rollup/); expect(result).toMatch(/PXTRP_WATCH=false.*?rollup/); expect(result).toMatch(/PXTRP_INSPECT=false.*?rollup/); + expect(result).toMatch(/PXTRP_ANALYZE=false.*?rollup/); expect(result).toMatch(/rollup --config ([\w_\-/]*?)rollup\.config\.js/); expect(result).toMatch(/rollup --config.*?--watch/); }); @@ -181,6 +184,7 @@ describe('services/building:engine', () => { expect(result).toMatch(/PXTRP_RUN=false.*?rollup/); expect(result).toMatch(/PXTRP_WATCH=true.*?rollup/); expect(result).toMatch(/PXTRP_INSPECT=false.*?rollup/); + expect(result).toMatch(/PXTRP_ANALYZE=false.*?rollup/); expect(result).toMatch(/rollup --config ([\w_\-/]*?)rollup\.config\.js/); expect(result).toMatch(/rollup --config.*?--watch/); }); @@ -221,10 +225,51 @@ describe('services/building:engine', () => { expect(result).toMatch(/PXTRP_RUN=true.*?rollup/); expect(result).toMatch(/PXTRP_WATCH=false.*?rollup/); expect(result).toMatch(/PXTRP_INSPECT=true.*?rollup/); + expect(result).toMatch(/PXTRP_ANALYZE=false.*?rollup/); expect(result).toMatch(/rollup --config ([\w_\-/]*?)rollup\.config\.js/); expect(result).toMatch(/rollup --config.*?--watch/); }); + it('should return the command to build and analyze a target', () => { + // Given + const environmentUtils = 'environmentUtils'; + const targets = 'targets'; + const rollupConfiguration = 'rollupConfiguration'; + const rollupPluginInfo = { + name: 'my-projext-plugin-rollup', + configuration: 'my-rollup.config.jsx', + }; + const buildType = 'development'; + const target = { + name: 'some-target', + is: { + browser: true, + }, + inspect: { + enabled: false, + }, + runOnDevelopment: false, + }; + let sut = null; + let result = null; + // When + sut = new RollupBuildEngine( + environmentUtils, + targets, + rollupConfiguration, + rollupPluginInfo + ); + result = sut.getBuildCommand(target, buildType, false, false, false, true); + // Then + expect(result).toMatch(/PXTRP_TARGET=(?:[\w0-9-_]*?).*?rollup/); + expect(result).toMatch(/PXTRP_TYPE=(?:\w+).*?rollup/); + expect(result).toMatch(/PXTRP_RUN=false.*?rollup/); + expect(result).toMatch(/PXTRP_WATCH=false.*?rollup/); + expect(result).toMatch(/PXTRP_INSPECT=false.*?rollup/); + expect(result).toMatch(/PXTRP_ANALYZE=true.*?rollup/); + expect(result).toMatch(/rollup --config ([\w_\-/]*?)rollup\.config\.js/); + }); + it('should return a target Rollup configuration from the configurations service', () => { // Given const environmentUtils = 'environmentUtils'; @@ -262,6 +307,7 @@ describe('services/building:engine', () => { const run = false; const watch = false; const inspect = false; + const analyze = false; const target = { name: targetName, watch: { @@ -274,6 +320,7 @@ describe('services/building:engine', () => { PXTRP_RUN: run.toString(), PXTRP_WATCH: watch.toString(), PXTRP_INSPECT: inspect.toString(), + PXTRP_ANALYZE: analyze.toString(), }; const envVarsNames = Object.keys(envVars); const environmentUtils = { @@ -319,6 +366,7 @@ describe('services/building:engine', () => { const run = true; const watch = true; const inspect = false; + const analyze = false; const target = { name: targetName, watch: { @@ -331,6 +379,7 @@ describe('services/building:engine', () => { PXTRP_RUN: run.toString(), PXTRP_WATCH: watch.toString(), PXTRP_INSPECT: inspect.toString(), + PXTRP_ANALYZE: analyze.toString(), }; const envVarsNames = Object.keys(envVars); const environmentUtils = { @@ -385,6 +434,7 @@ describe('services/building:engine', () => { const run = true; const watch = true; const inspect = true; + const analyze = false; const target = { name: targetName, watch: { @@ -398,6 +448,7 @@ describe('services/building:engine', () => { PXTRP_RUN: run.toString(), PXTRP_WATCH: watch.toString(), PXTRP_INSPECT: inspect.toString(), + PXTRP_ANALYZE: analyze.toString(), }; const envVarsNames = Object.keys(envVars); const environmentUtils = { @@ -448,6 +499,75 @@ describe('services/building:engine', () => { }); }); + it('should return a Rollup configuration for analyzing a target', () => { + // Given + const targetName = 'some-target'; + const buildType = 'development'; + const run = false; + const watch = false; + const inspect = false; + const analyze = true; + const target = { + name: targetName, + watch: { + [buildType]: watch, + }, + inspect: {}, + }; + const envVars = { + PXTRP_TARGET: targetName, + PXTRP_TYPE: buildType, + PXTRP_RUN: run.toString(), + PXTRP_WATCH: watch.toString(), + PXTRP_INSPECT: inspect.toString(), + PXTRP_ANALYZE: analyze.toString(), + }; + const envVarsNames = Object.keys(envVars); + const environmentUtils = { + get: jest.fn((varName) => envVars[varName]), + }; + const targets = { + getTarget: jest.fn(() => target), + }; + const config = 'config'; + const rollupConfiguration = { + getConfig: jest.fn(() => config), + }; + const rollupPluginInfo = { + name: 'my-projext-plugin-rollup', + configuration: 'my-rollup.config.jsx', + }; + let sut = null; + let result = null; + // When + sut = new RollupBuildEngine( + environmentUtils, + targets, + rollupConfiguration, + rollupPluginInfo + ); + result = sut.getRollupConfig(); + // Then + expect(result).toBe(config); + expect(rollupConfiguration.getConfig).toHaveBeenCalledTimes(1); + expect(rollupConfiguration.getConfig).toHaveBeenCalledWith( + Object.assign( + {}, + target, + { + analyze: true, + } + ), + buildType + ); + expect(targets.getTarget).toHaveBeenCalledTimes(1); + expect(targets.getTarget).toHaveBeenCalledWith(targetName); + expect(environmentUtils.get).toHaveBeenCalledTimes(envVarsNames.length); + envVarsNames.forEach((envVar) => { + expect(environmentUtils.get).toHaveBeenCalledWith(envVar); + }); + }); + it('should throw an error when getting a configuration without the env variables', () => { // Given const envVarsNames = [ @@ -456,6 +576,7 @@ describe('services/building:engine', () => { 'PXTRP_RUN', 'PXTRP_WATCH', 'PXTRP_INSPECT', + 'PXTRP_ANALYZE', ]; const environmentUtils = { get: jest.fn(), From 0591654d16d45532a26b43df9db5b1decd38dd57 Mon Sep 17 00:00:00 2001 From: homer0 Date: Sun, 25 Aug 2019 06:28:19 -0300 Subject: [PATCH 11/15] feat(services/building/configuration): add the 'analyze' flag to the params --- src/services/building/configuration.js | 5 +++++ tests/services/building/configuration.test.js | 9 +++++++++ 2 files changed, 14 insertions(+) diff --git a/src/services/building/configuration.js b/src/services/building/configuration.js index 0c97db9..c859e4e 100644 --- a/src/services/building/configuration.js +++ b/src/services/building/configuration.js @@ -116,6 +116,11 @@ class RollupConfiguration { paths, copy, additionalWatch, + /** + * The reason we are taking this property is because it's not part of the `Target` entity, + * but it may be injected by the build engine. + */ + analyze: !!target.analyze, }; let config = this.targetConfiguration( diff --git a/tests/services/building/configuration.test.js b/tests/services/building/configuration.test.js index b965a35..c77221d 100644 --- a/tests/services/building/configuration.test.js +++ b/tests/services/building/configuration.test.js @@ -211,6 +211,7 @@ describe('services/building:configuration', () => { paths: target.output[buildType], copy: [], additionalWatch: [], + analyze: false, }); }); @@ -317,6 +318,7 @@ describe('services/building:configuration', () => { paths: target.output[buildType], copy: filesToCopy, additionalWatch: [], + analyze: false, }); expect(targets.getFilesToCopy).toHaveBeenCalledTimes(1); expect(targets.getFilesToCopy).toHaveBeenCalledWith(target, buildType); @@ -430,6 +432,7 @@ describe('services/building:configuration', () => { }), copy: filesToCopy, additionalWatch: [], + analyze: false, }); expect(targets.getFilesToCopy).toHaveBeenCalledTimes(1); expect(targets.getFilesToCopy).toHaveBeenCalledWith(target, buildType); @@ -537,6 +540,7 @@ describe('services/building:configuration', () => { paths: target.output[buildType], copy: filesToCopy, additionalWatch: [], + analyze: false, }); expect(targets.getFilesToCopy).toHaveBeenCalledTimes(1); expect(targets.getFilesToCopy).toHaveBeenCalledWith(target, buildType); @@ -647,6 +651,7 @@ describe('services/building:configuration', () => { paths: target.output[buildType], copy: filesToCopy, additionalWatch: [], + analyze: false, }); expect(targets.getFilesToCopy).toHaveBeenCalledTimes(1); expect(targets.getFilesToCopy).toHaveBeenCalledWith(target, buildType); @@ -770,6 +775,7 @@ describe('services/building:configuration', () => { paths: target.output[buildType], copy: filesToCopy, additionalWatch: targetBrowserConfigFiles, + analyze: false, }); expect(targets.getBrowserTargetConfiguration).toHaveBeenCalledTimes(2); expect(targets.getBrowserTargetConfiguration).toHaveBeenCalledWith(target); @@ -889,6 +895,7 @@ describe('services/building:configuration', () => { paths: target.output[buildType], copy: [], additionalWatch: [], + analyze: false, }); }); @@ -1010,6 +1017,7 @@ describe('services/building:configuration', () => { paths: target.output[buildType], copy: filesToCopy, additionalWatch: [], + analyze: false, }); expect(targets.getFilesToCopy).toHaveBeenCalledTimes(1); expect(targets.getFilesToCopy).toHaveBeenCalledWith(target, buildType); @@ -1131,6 +1139,7 @@ describe('services/building:configuration', () => { paths: target.output[buildType], copy: [], additionalWatch: [], + analyze: false, }); }); From 9e8109f8397768046db69475b98da1deeef266a8 Mon Sep 17 00:00:00 2001 From: homer0 Date: Sun, 25 Aug 2019 06:39:16 -0300 Subject: [PATCH 12/15] feat(services/configuration): implement the visualizer plugin --- .../browserDevelopmentConfiguration.js | 7 ++ .../browserProductionConfiguration.js | 7 ++ .../nodeDevelopmentConfiguration.js | 7 ++ .../nodeProductionConfiguration.js | 7 ++ .../browserDevelopmentConfiguration.test.js | 79 +++++++++++++++++ .../browserProductionConfiguration.test.js | 86 +++++++++++++++++++ .../nodeDevelopmentConfiguration.test.js | 74 ++++++++++++++++ .../nodeProductionConfiguration.test.js | 74 ++++++++++++++++ 8 files changed, 341 insertions(+) diff --git a/src/services/configurations/browserDevelopmentConfiguration.js b/src/services/configurations/browserDevelopmentConfiguration.js index ee0007e..a00fa0e 100644 --- a/src/services/configurations/browserDevelopmentConfiguration.js +++ b/src/services/configurations/browserDevelopmentConfiguration.js @@ -5,6 +5,7 @@ const sass = require('rollup-plugin-sass'); const html = require('rollup-plugin-html'); const json = require('rollup-plugin-json'); const polyfill = require('rollup-plugin-polyfill'); +const visualizer = require('rollup-plugin-visualizer'); const { provider } = require('jimple'); const ConfigurationFile = require('../../abstracts/configurationFile'); @@ -72,6 +73,7 @@ class RollupBrowserDevelopmentConfiguration extends ConfigurationFile { input, output, target, + analyze, } = params; // Create the `stats` plugin instance. const statsPlugin = stats({ @@ -123,6 +125,11 @@ class RollupBrowserDevelopmentConfiguration extends ConfigurationFile { template(pluginSettings.template), copy(pluginSettings.copy), statsPlugin.log(statsLogSettings), + ...( + analyze ? + [visualizer(pluginSettings.visualizer)] : + [] + ), ]; // Get the list of external dependencies. const { external } = pluginSettings.external; diff --git a/src/services/configurations/browserProductionConfiguration.js b/src/services/configurations/browserProductionConfiguration.js index 1a8a17d..bcc5e3e 100644 --- a/src/services/configurations/browserProductionConfiguration.js +++ b/src/services/configurations/browserProductionConfiguration.js @@ -6,6 +6,7 @@ const html = require('rollup-plugin-html'); const json = require('rollup-plugin-json'); const polyfill = require('rollup-plugin-polyfill'); const { terser } = require('rollup-plugin-terser'); +const visualizer = require('rollup-plugin-visualizer'); const { provider } = require('jimple'); const ConfigurationFile = require('../../abstracts/configurationFile'); @@ -73,6 +74,7 @@ class RollupBrowserProductionConfiguration extends ConfigurationFile { input, output, target, + analyze, } = params; // Create the `stats` plugin instance. const statsPlugin = stats({ @@ -119,6 +121,11 @@ class RollupBrowserProductionConfiguration extends ConfigurationFile { [] ), copy(pluginSettings.copy), + ...( + analyze ? + [visualizer(pluginSettings.visualizer)] : + [] + ), ]; // If the target is not a library, push the template plugin for the HTML file. if (!target.library) { diff --git a/src/services/configurations/nodeDevelopmentConfiguration.js b/src/services/configurations/nodeDevelopmentConfiguration.js index 9eb170e..35ac238 100644 --- a/src/services/configurations/nodeDevelopmentConfiguration.js +++ b/src/services/configurations/nodeDevelopmentConfiguration.js @@ -5,6 +5,7 @@ const sass = require('rollup-plugin-sass'); const html = require('rollup-plugin-html'); const json = require('rollup-plugin-json'); const polyfill = require('rollup-plugin-polyfill'); +const visualizer = require('rollup-plugin-visualizer'); const { provider } = require('jimple'); const ConfigurationFile = require('../../abstracts/configurationFile'); @@ -67,6 +68,7 @@ class RollupNodeDevelopmentConfiguration extends ConfigurationFile { input, output, target, + analyze, } = params; // Create the `stats` plugin instance. const statsPlugin = stats({ @@ -103,6 +105,11 @@ class RollupNodeDevelopmentConfiguration extends ConfigurationFile { urls(pluginSettings.urls), copy(pluginSettings.copy), statsPlugin.log(pluginSettings.statsLog), + ...( + analyze ? + [visualizer(pluginSettings.visualizer)] : + [] + ), ]; // Get the list of external dependencies. const { external } = pluginSettings.external; diff --git a/src/services/configurations/nodeProductionConfiguration.js b/src/services/configurations/nodeProductionConfiguration.js index f66ce12..e3d6751 100644 --- a/src/services/configurations/nodeProductionConfiguration.js +++ b/src/services/configurations/nodeProductionConfiguration.js @@ -5,6 +5,7 @@ const sass = require('rollup-plugin-sass'); const html = require('rollup-plugin-html'); const json = require('rollup-plugin-json'); const polyfill = require('rollup-plugin-polyfill'); +const visualizer = require('rollup-plugin-visualizer'); const { provider } = require('jimple'); const ConfigurationFile = require('../../abstracts/configurationFile'); @@ -66,6 +67,7 @@ class RollupNodeProductionConfiguration extends ConfigurationFile { input, output, target, + analyze, } = params; // Create the `stats` plugin instance. const statsPlugin = stats({ @@ -102,6 +104,11 @@ class RollupNodeProductionConfiguration extends ConfigurationFile { urls(pluginSettings.urls), copy(pluginSettings.copy), statsPlugin.log(pluginSettings.statsLog), + ...( + analyze ? + [visualizer(pluginSettings.visualizer)] : + [] + ), ]; // Get the list of external dependencies. const { external } = pluginSettings.external; diff --git a/tests/services/configurations/browserDevelopmentConfiguration.test.js b/tests/services/configurations/browserDevelopmentConfiguration.test.js index 07fbca4..a2797ec 100644 --- a/tests/services/configurations/browserDevelopmentConfiguration.test.js +++ b/tests/services/configurations/browserDevelopmentConfiguration.test.js @@ -10,6 +10,7 @@ jest.mock('rollup-plugin-sass'); jest.mock('rollup-plugin-html'); jest.mock('rollup-plugin-json'); jest.mock('rollup-plugin-polyfill'); +jest.mock('rollup-plugin-visualizer'); jest.mock('/src/abstracts/configurationFile', () => ConfigurationFileMock); jest.unmock('/src/services/configurations/browserDevelopmentConfiguration'); @@ -39,6 +40,7 @@ const sass = require('rollup-plugin-sass'); const html = require('rollup-plugin-html'); const json = require('rollup-plugin-json'); const polyfill = require('rollup-plugin-polyfill'); +const visualizer = require('rollup-plugin-visualizer'); describe('services/configurations:browserDevelopmentConfiguration', () => { const getPlugins = () => { @@ -70,6 +72,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { resolve: 'resolve-plugin', babel: 'babel-plugin', polyfill: 'polyfill-plugin', + visualizer: 'visualizer-plugin', commonjs: 'commonjs-plugin', extraWatch: 'extra-watch-plugin', runtimeReplace: 'runtime-replace-plugin', @@ -93,6 +96,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { resolve.mockImplementationOnce(() => values.resolve); babel.mockImplementationOnce(() => values.babel); polyfill.mockImplementationOnce(() => values.polyfill); + visualizer.mockImplementationOnce(() => values.visualizer); commonjs.mockImplementationOnce(() => values.commonjs); extraWatch.mockImplementationOnce(() => values.extraWatch); runtimeReplace.mockImplementationOnce(() => values.runtimeReplace); @@ -117,6 +121,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { resolve, babel, polyfill, + visualizer, commonjs, extraWatch, runtimeReplace, @@ -154,6 +159,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { devServer: 'devServer-plugin-settings', copy: 'copy-plugin-settings', polyfill: 'polyfill-plugin-settings', + visualizer: 'visualizer-plugin-settings', }; return { values, @@ -183,6 +189,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { html.mockClear(); json.mockClear(); polyfill.mockClear(); + visualizer.mockClear(); }); it('should be instantiated with all its dependencies', () => { @@ -316,6 +323,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { expect(plugins.mocks.copy).toHaveBeenCalledWith(plugins.settings.copy); expect(plugins.mocks.statsLog).toHaveBeenCalledTimes(1); expect(plugins.mocks.statsLog).toHaveBeenCalledWith(plugins.settings.statsLog); + expect(plugins.mocks.visualizer).toHaveBeenCalledTimes(0); expect(events.reduce).toHaveBeenCalledTimes(1); expect(events.reduce).toHaveBeenCalledWith( [ @@ -395,6 +403,77 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { expect(plugins.mocks.moduleReplace).toHaveBeenCalledTimes(0); }); + it('should create a configuration with the \'visualizer\' plugin', () => { + // Given + const plugins = getPlugins(); + const events = { + reduce: jest.fn((eventNames, config) => config), + }; + const pathUtils = 'pathUtils'; + const rollupPluginSettingsConfiguration = { + getConfig: jest.fn(() => plugins.settings), + }; + const target = { + css: {}, + paths: { + build: 'dist', + }, + watch: { + development: false, + }, + }; + const output = {}; + const input = 'input'; + const definitions = 'definitions'; + const params = { + target, + input, + output, + definitions, + analyze: true, + }; + let sut = null; + let result = null; + // When + sut = new RollupBrowserDevelopmentConfiguration( + events, + pathUtils, + rollupPluginSettingsConfiguration + ); + result = sut.getConfig(params); + // Then + expect(result).toEqual({ + input, + output: Object.assign({}, output, { + globals: plugins.settings.globals, + }), + plugins: [ + plugins.values.statsReset, + plugins.values.resolve, + plugins.values.commonjs, + plugins.values.babel, + plugins.values.polyfill, + plugins.values.windowAsGlobal, + plugins.values.runtimeReplace, + plugins.values.moduleReplace, + plugins.values.extraWatch, + plugins.values.sass, + plugins.values.css, + plugins.values.stylesheetAssets, + plugins.values.html, + plugins.values.json, + plugins.values.urls, + plugins.values.template, + plugins.values.copy, + plugins.values.statsLog, + plugins.values.visualizer, + ], + external: plugins.settings.external.external, + }); + expect(plugins.mocks.visualizer).toHaveBeenCalledTimes(1); + expect(plugins.mocks.visualizer).toHaveBeenCalledWith(plugins.settings.visualizer); + }); + it('should create a configuration for a target with CSS modules', () => { // Given const plugins = getPlugins(); diff --git a/tests/services/configurations/browserProductionConfiguration.test.js b/tests/services/configurations/browserProductionConfiguration.test.js index 16f66d2..1db7615 100644 --- a/tests/services/configurations/browserProductionConfiguration.test.js +++ b/tests/services/configurations/browserProductionConfiguration.test.js @@ -10,6 +10,7 @@ jest.mock('rollup-plugin-sass'); jest.mock('rollup-plugin-html'); jest.mock('rollup-plugin-json'); jest.mock('rollup-plugin-polyfill'); +jest.mock('rollup-plugin-visualizer'); jest.mock('rollup-plugin-terser'); jest.mock('/src/abstracts/configurationFile', () => ConfigurationFileMock); jest.unmock('/src/services/configurations/browserProductionConfiguration'); @@ -40,6 +41,7 @@ const sass = require('rollup-plugin-sass'); const html = require('rollup-plugin-html'); const json = require('rollup-plugin-json'); const polyfill = require('rollup-plugin-polyfill'); +const visualizer = require('rollup-plugin-visualizer'); const { terser } = require('rollup-plugin-terser'); describe('services/configurations:browserProductionConfiguration', () => { @@ -63,6 +65,7 @@ describe('services/configurations:browserProductionConfiguration', () => { resolve: 'resolve-plugin', babel: 'babel-plugin', polyfill: 'polyfill-plugin', + visualizer: 'visualizer-plugin', commonjs: 'commonjs-plugin', extraWatch: 'extra-watch-plugin', runtimeReplace: 'runtime-replace-plugin', @@ -86,6 +89,7 @@ describe('services/configurations:browserProductionConfiguration', () => { resolve.mockImplementationOnce(() => values.resolve); babel.mockImplementationOnce(() => values.babel); polyfill.mockImplementationOnce(() => values.polyfill); + visualizer.mockImplementationOnce(() => values.visualizer); commonjs.mockImplementationOnce(() => values.commonjs); extraWatch.mockImplementationOnce(() => values.extraWatch); runtimeReplace.mockImplementationOnce(() => values.runtimeReplace); @@ -117,6 +121,7 @@ describe('services/configurations:browserProductionConfiguration', () => { html, json, terser, + visualizer, }; const settings = { resolve: 'resolve-plugin-settings', @@ -145,6 +150,7 @@ describe('services/configurations:browserProductionConfiguration', () => { compression: 'compression-plugin-settings', copy: 'copy-plugin-settings', polyfill: 'polyfill-plugin-settings', + visualizer: 'visualizer-plugin-settings', }; return { values, @@ -175,6 +181,7 @@ describe('services/configurations:browserProductionConfiguration', () => { json.mockClear(); terser.mockClear(); polyfill.mockClear(); + visualizer.mockClear(); }); it('should be instantiated with all its dependencies', () => { @@ -551,6 +558,85 @@ describe('services/configurations:browserProductionConfiguration', () => { expect(plugins.mocks.moduleReplace).toHaveBeenCalledTimes(0); }); + it('should create a configuration with the \'visualizer\' plugin', () => { + // Given + const plugins = getPlugins(); + const events = { + reduce: jest.fn((eventNames, config) => config), + }; + const pathUtils = 'pathUtils'; + const rollupPluginSettingsConfiguration = { + getConfig: jest.fn(() => plugins.settings), + }; + const target = { + css: { + modules: true, + }, + paths: { + build: 'dist', + }, + uglifyOnProduction: false, + watch: { + production: true, + }, + }; + const output = { + globals: { + wootils: 'wootils', + }, + }; + const input = 'input'; + const params = { + target, + input, + output, + analyze: true, + }; + let sut = null; + let result = null; + // When + sut = new RollupBrowserProductionConfiguration( + events, + pathUtils, + rollupPluginSettingsConfiguration + ); + result = sut.getConfig(params); + // Then + expect(result).toEqual({ + input, + output: Object.assign({}, output, { + globals: Object.assign({}, output.globals, plugins.settings.globals), + }), + plugins: [ + plugins.values.statsReset, + plugins.values.resolve, + plugins.values.commonjs, + plugins.values.babel, + plugins.values.polyfill, + plugins.values.windowAsGlobal, + plugins.values.runtimeReplace, + plugins.values.moduleReplace, + plugins.values.extraWatch, + plugins.values.sass, + plugins.values.css, + plugins.values.stylesheetAssets, + plugins.values.stylesheetModulesFixer, + plugins.values.html, + plugins.values.json, + plugins.values.urls, + plugins.values.copy, + plugins.values.visualizer, + plugins.values.template, + plugins.values.compression, + plugins.values.statsLog, + ], + watch: plugins.settings.watch, + external: plugins.settings.external.external, + }); + expect(plugins.mocks.visualizer).toHaveBeenCalledTimes(1); + expect(plugins.mocks.visualizer).toHaveBeenCalledWith(plugins.settings.visualizer); + }); + it('should create a configuration for a target with CSS modules', () => { // Given const plugins = getPlugins(); diff --git a/tests/services/configurations/nodeDevelopmentConfiguration.test.js b/tests/services/configurations/nodeDevelopmentConfiguration.test.js index a2e4cc8..f4f2805 100644 --- a/tests/services/configurations/nodeDevelopmentConfiguration.test.js +++ b/tests/services/configurations/nodeDevelopmentConfiguration.test.js @@ -10,6 +10,7 @@ jest.mock('rollup-plugin-sass'); jest.mock('rollup-plugin-html'); jest.mock('rollup-plugin-json'); jest.mock('rollup-plugin-polyfill'); +jest.mock('rollup-plugin-visualizer'); jest.mock('/src/abstracts/configurationFile', () => ConfigurationFileMock); jest.unmock('/src/services/configurations/nodeDevelopmentConfiguration'); @@ -35,6 +36,7 @@ const sass = require('rollup-plugin-sass'); const html = require('rollup-plugin-html'); const json = require('rollup-plugin-json'); const polyfill = require('rollup-plugin-polyfill'); +const visualizer = require('rollup-plugin-visualizer'); describe('services/configurations:nodeDevelopmentConfiguration', () => { const getPlugins = () => { @@ -55,6 +57,7 @@ describe('services/configurations:nodeDevelopmentConfiguration', () => { resolve: 'resolve-plugin', babel: 'babel-plugin', polyfill: 'polyfill-plugin', + visualizer: 'visualizer-plugin', commonjs: 'commonjs-plugin', extraWatch: 'extra-watch-plugin', moduleReplace: 'module-replace-plugin', @@ -74,6 +77,7 @@ describe('services/configurations:nodeDevelopmentConfiguration', () => { resolve.mockImplementationOnce(() => values.resolve); babel.mockImplementationOnce(() => values.babel); polyfill.mockImplementationOnce(() => values.polyfill); + visualizer.mockImplementationOnce(() => values.visualizer); commonjs.mockImplementationOnce(() => values.commonjs); extraWatch.mockImplementationOnce(() => values.extraWatch); moduleReplace.mockImplementationOnce(() => values.moduleReplace); @@ -92,6 +96,7 @@ describe('services/configurations:nodeDevelopmentConfiguration', () => { resolve, babel, polyfill, + visualizer, commonjs, extraWatch, moduleReplace, @@ -125,6 +130,7 @@ describe('services/configurations:nodeDevelopmentConfiguration', () => { watch: 'watch-plugin-settings', copy: 'copy-plugin-settings', polyfill: 'polyfill-plugin-settings', + visualizer: 'visualizer-plugin-settings', }; return { values, @@ -150,6 +156,7 @@ describe('services/configurations:nodeDevelopmentConfiguration', () => { html.mockClear(); json.mockClear(); polyfill.mockClear(); + visualizer.mockClear(); }); it('should be instantiated with all its dependencies', () => { @@ -352,6 +359,73 @@ describe('services/configurations:nodeDevelopmentConfiguration', () => { expect(plugins.mocks.moduleReplace).toHaveBeenCalledTimes(0); }); + it('should create a configuration with the \'visualizer\' plugin', () => { + // Given + const plugins = getPlugins(); + const events = { + reduce: jest.fn((eventNames, config) => config), + }; + const pathUtils = 'pathUtils'; + const rollupPluginSettingsConfiguration = { + getConfig: jest.fn(() => plugins.settings), + }; + const target = { + css: {}, + paths: { + build: 'dist', + }, + watch: { + development: false, + }, + }; + const output = {}; + const input = 'input'; + const params = { + target, + input, + output, + analyze: true, + }; + let sut = null; + let result = null; + // When + sut = new RollupNodeDevelopmentConfiguration( + events, + pathUtils, + rollupPluginSettingsConfiguration + ); + result = sut.getConfig(params); + // Then + expect(result).toEqual({ + input, + output: Object.assign({}, output, { + globals: plugins.settings.globals, + }), + plugins: [ + plugins.values.statsReset, + plugins.values.resolve, + plugins.values.commonjs, + plugins.values.babel, + plugins.values.polyfill, + plugins.values.moduleReplace, + plugins.values.extraWatch, + plugins.values.sass, + plugins.values.css, + plugins.values.stylesheetAssetsHelper, + plugins.values.stylesheetAssets, + plugins.values.html, + plugins.values.json, + plugins.values.urls, + plugins.values.copy, + plugins.values.statsLog, + plugins.values.visualizer, + ], + external: plugins.settings.external.external, + }); + expect(plugins.mocks.visualizer).toHaveBeenCalledTimes(1); + expect(plugins.mocks.visualizer).toHaveBeenCalledWith(plugins.settings.visualizer); + }); + it('should create a configuration for a target with custom globals', () => { // Given const plugins = getPlugins(); diff --git a/tests/services/configurations/nodeProductionConfiguration.test.js b/tests/services/configurations/nodeProductionConfiguration.test.js index 8a71115..d28c3fe 100644 --- a/tests/services/configurations/nodeProductionConfiguration.test.js +++ b/tests/services/configurations/nodeProductionConfiguration.test.js @@ -10,6 +10,7 @@ jest.mock('rollup-plugin-sass'); jest.mock('rollup-plugin-html'); jest.mock('rollup-plugin-json'); jest.mock('rollup-plugin-polyfill'); +jest.mock('rollup-plugin-visualizer'); jest.mock('/src/abstracts/configurationFile', () => ConfigurationFileMock); jest.unmock('/src/services/configurations/nodeProductionConfiguration'); @@ -34,6 +35,7 @@ const sass = require('rollup-plugin-sass'); const html = require('rollup-plugin-html'); const json = require('rollup-plugin-json'); const polyfill = require('rollup-plugin-polyfill'); +const visualizer = require('rollup-plugin-visualizer'); describe('services/configurations:nodeProductionConfiguration', () => { const getPlugins = () => { @@ -53,6 +55,7 @@ describe('services/configurations:nodeProductionConfiguration', () => { resolve: 'resolve-plugin', babel: 'babel-plugin', polyfill: 'polyfill-plugin', + visualizer: 'visualizer-plugin', commonjs: 'commonjs-plugin', extraWatch: 'extra-watch-plugin', moduleReplace: 'module-replace-plugin', @@ -71,6 +74,7 @@ describe('services/configurations:nodeProductionConfiguration', () => { resolve.mockImplementationOnce(() => values.resolve); babel.mockImplementationOnce(() => values.babel); polyfill.mockImplementationOnce(() => values.polyfill); + visualizer.mockImplementationOnce(() => values.visualizer); commonjs.mockImplementationOnce(() => values.commonjs); extraWatch.mockImplementationOnce(() => values.extraWatch); moduleReplace.mockImplementationOnce(() => values.moduleReplace); @@ -88,6 +92,7 @@ describe('services/configurations:nodeProductionConfiguration', () => { resolve, babel, polyfill, + visualizer, commonjs, extraWatch, moduleReplace, @@ -120,6 +125,7 @@ describe('services/configurations:nodeProductionConfiguration', () => { watch: 'watch-plugin-settings', copy: 'copy-plugin-settings', polyfill: 'polyfill-plugin-settings', + visualizer: 'visualizer-plugin-settings', }; return { values, @@ -144,6 +150,7 @@ describe('services/configurations:nodeProductionConfiguration', () => { html.mockClear(); json.mockClear(); polyfill.mockClear(); + visualizer.mockClear(); }); it('should be instantiated with all its dependencies', () => { @@ -346,6 +353,73 @@ describe('services/configurations:nodeProductionConfiguration', () => { expect(plugins.mocks.moduleReplace).toHaveBeenCalledTimes(0); }); + it('should create a configuration with the \'visualizer\' plugin', () => { + // Given + const plugins = getPlugins(); + const events = { + reduce: jest.fn((eventNames, config) => config), + }; + const pathUtils = 'pathUtils'; + const rollupPluginSettingsConfiguration = { + getConfig: jest.fn(() => plugins.settings), + }; + const target = { + css: {}, + paths: { + build: 'dist', + }, + watch: { + production: false, + }, + }; + const output = {}; + const input = 'input'; + const params = { + target, + input, + output, + analyze: true, + }; + let sut = null; + let result = null; + // When + sut = new RollupNodeProductionConfiguration( + events, + pathUtils, + rollupPluginSettingsConfiguration + ); + result = sut.getConfig(params); + // Then + expect(result).toEqual({ + input, + output: Object.assign({}, output, { + globals: plugins.settings.globals, + }), + plugins: [ + plugins.values.statsReset, + plugins.values.resolve, + plugins.values.commonjs, + plugins.values.babel, + plugins.values.polyfill, + plugins.values.moduleReplace, + plugins.values.extraWatch, + plugins.values.sass, + plugins.values.css, + plugins.values.stylesheetAssetsHelper, + plugins.values.stylesheetAssets, + plugins.values.html, + plugins.values.json, + plugins.values.urls, + plugins.values.copy, + plugins.values.statsLog, + plugins.values.visualizer, + ], + external: plugins.settings.external.external, + }); + expect(plugins.mocks.visualizer).toHaveBeenCalledTimes(1); + expect(plugins.mocks.visualizer).toHaveBeenCalledWith(plugins.settings.visualizer); + }); + it('should create a configuration for a target with custom globals', () => { // Given const plugins = getPlugins(); From a58c4d9eea07436844f62c9a2162ac55dd33a6ed Mon Sep 17 00:00:00 2001 From: homer0 Date: Mon, 26 Aug 2019 06:18:34 -0300 Subject: [PATCH 13/15] feat(services/configuration/plugins): send the build type to the HTML generator --- src/services/configurations/pluginsConfiguration.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/services/configurations/pluginsConfiguration.js b/src/services/configurations/pluginsConfiguration.js index 13ded63..99b55da 100644 --- a/src/services/configurations/pluginsConfiguration.js +++ b/src/services/configurations/pluginsConfiguration.js @@ -790,12 +790,12 @@ class RollupPluginSettingsConfiguration extends ConfigurationFile { * @ignore */ _getTemplateSettings(params, stats) { - const { target, paths } = params; + const { target, paths, buildType } = params; // Get the rules for common assets. const assetsRules = this._getAssetsRules(params); // Define the plugin settings. const settings = { - template: this.targetsHTML.getFilepath(target), + template: this.targetsHTML.getFilepath(target, false, buildType), output: `${target.paths.build}/${target.html.filename}`, stylesheets: target.css.inject ? [] : From f1b5ef0f46253cd98828a2bc3619aba2fbbf0835 Mon Sep 17 00:00:00 2001 From: homer0 Date: Mon, 26 Aug 2019 18:53:41 -0300 Subject: [PATCH 14/15] chore(project): update projext --- package.json | 2 +- yarn.lock | 967 ++++++++++----------------------------------------- 2 files changed, 192 insertions(+), 777 deletions(-) diff --git a/package.json b/package.json index 909bbe2..4174c8f 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,7 @@ "author": "Leonardo Apiwan (@homer0) ", "license": "MIT", "dependencies": { - "projext": "^7.0.1", + "projext": "^7.1.0", "wootils": "^2.6.5", "jimple": "^1.5.0", "fs-extra": "^8.1.0", diff --git a/yarn.lock b/yarn.lock index 247f2fc..53e394f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -849,16 +849,7 @@ exec-sh "^0.3.2" minimist "^1.2.0" -"@jest/console@^24.7.1": - version "24.7.1" - resolved "https://registry.yarnpkg.com/@jest/console/-/console-24.7.1.tgz#32a9e42535a97aedfe037e725bd67e954b459545" - integrity sha512-iNhtIy2M8bXlAOULWVTUxmnelTLFneTNEkHCgPmgd+zNwy9zVddJ6oS5rZ9iwoscNdT5mMwUd0C51v/fSlzItg== - dependencies: - "@jest/source-map" "^24.3.0" - chalk "^2.0.1" - slash "^2.0.0" - -"@jest/console@^24.9.0": +"@jest/console@^24.7.1", "@jest/console@^24.9.0": version "24.9.0" resolved "https://registry.yarnpkg.com/@jest/console/-/console-24.9.0.tgz#79b1bc06fb74a8cfb01cbdedf945584b1b9707f0" integrity sha512-Zuj6b8TnKXi3q4ymac8EQfc3ea/uhLeCGThFqXeC8H9/raaH8ARPUTdId+XyGd03Z4In0/VjD2OYFcBF09fNLQ== @@ -867,39 +858,6 @@ chalk "^2.0.1" slash "^2.0.0" -"@jest/core@^24.8.0": - version "24.8.0" - resolved "https://registry.yarnpkg.com/@jest/core/-/core-24.8.0.tgz#fbbdcd42a41d0d39cddbc9f520c8bab0c33eed5b" - integrity sha512-R9rhAJwCBQzaRnrRgAdVfnglUuATXdwTRsYqs6NMdVcAl5euG8LtWDe+fVkN27YfKVBW61IojVsXKaOmSnqd/A== - dependencies: - "@jest/console" "^24.7.1" - "@jest/reporters" "^24.8.0" - "@jest/test-result" "^24.8.0" - "@jest/transform" "^24.8.0" - "@jest/types" "^24.8.0" - ansi-escapes "^3.0.0" - chalk "^2.0.1" - exit "^0.1.2" - graceful-fs "^4.1.15" - jest-changed-files "^24.8.0" - jest-config "^24.8.0" - jest-haste-map "^24.8.0" - jest-message-util "^24.8.0" - jest-regex-util "^24.3.0" - jest-resolve-dependencies "^24.8.0" - jest-runner "^24.8.0" - jest-runtime "^24.8.0" - jest-snapshot "^24.8.0" - jest-util "^24.8.0" - jest-validate "^24.8.0" - jest-watcher "^24.8.0" - micromatch "^3.1.10" - p-each-series "^1.0.0" - pirates "^4.0.1" - realpath-native "^1.1.0" - rimraf "^2.5.4" - strip-ansi "^5.0.0" - "@jest/core@^24.9.0": version "24.9.0" resolved "https://registry.yarnpkg.com/@jest/core/-/core-24.9.0.tgz#2ceccd0b93181f9c4850e74f2a9ad43d351369c4" @@ -934,16 +892,6 @@ slash "^2.0.0" strip-ansi "^5.0.0" -"@jest/environment@^24.8.0": - version "24.8.0" - resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-24.8.0.tgz#0342261383c776bdd652168f68065ef144af0eac" - integrity sha512-vlGt2HLg7qM+vtBrSkjDxk9K0YtRBi7HfRFaDxoRtyi+DyVChzhF20duvpdAnKVBV6W5tym8jm0U9EfXbDk1tw== - dependencies: - "@jest/fake-timers" "^24.8.0" - "@jest/transform" "^24.8.0" - "@jest/types" "^24.8.0" - jest-mock "^24.8.0" - "@jest/environment@^24.9.0": version "24.9.0" resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-24.9.0.tgz#21e3afa2d65c0586cbd6cbefe208bafade44ab18" @@ -954,15 +902,6 @@ "@jest/types" "^24.9.0" jest-mock "^24.9.0" -"@jest/fake-timers@^24.8.0": - version "24.8.0" - resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-24.8.0.tgz#2e5b80a4f78f284bcb4bd5714b8e10dd36a8d3d1" - integrity sha512-2M4d5MufVXwi6VzZhJ9f5S/wU4ud2ck0kxPof1Iz3zWx6Y+V2eJrES9jEktB6O3o/oEyk+il/uNu9PvASjWXQw== - dependencies: - "@jest/types" "^24.8.0" - jest-message-util "^24.8.0" - jest-mock "^24.8.0" - "@jest/fake-timers@^24.9.0": version "24.9.0" resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-24.9.0.tgz#ba3e6bf0eecd09a636049896434d306636540c93" @@ -972,33 +911,6 @@ jest-message-util "^24.9.0" jest-mock "^24.9.0" -"@jest/reporters@^24.8.0": - version "24.8.0" - resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-24.8.0.tgz#075169cd029bddec54b8f2c0fc489fd0b9e05729" - integrity sha512-eZ9TyUYpyIIXfYCrw0UHUWUvE35vx5I92HGMgS93Pv7du+GHIzl+/vh8Qj9MCWFK/4TqyttVBPakWMOfZRIfxw== - dependencies: - "@jest/environment" "^24.8.0" - "@jest/test-result" "^24.8.0" - "@jest/transform" "^24.8.0" - "@jest/types" "^24.8.0" - chalk "^2.0.1" - exit "^0.1.2" - glob "^7.1.2" - istanbul-lib-coverage "^2.0.2" - istanbul-lib-instrument "^3.0.1" - istanbul-lib-report "^2.0.4" - istanbul-lib-source-maps "^3.0.1" - istanbul-reports "^2.1.1" - jest-haste-map "^24.8.0" - jest-resolve "^24.8.0" - jest-runtime "^24.8.0" - jest-util "^24.8.0" - jest-worker "^24.6.0" - node-notifier "^5.2.1" - slash "^2.0.0" - source-map "^0.6.0" - string-length "^2.0.0" - "@jest/reporters@^24.9.0": version "24.9.0" resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-24.9.0.tgz#86660eff8e2b9661d042a8e98a028b8d631a5b43" @@ -1026,16 +938,7 @@ source-map "^0.6.0" string-length "^2.0.0" -"@jest/source-map@^24.3.0": - version "24.3.0" - resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-24.3.0.tgz#563be3aa4d224caf65ff77edc95cd1ca4da67f28" - integrity sha512-zALZt1t2ou8le/crCeeiRYzvdnTzaIlpOWaet45lNSqNJUnXbppUUFR4ZUAlzgDmKee4Q5P/tKXypI1RiHwgag== - dependencies: - callsites "^3.0.0" - graceful-fs "^4.1.15" - source-map "^0.6.0" - -"@jest/source-map@^24.9.0": +"@jest/source-map@^24.3.0", "@jest/source-map@^24.9.0": version "24.9.0" resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-24.9.0.tgz#0e263a94430be4b41da683ccc1e6bffe2a191714" integrity sha512-/Xw7xGlsZb4MJzNDgB7PW5crou5JqWiBQaz6xyPd3ArOg2nfn/PunV8+olXbbEZzNl591o5rWKE9BRDaFAuIBg== @@ -1044,15 +947,6 @@ graceful-fs "^4.1.15" source-map "^0.6.0" -"@jest/test-result@^24.8.0": - version "24.8.0" - resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-24.8.0.tgz#7675d0aaf9d2484caa65e048d9b467d160f8e9d3" - integrity sha512-+YdLlxwizlfqkFDh7Mc7ONPQAhA4YylU1s529vVM1rsf67vGZH/2GGm5uO8QzPeVyaVMobCQ7FTxl38QrKRlng== - dependencies: - "@jest/console" "^24.7.1" - "@jest/types" "^24.8.0" - "@types/istanbul-lib-coverage" "^2.0.0" - "@jest/test-result@^24.9.0": version "24.9.0" resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-24.9.0.tgz#11796e8aa9dbf88ea025757b3152595ad06ba0ca" @@ -1062,16 +956,6 @@ "@jest/types" "^24.9.0" "@types/istanbul-lib-coverage" "^2.0.0" -"@jest/test-sequencer@^24.8.0": - version "24.8.0" - resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-24.8.0.tgz#2f993bcf6ef5eb4e65e8233a95a3320248cf994b" - integrity sha512-OzL/2yHyPdCHXEzhoBuq37CE99nkme15eHkAzXRVqthreWZamEMA0WoetwstsQBCXABhczpK03JNbc4L01vvLg== - dependencies: - "@jest/test-result" "^24.8.0" - jest-haste-map "^24.8.0" - jest-runner "^24.8.0" - jest-runtime "^24.8.0" - "@jest/test-sequencer@^24.9.0": version "24.9.0" resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-24.9.0.tgz#f8f334f35b625a4f2f355f2fe7e6036dad2e6b31" @@ -1082,27 +966,6 @@ jest-runner "^24.9.0" jest-runtime "^24.9.0" -"@jest/transform@^24.8.0": - version "24.8.0" - resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-24.8.0.tgz#628fb99dce4f9d254c6fd9341e3eea262e06fef5" - integrity sha512-xBMfFUP7TortCs0O+Xtez2W7Zu1PLH9bvJgtraN1CDST6LBM/eTOZ9SfwS/lvV8yOfcDpFmwf9bq5cYbXvqsvA== - dependencies: - "@babel/core" "^7.1.0" - "@jest/types" "^24.8.0" - babel-plugin-istanbul "^5.1.0" - chalk "^2.0.1" - convert-source-map "^1.4.0" - fast-json-stable-stringify "^2.0.0" - graceful-fs "^4.1.15" - jest-haste-map "^24.8.0" - jest-regex-util "^24.3.0" - jest-util "^24.8.0" - micromatch "^3.1.10" - realpath-native "^1.1.0" - slash "^2.0.0" - source-map "^0.6.1" - write-file-atomic "2.4.1" - "@jest/transform@^24.9.0": version "24.9.0" resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-24.9.0.tgz#4ae2768b296553fadab09e9ec119543c90b16c56" @@ -1125,15 +988,6 @@ source-map "^0.6.1" write-file-atomic "2.4.1" -"@jest/types@^24.8.0": - version "24.8.0" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-24.8.0.tgz#f31e25948c58f0abd8c845ae26fcea1491dea7ad" - integrity sha512-g17UxVr2YfBtaMUxn9u/4+siG1ptg9IGYAYwvpwn61nBg779RXnjE/m7CxYcIzEt0AbHZZAHSEZNhkE2WxURVg== - dependencies: - "@types/istanbul-lib-coverage" "^2.0.0" - "@types/istanbul-reports" "^1.1.1" - "@types/yargs" "^12.0.9" - "@jest/types@^24.9.0": version "24.9.0" resolved "https://registry.yarnpkg.com/@jest/types/-/types-24.9.0.tgz#63cb26cb7500d069e5a389441a7c6ab5e909fc59" @@ -1241,12 +1095,7 @@ resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.3.tgz#3dca0e3f33b200fc7d1139c0cd96c1268cadfd9d" integrity sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA== -"@types/node@*": - version "12.6.8" - resolved "https://registry.yarnpkg.com/@types/node/-/node-12.6.8.tgz#e469b4bf9d1c9832aee4907ba8a051494357c12c" - integrity sha512-aX+gFgA5GHcDi89KG5keey2zf0WfZk/HAQotEamsK2kbey+8yGKcson0hbK8E+v0NArlCJQCqMP161YhV6ZXLg== - -"@types/node@^12.7.2": +"@types/node@*", "@types/node@^12.7.2": version "12.7.2" resolved "https://registry.yarnpkg.com/@types/node/-/node-12.7.2.tgz#c4e63af5e8823ce9cc3f0b34f7b998c2171f0c44" integrity sha512-dyYO+f6ihZEtNPDcWNR1fkoTDf3zAK3lAABDze3mz6POyIercH0lEUawUFXlG8xaQZmm1yEBON/4TsYv/laDYg== @@ -1273,11 +1122,6 @@ resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-13.0.0.tgz#453743c5bbf9f1bed61d959baab5b06be029b2d0" integrity sha512-wBlsw+8n21e6eTd4yVv8YD/E3xq0O6nNnJIquutAsFGE7EyMKz7W6RNT6BRu1SmdgmlCZ9tb0X+j+D6HGr8pZw== -"@types/yargs@^12.0.2", "@types/yargs@^12.0.9": - version "12.0.12" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-12.0.12.tgz#45dd1d0638e8c8f153e87d296907659296873916" - integrity sha512-SOhuU4wNBxhhTHxYaiG5NY4HBhDIDnJF60GU+2LqHAdKKer86//e4yg69aENCtQ04n0ovz+tq2YPME5t5yp4pw== - "@types/yargs@^13.0.0": version "13.0.2" resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-13.0.2.tgz#a64674fc0149574ecd90ba746e932b5a5f7b3653" @@ -1316,9 +1160,9 @@ acorn-globals@^1.0.4: acorn "^2.1.0" acorn-globals@^4.1.0: - version "4.3.2" - resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-4.3.2.tgz#4e2c2313a597fd589720395f6354b41cd5ec8006" - integrity sha512-BbzvZhVtZP+Bs1J1HcwrQe8ycfO0wStkSGxuul3He3GkHOIZ6eTqOkPuw9IP1X3+IkOo4wiJmwkobzXYz4wewQ== + version "4.3.3" + resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-4.3.3.tgz#a86f75b69680b8780d30edd21eee4e0ea170c05e" + integrity sha512-vkR40VwS2SYO98AIeFvzWWh+xyc2qi9s7OoXSFEGIP/rOJKzjnhykaZJNnHdoq4BL2gGxI5EZOU16z896EYnOQ== dependencies: acorn "^6.0.1" acorn-walk "^6.0.1" @@ -1344,9 +1188,9 @@ acorn@^5.5.3: integrity sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw== acorn@^6.0.1: - version "6.2.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.2.1.tgz#3ed8422d6dec09e6121cc7a843ca86a330a86b51" - integrity sha512-JD0xT5FCRDNyjDda3Lrg/IxFscp9q4tiYtxE1/nOzlKCk7hIRuYjhq1kCNkbPjMRMZuFq20HNQn1I9k8Oj0E+Q== + version "6.3.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.3.0.tgz#0087509119ffa4fc0a0041d1e93a417e68cb856e" + integrity sha512-/czfa8BwS88b9gWQVhc8eknunSA2DoJpJyTQkhheIf5E48u1N0R4q/YxxsAeqRrmK9TQ/uYfgLDfZo91UlANIA== acorn@^7.0.0: version "7.0.0" @@ -1358,6 +1202,14 @@ add-matchers@0.6.2: resolved "https://registry.yarnpkg.com/add-matchers/-/add-matchers-0.6.2.tgz#faeb2fa9380228c1b0da5f21a655c69304dd2011" integrity sha512-hVO2wodMei9RF00qe+506MoeJ/NEOdCMEkSJ12+fC3hx/5Z4zmhNiP92nJEF6XhmXokeB0hOtuQrjHCx2vmXrQ== +aggregate-error@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.0.0.tgz#5b5a3c95e9095f311c9ab16c19fb4f3527cd3f79" + integrity sha512-yKD9kEoJIR+2IFqhMwayIBgheLYbB3PS2OBhWae1L/ODTd/JF/30cW0bc9TqzRL3k4U41Dieu3BF4I29p8xesA== + dependencies: + clean-stack "^2.0.0" + indent-string "^3.2.0" + ajv@^6.10.0, ajv@^6.10.2, ajv@^6.5.5: version "6.10.2" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.10.2.tgz#d3cea04d6b017b2894ad69040fec8b623eb4bd52" @@ -1531,9 +1383,9 @@ async-foreach@^0.1.3: integrity sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI= async-limiter@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.0.tgz#78faed8c3d074ab81f22b4e985d79e8738f720f8" - integrity sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg== + version "1.0.1" + resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.1.tgz#dd379e94f0db8310b08291f9d64c3209766617fd" + integrity sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ== async@^3.1.0: version "3.1.0" @@ -1605,19 +1457,6 @@ babel-generator@6.26.1: source-map "^0.5.7" trim-right "^1.0.1" -babel-jest@^24.8.0: - version "24.8.0" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-24.8.0.tgz#5c15ff2b28e20b0f45df43fe6b7f2aae93dba589" - integrity sha512-+5/kaZt4I9efoXzPlZASyK/lN9qdRKmmUav9smVc0ruPQD7IsfucQ87gpOE8mn2jbDuS6M/YOW6n3v9ZoIfgnw== - dependencies: - "@jest/transform" "^24.8.0" - "@jest/types" "^24.8.0" - "@types/babel__core" "^7.1.0" - babel-plugin-istanbul "^5.1.0" - babel-preset-jest "^24.6.0" - chalk "^2.4.2" - slash "^2.0.0" - babel-jest@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-24.9.0.tgz#3fc327cb8467b89d14d7bc70e315104a783ccd54" @@ -1655,13 +1494,6 @@ babel-plugin-istanbul@^5.1.0: istanbul-lib-instrument "^3.3.0" test-exclude "^5.2.3" -babel-plugin-jest-hoist@^24.6.0: - version "24.6.0" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-24.6.0.tgz#f7f7f7ad150ee96d7a5e8e2c5da8319579e78019" - integrity sha512-3pKNH6hMt9SbOv0F3WVmy5CWQ4uogS3k0GY5XLyQHJ9EGpAT9XWkFd2ZiXXtkwFHdAHa5j7w7kfxSP5lAIwu7w== - dependencies: - "@types/babel__traverse" "^7.0.6" - babel-plugin-jest-hoist@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-24.9.0.tgz#4f837091eb407e01447c8843cbec546d0002d756" @@ -1669,14 +1501,6 @@ babel-plugin-jest-hoist@^24.9.0: dependencies: "@types/babel__traverse" "^7.0.6" -babel-preset-jest@^24.6.0: - version "24.6.0" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-24.6.0.tgz#66f06136eefce87797539c0d63f1769cc3915984" - integrity sha512-pdZqLEdmy1ZK5kyRUfvBb2IfTPb2BUvIJczlPspS8fWmBQslNNDBqVfh7BW5leOVJMDZKzjD8XEyABTk6gQ5yw== - dependencies: - "@babel/plugin-syntax-object-rest-spread" "^7.0.0" - babel-plugin-jest-hoist "^24.6.0" - babel-preset-jest@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-24.9.0.tgz#192b521e2217fb1d1f67cf73f70c336650ad3cdc" @@ -1847,7 +1671,7 @@ browser-resolve@^1.11.3: dependencies: resolve "1.1.7" -browserslist@^4.6.0, browserslist@^4.6.2: +browserslist@^4.6.0, browserslist@^4.6.6: version "4.6.6" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.6.6.tgz#6e4bf467cde520bc9dbdf3747dafa03531cec453" integrity sha512-D2Nk3W9JL9Fp/gIcWei8LrERCS+eXu9AM5cfXA8WEZ84lFks+ARnZ0q/R69m2SV3Wjma83QDDPxsNKXUwdIsyA== @@ -1967,9 +1791,9 @@ camelcase@^5.0.0, camelcase@^5.3.1: integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== caniuse-lite@^1.0.30000984: - version "1.0.30000988" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000988.tgz#742f35ec1b8b75b9628d705d7652eea1fef983db" - integrity sha512-lPj3T8poYrRc/bniW5SQPND3GRtSrQdUM/R4mCYTbZxyi3jQiggLvZH4+BYUuX0t4TXjU+vMM7KFDQg+rSzZUQ== + version "1.0.30000989" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000989.tgz#b9193e293ccf7e4426c5245134b8f2a56c0ac4b9" + integrity sha512-vrMcvSuMz16YY6GSVZ0dWDTJP8jqk3iFQ/Aq5iqblPwxSVVZI+zxDyTX0VPqtQsDnfdrBDcsmhgTEOh5R8Lbpw== capture-exit@^2.0.0: version "2.0.0" @@ -2061,9 +1885,9 @@ cheerio@1.0.0-rc.2: parse5 "^3.0.1" chokidar@^2.0.0, chokidar@^2.0.2, chokidar@^2.0.4, chokidar@^2.1.5: - version "2.1.6" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.6.tgz#b6cad653a929e244ce8a834244164d241fa954c5" - integrity sha512-V2jUo67OKkc6ySiRpJrjlpJKl9kDuG+Xb8VgsGzb+aEouhgS1D0weyPU4lEzdAcsCAvrih2J2BqyXqHWvVLw5g== + version "2.1.8" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.8.tgz#804b3a7b6a99358c3c5c61e71d8728f041cff917" + integrity sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg== dependencies: anymatch "^2.0.0" async-each "^1.0.1" @@ -2111,6 +1935,11 @@ clean-css@4.2.x: dependencies: source-map "~0.6.0" +clean-stack@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" + integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== + cli-boxes@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-1.0.0.tgz#4fa917c3e59c94a004cd61f8ee509da651687143" @@ -2137,15 +1966,6 @@ cliui@^3.2.0: strip-ansi "^3.0.1" wrap-ansi "^2.0.0" -cliui@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-4.1.0.tgz#348422dbe82d800b3022eef4f6ac10bf2e4d1b49" - integrity sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ== - dependencies: - string-width "^2.1.1" - strip-ansi "^4.0.0" - wrap-ansi "^2.0.0" - cliui@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz#deefcfdb2e800784aa34f46fa08e06851c7bbbc5" @@ -2334,18 +2154,12 @@ copy-descriptor@^0.1.0: integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= core-js-compat@^3.1.1: - version "3.1.4" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.1.4.tgz#e4d0c40fbd01e65b1d457980fe4112d4358a7408" - integrity sha512-Z5zbO9f1d0YrJdoaQhphVAnKPimX92D6z8lCGphH89MNRxlL1prI9ExJPqVwP0/kgkQCv8c4GJGT8X16yUncOg== + version "3.2.1" + resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.2.1.tgz#0cbdbc2e386e8e00d3b85dc81c848effec5b8150" + integrity sha512-MwPZle5CF9dEaMYdDeWm73ao/IflDH+FjeJCWEADcEgFSE9TLimFKwJsfmkwzI8eC0Aj0mgvMDjeQjrElkz4/A== dependencies: - browserslist "^4.6.2" - core-js-pure "3.1.4" - semver "^6.1.1" - -core-js-pure@3.1.4: - version "3.1.4" - resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.1.4.tgz#5fa17dc77002a169a3566cc48dc774d2e13e3769" - integrity sha512-uJ4Z7iPNwiu1foygbcZYJsJs1jiXrTTCvxfLDXNhI/I+NHbSIEyr548y4fcsCEyWY0XgfAG/qqaunJ1SThHenA== + browserslist "^4.6.6" + semver "^6.3.0" core-js@^2.4.0: version "2.6.9" @@ -2587,16 +2401,19 @@ define-property@^2.0.2: is-descriptor "^1.0.2" isobject "^3.0.1" -del@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/del/-/del-5.0.0.tgz#4fa698b7a1ffb4e2ab3e8929ed699799654d6720" - integrity sha512-TfU3nUY0WDIhN18eq+pgpbLY9AfL5RfiE9czKaTSolc6aK7qASXfDErvYgjV1UqCR4sNXDoxO0/idPmhDUt2Sg== +del@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/del/-/del-5.1.0.tgz#d9487c94e367410e6eff2925ee58c0c84a75b3a7" + integrity sha512-wH9xOVHnczo9jN2IW68BabcecVPxacIA3g/7z6vhSU/4stOKQzeCRK0yD0A24WiAAUJmmVpWqrERcTxnLo3AnA== dependencies: - globby "^10.0.0" - is-path-cwd "^2.0.0" - is-path-in-cwd "^2.0.0" - p-map "^2.0.0" - rimraf "^2.6.3" + globby "^10.0.1" + graceful-fs "^4.2.2" + is-glob "^4.0.1" + is-path-cwd "^2.2.0" + is-path-inside "^3.0.1" + p-map "^3.0.0" + rimraf "^3.0.0" + slash "^3.0.0" delayed-stream@~1.0.0: version "1.0.0" @@ -2652,11 +2469,6 @@ dicer@0.2.5: readable-stream "1.1.x" streamsearch "0.1.2" -diff-sequences@^24.3.0: - version "24.3.0" - resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-24.3.0.tgz#0f20e8a1df1abddaf4d9c226680952e64118b975" - integrity sha512-xLqpez+Zj9GKSnPWS0WZw1igGocZ+uua8+y+5dDNTT934N3QuY1sp2LkHzwiaYQGz60hMq0pjAshdeXm5VUOEw== - diff-sequences@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-24.9.0.tgz#5715d6244e2aa65f48bba0bc972db0b0b11e95b5" @@ -2684,7 +2496,15 @@ doctrine@^3.0.0: dependencies: esutils "^2.0.2" -dom-serializer@0, dom-serializer@~0.1.0: +dom-serializer@0: + version "0.2.1" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.2.1.tgz#13650c850daffea35d8b626a4cfc4d3a17643fdb" + integrity sha512-sK3ujri04WyjwQXVoK4PU3y8ula1stq10GJZpqHIUgoGZdsGzAGu65BnU3d08aTVSvO7mGPZUc0wTEDL+qGE0Q== + dependencies: + domelementtype "^2.0.1" + entities "^2.0.0" + +dom-serializer@~0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.1.tgz#1ec4059e284babed36eec2941d4a970a189ce7c0" integrity sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA== @@ -2697,6 +2517,11 @@ domelementtype@1, domelementtype@^1.3.0, domelementtype@^1.3.1: resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.1.tgz#d048c44b37b0d10a7f2a3d5fee3f4333d790481f" integrity sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w== +domelementtype@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.0.1.tgz#1f8bdfe91f5a78063274e803b4bdcedf6e94f94d" + integrity sha512-5HOHUDsYZWV8FGWN0Njbr/Rn7f/eWSQi1v7+HsUVwXgn8nWWlL64zKDkS0n8ZmQ3mlWOMuXOnR+7Nx/5tMO5AQ== + domexception@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/domexception/-/domexception-1.0.1.tgz#937442644ca6a31261ef36e3ec677fe805582c90" @@ -2746,10 +2571,10 @@ dotenv-expand@^5.1.0: resolved "https://registry.yarnpkg.com/dotenv-expand/-/dotenv-expand-5.1.0.tgz#3fbaf020bfd794884072ea26b1e9791d45a629f0" integrity sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA== -dotenv@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-8.0.0.tgz#ed310c165b4e8a97bb745b0a9d99c31bda566440" - integrity sha512-30xVGqjLjiUOArT4+M5q9sYdvuR4riM6yK9wMcas9Vbp6zZa+ocC9dp6QoftuhTPhFAiLK/0C5Ni2nou/Bk8lg== +dotenv@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-8.1.0.tgz#d811e178652bfb8a1e593c6dd704ec7e90d85ea2" + integrity sha512-GUE3gqcDCaMltj2++g6bRQ5rBJWtkWTmqmD0fo1RnnMuUqHNCt2oTPeDnS9n6fKYvlhn7AeBkb38lymBtWBQdA== duplexer3@^0.1.4: version "0.1.4" @@ -2770,9 +2595,9 @@ ee-first@1.1.1: integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= electron-to-chromium@^1.3.191: - version "1.3.209" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.209.tgz#cd43879f1d3fb85c75bb843fb11a828570fa1ce4" - integrity sha512-KxRvLp5jUapyKIcMaecwgmUpJEsJKuHn0DJJPZjZh2valqYlzdmGvaE/nTAqwKqQwf0jIKv7Go4FYHu9wKWzOg== + version "1.3.241" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.241.tgz#859dc49ab7f90773ed698767372d384190f60cb1" + integrity sha512-Gb9E6nWZlbgjDDNe5cAvMJixtn79krNJ70EDpq/M10lkGo7PGtBUe7Y0CYVHsBScRwi6ybCS+YetXAN9ysAHDg== emoji-regex@^7.0.1: version "7.0.3" @@ -2806,6 +2631,11 @@ entities@^1.1.1, entities@~1.1.1: resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56" integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w== +entities@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/entities/-/entities-2.0.0.tgz#68d6084cab1b079767540d80e56a39b423e4abf4" + integrity sha512-D9f7V0JSRwIxlRI2mjMqufDrRDnx8p+eEOz7aUM9SuvF8gsBzra0/6tbjl1m8eQHrZlYj6PxqE00hZ1SAIKPLw== + eol@^0.9.1: version "0.9.1" resolved "https://registry.yarnpkg.com/eol/-/eol-0.9.1.tgz#f701912f504074be35c6117a5c4ade49cd547acd" @@ -2863,9 +2693,9 @@ escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= escodegen@^1.6.1, escodegen@^1.9.1: - version "1.11.1" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.11.1.tgz#c485ff8d6b4cdb89e27f4a856e91f118401ca510" - integrity sha512-JwiqFD9KdGVVpeuRa68yU3zZnBEOcPs0nKW7wZzXky8Z7tffdYUHbe11bPCV5jYlK6DVdKLWLm0f5I/QlL0Kmw== + version "1.12.0" + resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.12.0.tgz#f763daf840af172bb3a2b6dd7219c0e17f7ff541" + integrity sha512-TuA+EhsanGcme5T3R0L80u4t8CpbXQjegRmf7+FPTJrtCTErXFeelblRgHQa1FofEzqYYJmJ/OqjTwREp9qgmg== dependencies: esprima "^3.1.3" estraverse "^4.2.0" @@ -3060,26 +2890,14 @@ eslint-scope@^5.0.0: esrecurse "^4.1.0" estraverse "^4.1.1" -eslint-utils@^1.3.0, eslint-utils@^1.3.1: - version "1.4.0" - resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.4.0.tgz#e2c3c8dba768425f897cf0f9e51fe2e241485d4c" - integrity sha512-7ehnzPaP5IIEh1r1tkjuIrxqhNkzUJa9z3R92tLJdZIVdWaczEhr3EbhGtsMrVxi1KeR8qA7Off6SWc5WNQqyQ== - dependencies: - eslint-visitor-keys "^1.0.0" - -eslint-utils@^1.4.2: +eslint-utils@^1.3.0, eslint-utils@^1.3.1, eslint-utils@^1.4.2: version "1.4.2" resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.4.2.tgz#166a5180ef6ab7eb462f162fd0e6f2463d7309ab" integrity sha512-eAZS2sEUMlIeCjBeubdj45dmBHQwPHWyBcT1VSYB7o9x9WRRqKxyUoiXlRjyAwzN7YEzHJlYg0NmzDRWx6GP4Q== dependencies: eslint-visitor-keys "^1.0.0" -eslint-visitor-keys@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#3f3180fb2e291017716acb4c9d6d5b5c34a6a81d" - integrity sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ== - -eslint-visitor-keys@^1.1.0: +eslint-visitor-keys@^1.0.0, eslint-visitor-keys@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz#e2a82cea84ff246ad6fb57f9bde5b46621459ec2" integrity sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A== @@ -3161,9 +2979,9 @@ esrecurse@^4.1.0: estraverse "^4.1.0" estraverse@^4.0.0, estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" - integrity sha1-De4/7TH81GlhjOc0IJn8GvoL2xM= + version "4.3.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" + integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== estree-walker@^0.2.1: version "0.2.1" @@ -3234,18 +3052,6 @@ expand-brackets@^2.1.4: snapdragon "^0.8.1" to-regex "^3.0.1" -expect@^24.8.0: - version "24.8.0" - resolved "https://registry.yarnpkg.com/expect/-/expect-24.8.0.tgz#471f8ec256b7b6129ca2524b2a62f030df38718d" - integrity sha512-/zYvP8iMDrzaaxHVa724eJBCKqSHmO0FA7EDkBiRHxg6OipmMn1fN+C8T9L9K8yr7UONkOifu6+LLH+z76CnaA== - dependencies: - "@jest/types" "^24.8.0" - ansi-styles "^3.2.0" - jest-get-type "^24.8.0" - jest-matcher-utils "^24.8.0" - jest-message-util "^24.8.0" - jest-regex-util "^24.3.0" - expect@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/expect/-/expect-24.9.0.tgz#b75165b4817074fa4a157794f46fe9f1ba15b6ca" @@ -3721,7 +3527,7 @@ globals@^9.18.0: resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" integrity sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ== -globby@^10.0.0, globby@^10.0.1: +globby@^10.0.1: version "10.0.1" resolved "https://registry.yarnpkg.com/globby/-/globby-10.0.1.tgz#4782c34cb75dd683351335c5829cc3420e606b22" integrity sha512-sSs4inE1FB2YQiymcmTv6NWENryABjUNPeWhOvmn4SjtKybglsyPZxFB3U1/+L1bYi0rNZDqCLlHyLYDl1Pq5A== @@ -3761,10 +3567,10 @@ got@^6.7.1: unzip-response "^2.0.1" url-parse-lax "^1.0.0" -graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.1.9, graceful-fs@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.0.tgz#8d8fdc73977cb04104721cb53666c1ca64cd328b" - integrity sha512-jpSvDPV4Cq/bgtpndIWbI5hmYxhQGHPC4d4cqBPb4DLniCfhJokdXhwhaDuLBGLQdvvRum/UiX6ECVIPvDXqdg== +graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.1.9, graceful-fs@^4.2.0, graceful-fs@^4.2.2: + version "4.2.2" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.2.tgz#6f0952605d0140c1cfdb138ed005775b92d67b02" + integrity sha512-IItsdsea19BoLC7ELy13q1iJFNmd7ofZH5+X/pJr90/nRoPEX0DJo1dHDbgtYWOhJhcCgMDTOw84RZ72q6lB+Q== "growl@~> 1.10.0": version "1.10.5" @@ -3871,9 +3677,9 @@ he@1.2.x: integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== hosted-git-info@^2.1.4: - version "2.7.1" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.7.1.tgz#97f236977bd6e125408930ff6de3eec6281ec047" - integrity sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w== + version "2.8.4" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.4.tgz#44119abaf4bc64692a16ace34700fed9c03e2546" + integrity sha512-pzXIvANXEFrc5oFFXRMkbLPQ2rXRoDERwDLyrcUxGhaZhgP54BBSl9Oheh7Vv0T090cszWBxPjkQQ5Sq1PbBRQ== html-encoding-sniffer@^1.0.2: version "1.0.2" @@ -4020,9 +3826,9 @@ ignore@^4.0.6: integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== ignore@^5.1.1: - version "5.1.2" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.2.tgz#e28e584d43ad7e92f96995019cc43b9e1ac49558" - integrity sha512-vdqWBp7MyzdmHkkRWV5nY+PfGRbYbahfuvsBCh277tq+w9zyNi7h5CYJCK0kmzti9kU+O/cB7sE8HvKv6aXAKQ== + version "5.1.4" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.4.tgz#84b7b3dbe64552b6ef0eca99f6743dbec6d97adf" + integrity sha512-MzbUSahkTW1u7JpKKjY7LCARd1fU5W2rLdxlM4kdkayuCwZImjkpluF9CM1aLewYJguPDqewLam18Y6AU69A8A== import-fresh@^2.0.0: version "2.0.0" @@ -4070,6 +3876,11 @@ indent-string@^2.1.0: dependencies: repeating "^2.0.0" +indent-string@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-3.2.0.tgz#4a5fd6d27cc332f37e5419a504dbb837105c9289" + integrity sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok= + inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" @@ -4321,18 +4132,11 @@ is-obj@^1.0.0: resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" integrity sha1-PkcprB9f3gJc19g6iW2rn09n2w8= -is-path-cwd@^2.0.0: +is-path-cwd@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-2.2.0.tgz#67d43b82664a7b5191fd9119127eb300048a9fdb" integrity sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ== -is-path-in-cwd@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz#bfe2dca26c69f397265a4009963602935a053acb" - integrity sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ== - dependencies: - is-path-inside "^2.1.0" - is-path-inside@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.1.tgz#8ef5b7de50437a3fdca6b4e865ef7aa55cb48036" @@ -4340,12 +4144,10 @@ is-path-inside@^1.0.0: dependencies: path-is-inside "^1.0.1" -is-path-inside@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-2.1.0.tgz#7c9810587d659a40d27bcdb4d5616eab059494b2" - integrity sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg== - dependencies: - path-is-inside "^1.0.2" +is-path-inside@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.1.tgz#7417049ed551d053ab82bba3fdd6baa6b3a81e89" + integrity sha512-CKstxrctq1kUesU6WhtZDbYKzzYBuRH0UYInAVrkc/EYdB9ltbfE0gOoayG9nhohG6447sOOVGhHqsdmBvkbNg== is-plain-obj@^1.1.0: version "1.1.0" @@ -4490,7 +4292,7 @@ istanbul-lib-source-maps@^3.0.1: rimraf "^2.6.3" source-map "^0.6.1" -istanbul-reports@^2.1.1, istanbul-reports@^2.2.6: +istanbul-reports@^2.2.6: version "2.2.6" resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-2.2.6.tgz#7b4f2660d82b29303a8fe6091f8ca4bf058da1af" integrity sha512-SKi4rnMyLBKe0Jy2uUdx28h8oG7ph2PPuQPvIAh31d+Ci+lSiEu4C+h3oBPuJ9+mPKhOyW0M8gY4U5NM1WLeXA== @@ -4504,15 +4306,6 @@ jasmine-expect@^4.0.3: dependencies: add-matchers "0.6.2" -jest-changed-files@^24.8.0: - version "24.8.0" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-24.8.0.tgz#7e7eb21cf687587a85e50f3d249d1327e15b157b" - integrity sha512-qgANC1Yrivsq+UrLXsvJefBKVoCsKB0Hv+mBb6NMjjZ90wwxCDmU3hsCXBya30cH+LnPYjwgcU65i6yJ5Nfuug== - dependencies: - "@jest/types" "^24.8.0" - execa "^1.0.0" - throat "^4.0.0" - jest-changed-files@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-24.9.0.tgz#08d8c15eb79a7fa3fc98269bc14b451ee82f8039" @@ -4522,26 +4315,7 @@ jest-changed-files@^24.9.0: execa "^1.0.0" throat "^4.0.0" -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== - dependencies: - "@jest/core" "^24.8.0" - "@jest/test-result" "^24.8.0" - "@jest/types" "^24.8.0" - chalk "^2.0.1" - exit "^0.1.2" - import-local "^2.0.0" - is-ci "^2.0.0" - jest-config "^24.8.0" - jest-util "^24.8.0" - jest-validate "^24.8.0" - prompts "^2.0.1" - realpath-native "^1.1.0" - yargs "^12.0.2" - -jest-cli@^24.9.0: +jest-cli@^24.8.0, jest-cli@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-24.9.0.tgz#ad2de62d07472d419c6abc301fc432b98b10d2af" integrity sha512-+VLRKyitT3BWoMeSUIHRxV/2g8y9gw91Jh5z2UmXZzkZKpbC08CSehVxgHUwTpy+HwGcns/tqafQDJW7imYvGg== @@ -4560,29 +4334,6 @@ jest-cli@^24.9.0: realpath-native "^1.1.0" yargs "^13.3.0" -jest-config@^24.8.0: - version "24.8.0" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-24.8.0.tgz#77db3d265a6f726294687cbbccc36f8a76ee0f4f" - integrity sha512-Czl3Nn2uEzVGsOeaewGWoDPD8GStxCpAe0zOYs2x2l0fZAgPbCr3uwUkgNKV3LwE13VXythM946cd5rdGkkBZw== - dependencies: - "@babel/core" "^7.1.0" - "@jest/test-sequencer" "^24.8.0" - "@jest/types" "^24.8.0" - babel-jest "^24.8.0" - chalk "^2.0.1" - glob "^7.1.1" - jest-environment-jsdom "^24.8.0" - jest-environment-node "^24.8.0" - jest-get-type "^24.8.0" - jest-jasmine2 "^24.8.0" - jest-regex-util "^24.3.0" - jest-resolve "^24.8.0" - jest-util "^24.8.0" - jest-validate "^24.8.0" - micromatch "^3.1.10" - pretty-format "^24.8.0" - realpath-native "^1.1.0" - jest-config@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-24.9.0.tgz#fb1bbc60c73a46af03590719efa4825e6e4dd1b5" @@ -4606,16 +4357,6 @@ jest-config@^24.9.0: pretty-format "^24.9.0" realpath-native "^1.1.0" -jest-diff@^24.8.0: - version "24.8.0" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-24.8.0.tgz#146435e7d1e3ffdf293d53ff97e193f1d1546172" - integrity sha512-wxetCEl49zUpJ/bvUmIFjd/o52J+yWcoc5ZyPq4/W1LUKGEhRYDIbP1KcF6t+PvqNrGAFk4/JhtxDq/Nnzs66g== - dependencies: - chalk "^2.0.1" - diff-sequences "^24.3.0" - jest-get-type "^24.8.0" - pretty-format "^24.8.0" - jest-diff@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-24.9.0.tgz#931b7d0d5778a1baf7452cb816e325e3724055da" @@ -4627,23 +4368,12 @@ jest-diff@^24.9.0: pretty-format "^24.9.0" jest-docblock@^24.3.0: - version "24.3.0" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-24.3.0.tgz#b9c32dac70f72e4464520d2ba4aec02ab14db5dd" - integrity sha512-nlANmF9Yq1dufhFlKG9rasfQlrY7wINJbo3q01tu56Jv5eBU5jirylhF2O5ZBnLxzOVBGRDz/9NAwNyBtG4Nyg== + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-24.9.0.tgz#7970201802ba560e1c4092cc25cbedf5af5a8ce2" + integrity sha512-F1DjdpDMJMA1cN6He0FNYNZlo3yYmOtRUnktrT9Q37njYzC5WEaDdmbynIgy0L/IvXvvgsG8OsqhLPXTpfmZAA== dependencies: detect-newline "^2.1.0" -jest-each@^24.8.0: - version "24.8.0" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-24.8.0.tgz#a05fd2bf94ddc0b1da66c6d13ec2457f35e52775" - integrity sha512-NrwK9gaL5+XgrgoCsd9svsoWdVkK4gnvyhcpzd6m487tXHqIdYeykgq3MKI1u4I+5Zf0tofr70at9dWJDeb+BA== - dependencies: - "@jest/types" "^24.8.0" - chalk "^2.0.1" - jest-get-type "^24.8.0" - jest-util "^24.8.0" - pretty-format "^24.8.0" - jest-each@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-24.9.0.tgz#eb2da602e2a610898dbc5f1f6df3ba86b55f8b05" @@ -4655,18 +4385,6 @@ jest-each@^24.9.0: jest-util "^24.9.0" pretty-format "^24.9.0" -jest-environment-jsdom@^24.8.0: - version "24.8.0" - resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-24.8.0.tgz#300f6949a146cabe1c9357ad9e9ecf9f43f38857" - integrity sha512-qbvgLmR7PpwjoFjM/sbuqHJt/NCkviuq9vus9NBn/76hhSidO+Z6Bn9tU8friecegbJL8gzZQEMZBQlFWDCwAQ== - dependencies: - "@jest/environment" "^24.8.0" - "@jest/fake-timers" "^24.8.0" - "@jest/types" "^24.8.0" - jest-mock "^24.8.0" - jest-util "^24.8.0" - jsdom "^11.5.1" - jest-environment-jsdom@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-24.9.0.tgz#4b0806c7fc94f95edb369a69cc2778eec2b7375b" @@ -4679,17 +4397,6 @@ jest-environment-jsdom@^24.9.0: jest-util "^24.9.0" jsdom "^11.5.1" -jest-environment-node@^24.8.0: - version "24.8.0" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-24.8.0.tgz#d3f726ba8bc53087a60e7a84ca08883a4c892231" - integrity sha512-vIGUEScd1cdDgR6sqn2M08sJTRLQp6Dk/eIkCeO4PFHxZMOgy+uYLPMC4ix3PEfM5Au/x3uQ/5Tl0DpXXZsJ/Q== - dependencies: - "@jest/environment" "^24.8.0" - "@jest/fake-timers" "^24.8.0" - "@jest/types" "^24.8.0" - jest-mock "^24.8.0" - jest-util "^24.8.0" - jest-environment-node@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-24.9.0.tgz#333d2d2796f9687f2aeebf0742b519f33c1cbfd3" @@ -4714,35 +4421,11 @@ jest-ex@^6.1.1: jest-cli "^24.8.0" yargs "13.2.4" -jest-get-type@^24.8.0: - version "24.8.0" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-24.8.0.tgz#a7440de30b651f5a70ea3ed7ff073a32dfe646fc" - integrity sha512-RR4fo8jEmMD9zSz2nLbs2j0zvPpk/KCEz3a62jJWbd2ayNo0cb+KFRxPHVhE4ZmgGJEQp0fosmNz84IfqM8cMQ== - jest-get-type@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-24.9.0.tgz#1684a0c8a50f2e4901b6644ae861f579eed2ef0e" integrity sha512-lUseMzAley4LhIcpSP9Jf+fTrQ4a1yHQwLNeeVa2cEmbCGeoZAtYPOIv8JaxLD/sUpKxetKGP+gsHl8f8TSj8Q== -jest-haste-map@^24.8.0: - version "24.8.1" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-24.8.1.tgz#f39cc1d2b1d907e014165b4bd5a957afcb992982" - integrity sha512-SwaxMGVdAZk3ernAx2Uv2sorA7jm3Kx+lR0grp6rMmnY06Kn/urtKx1LPN2mGTea4fCT38impYT28FfcLUhX0g== - dependencies: - "@jest/types" "^24.8.0" - anymatch "^2.0.0" - fb-watchman "^2.0.0" - graceful-fs "^4.1.15" - invariant "^2.2.4" - jest-serializer "^24.4.0" - jest-util "^24.8.0" - jest-worker "^24.6.0" - micromatch "^3.1.10" - sane "^4.0.3" - walker "^1.0.7" - optionalDependencies: - fsevents "^1.2.7" - jest-haste-map@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-24.9.0.tgz#b38a5d64274934e21fa417ae9a9fbeb77ceaac7d" @@ -4762,28 +4445,6 @@ jest-haste-map@^24.9.0: optionalDependencies: fsevents "^1.2.7" -jest-jasmine2@^24.8.0: - version "24.8.0" - resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-24.8.0.tgz#a9c7e14c83dd77d8b15e820549ce8987cc8cd898" - integrity sha512-cEky88npEE5LKd5jPpTdDCLvKkdyklnaRycBXL6GNmpxe41F0WN44+i7lpQKa/hcbXaQ+rc9RMaM4dsebrYong== - dependencies: - "@babel/traverse" "^7.1.0" - "@jest/environment" "^24.8.0" - "@jest/test-result" "^24.8.0" - "@jest/types" "^24.8.0" - chalk "^2.0.1" - co "^4.6.0" - expect "^24.8.0" - is-generator-fn "^2.0.0" - jest-each "^24.8.0" - jest-matcher-utils "^24.8.0" - jest-message-util "^24.8.0" - jest-runtime "^24.8.0" - jest-snapshot "^24.8.0" - jest-util "^24.8.0" - pretty-format "^24.8.0" - throat "^4.0.0" - jest-jasmine2@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-24.9.0.tgz#1f7b1bd3242c1774e62acabb3646d96afc3be6a0" @@ -4806,13 +4467,6 @@ jest-jasmine2@^24.9.0: pretty-format "^24.9.0" throat "^4.0.0" -jest-leak-detector@^24.8.0: - version "24.8.0" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-24.8.0.tgz#c0086384e1f650c2d8348095df769f29b48e6980" - integrity sha512-cG0yRSK8A831LN8lIHxI3AblB40uhv0z+SsQdW3GoMMVcK+sJwrIIyax5tu3eHHNJ8Fu6IMDpnLda2jhn2pD/g== - dependencies: - pretty-format "^24.8.0" - jest-leak-detector@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-24.9.0.tgz#b665dea7c77100c5c4f7dfcb153b65cf07dcf96a" @@ -4821,16 +4475,6 @@ jest-leak-detector@^24.9.0: jest-get-type "^24.9.0" pretty-format "^24.9.0" -jest-matcher-utils@^24.8.0: - version "24.8.0" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-24.8.0.tgz#2bce42204c9af12bde46f83dc839efe8be832495" - integrity sha512-lex1yASY51FvUuHgm0GOVj7DCYEouWSlIYmCW7APSqB9v8mXmKSn5+sWVF0MhuASG0bnYY106/49JU1FZNl5hw== - dependencies: - chalk "^2.0.1" - jest-diff "^24.8.0" - jest-get-type "^24.8.0" - pretty-format "^24.8.0" - jest-matcher-utils@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-24.9.0.tgz#f5b3661d5e628dffe6dd65251dfdae0e87c3a073" @@ -4841,20 +4485,6 @@ jest-matcher-utils@^24.9.0: jest-get-type "^24.9.0" pretty-format "^24.9.0" -jest-message-util@^24.8.0: - version "24.8.0" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-24.8.0.tgz#0d6891e72a4beacc0292b638685df42e28d6218b" - integrity sha512-p2k71rf/b6ns8btdB0uVdljWo9h0ovpnEe05ZKWceQGfXYr4KkzgKo3PBi8wdnd9OtNh46VpNIJynUn/3MKm1g== - dependencies: - "@babel/code-frame" "^7.0.0" - "@jest/test-result" "^24.8.0" - "@jest/types" "^24.8.0" - "@types/stack-utils" "^1.0.1" - chalk "^2.0.1" - micromatch "^3.1.10" - slash "^2.0.0" - stack-utils "^1.0.1" - jest-message-util@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-24.9.0.tgz#527f54a1e380f5e202a8d1149b0ec872f43119e3" @@ -4869,13 +4499,6 @@ jest-message-util@^24.9.0: slash "^2.0.0" stack-utils "^1.0.1" -jest-mock@^24.8.0: - version "24.8.0" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-24.8.0.tgz#2f9d14d37699e863f1febf4e4d5a33b7fdbbde56" - integrity sha512-6kWugwjGjJw+ZkK4mDa0Df3sDlUTsV47MSrT0nGQ0RBWJbpODDQ8MHDVtGtUYBne3IwZUhtB7elxHspU79WH3A== - dependencies: - "@jest/types" "^24.8.0" - jest-mock@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-24.9.0.tgz#c22835541ee379b908673ad51087a2185c13f1c6" @@ -4888,25 +4511,11 @@ jest-pnp-resolver@^1.2.1: resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.1.tgz#ecdae604c077a7fbc70defb6d517c3c1c898923a" integrity sha512-pgFw2tm54fzgYvc/OHrnysABEObZCUNFnhjoRjaVOCN8NYc032/gVjPaHD4Aq6ApkSieWtfKAFQtmDKAmhupnQ== -jest-regex-util@^24.3.0: - version "24.3.0" - resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-24.3.0.tgz#d5a65f60be1ae3e310d5214a0307581995227b36" - integrity sha512-tXQR1NEOyGlfylyEjg1ImtScwMq8Oh3iJbGTjN7p0J23EuVX1MA8rwU69K4sLbCmwzgCUbVkm0FkSF9TdzOhtg== - -jest-regex-util@^24.9.0: +jest-regex-util@^24.3.0, jest-regex-util@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-24.9.0.tgz#c13fb3380bde22bf6575432c493ea8fe37965636" integrity sha512-05Cmb6CuxaA+Ys6fjr3PhvV3bGQmO+2p2La4hFbU+W5uOc479f7FdLXUWXw4pYMAhhSZIuKHwSXSu6CsSBAXQA== -jest-resolve-dependencies@^24.8.0: - version "24.8.0" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-24.8.0.tgz#19eec3241f2045d3f990dba331d0d7526acff8e0" - integrity sha512-hyK1qfIf/krV+fSNyhyJeq3elVMhK9Eijlwy+j5jqmZ9QsxwKBiP6qukQxaHtK8k6zql/KYWwCTQ+fDGTIJauw== - dependencies: - "@jest/types" "^24.8.0" - jest-regex-util "^24.3.0" - jest-snapshot "^24.8.0" - jest-resolve-dependencies@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-24.9.0.tgz#ad055198959c4cfba8a4f066c673a3f0786507ab" @@ -4916,17 +4525,6 @@ jest-resolve-dependencies@^24.9.0: jest-regex-util "^24.3.0" jest-snapshot "^24.9.0" -jest-resolve@^24.8.0: - version "24.8.0" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-24.8.0.tgz#84b8e5408c1f6a11539793e2b5feb1b6e722439f" - integrity sha512-+hjSzi1PoRvnuOICoYd5V/KpIQmkAsfjFO71458hQ2Whi/yf1GDeBOFj8Gxw4LrApHsVJvn5fmjcPdmoUHaVKw== - dependencies: - "@jest/types" "^24.8.0" - browser-resolve "^1.11.3" - chalk "^2.0.1" - jest-pnp-resolver "^1.2.1" - realpath-native "^1.1.0" - jest-resolve@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-24.9.0.tgz#dff04c7687af34c4dd7e524892d9cf77e5d17321" @@ -4938,31 +4536,6 @@ jest-resolve@^24.9.0: jest-pnp-resolver "^1.2.1" realpath-native "^1.1.0" -jest-runner@^24.8.0: - version "24.8.0" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-24.8.0.tgz#4f9ae07b767db27b740d7deffad0cf67ccb4c5bb" - integrity sha512-utFqC5BaA3JmznbissSs95X1ZF+d+4WuOWwpM9+Ak356YtMhHE/GXUondZdcyAAOTBEsRGAgH/0TwLzfI9h7ow== - dependencies: - "@jest/console" "^24.7.1" - "@jest/environment" "^24.8.0" - "@jest/test-result" "^24.8.0" - "@jest/types" "^24.8.0" - chalk "^2.4.2" - exit "^0.1.2" - graceful-fs "^4.1.15" - jest-config "^24.8.0" - jest-docblock "^24.3.0" - jest-haste-map "^24.8.0" - jest-jasmine2 "^24.8.0" - jest-leak-detector "^24.8.0" - jest-message-util "^24.8.0" - jest-resolve "^24.8.0" - jest-runtime "^24.8.0" - jest-util "^24.8.0" - jest-worker "^24.6.0" - source-map-support "^0.5.6" - throat "^4.0.0" - jest-runner@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-24.9.0.tgz#574fafdbd54455c2b34b4bdf4365a23857fcdf42" @@ -4988,35 +4561,6 @@ jest-runner@^24.9.0: source-map-support "^0.5.6" throat "^4.0.0" -jest-runtime@^24.8.0: - version "24.8.0" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-24.8.0.tgz#05f94d5b05c21f6dc54e427cd2e4980923350620" - integrity sha512-Mq0aIXhvO/3bX44ccT+czU1/57IgOMyy80oM0XR/nyD5zgBcesF84BPabZi39pJVA6UXw+fY2Q1N+4BiVUBWOA== - dependencies: - "@jest/console" "^24.7.1" - "@jest/environment" "^24.8.0" - "@jest/source-map" "^24.3.0" - "@jest/transform" "^24.8.0" - "@jest/types" "^24.8.0" - "@types/yargs" "^12.0.2" - chalk "^2.0.1" - exit "^0.1.2" - glob "^7.1.3" - graceful-fs "^4.1.15" - jest-config "^24.8.0" - jest-haste-map "^24.8.0" - jest-message-util "^24.8.0" - jest-mock "^24.8.0" - jest-regex-util "^24.3.0" - jest-resolve "^24.8.0" - jest-snapshot "^24.8.0" - jest-util "^24.8.0" - jest-validate "^24.8.0" - realpath-native "^1.1.0" - slash "^2.0.0" - strip-bom "^3.0.0" - yargs "^12.0.2" - jest-runtime@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-24.9.0.tgz#9f14583af6a4f7314a6a9d9f0226e1a781c8e4ac" @@ -5046,34 +4590,11 @@ jest-runtime@^24.9.0: strip-bom "^3.0.0" yargs "^13.3.0" -jest-serializer@^24.4.0: - version "24.4.0" - resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-24.4.0.tgz#f70c5918c8ea9235ccb1276d232e459080588db3" - integrity sha512-k//0DtglVstc1fv+GY/VHDIjrtNjdYvYjMlbLUed4kxrE92sIUewOi5Hj3vrpB8CXfkJntRPDRjCrCvUhBdL8Q== - jest-serializer@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-24.9.0.tgz#e6d7d7ef96d31e8b9079a714754c5d5c58288e73" integrity sha512-DxYipDr8OvfrKH3Kel6NdED3OXxjvxXZ1uIY2I9OFbGg+vUkkg7AGvi65qbhbWNPvDckXmzMPbK3u3HaDO49bQ== -jest-snapshot@^24.8.0: - version "24.8.0" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-24.8.0.tgz#3bec6a59da2ff7bc7d097a853fb67f9d415cb7c6" - integrity sha512-5ehtWoc8oU9/cAPe6fez6QofVJLBKyqkY2+TlKTOf0VllBB/mqUNdARdcjlZrs9F1Cv+/HKoCS/BknT0+tmfPg== - dependencies: - "@babel/types" "^7.0.0" - "@jest/types" "^24.8.0" - chalk "^2.0.1" - expect "^24.8.0" - jest-diff "^24.8.0" - jest-matcher-utils "^24.8.0" - jest-message-util "^24.8.0" - jest-resolve "^24.8.0" - mkdirp "^0.5.1" - natural-compare "^1.4.0" - pretty-format "^24.8.0" - semver "^5.5.0" - jest-snapshot@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-24.9.0.tgz#ec8e9ca4f2ec0c5c87ae8f925cf97497b0e951ba" @@ -5093,24 +4614,6 @@ jest-snapshot@^24.9.0: pretty-format "^24.9.0" semver "^6.2.0" -jest-util@^24.8.0: - version "24.8.0" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-24.8.0.tgz#41f0e945da11df44cc76d64ffb915d0716f46cd1" - integrity sha512-DYZeE+XyAnbNt0BG1OQqKy/4GVLPtzwGx5tsnDrFcax36rVE3lTA5fbvgmbVPUZf9w77AJ8otqR4VBbfFJkUZA== - dependencies: - "@jest/console" "^24.7.1" - "@jest/fake-timers" "^24.8.0" - "@jest/source-map" "^24.3.0" - "@jest/test-result" "^24.8.0" - "@jest/types" "^24.8.0" - callsites "^3.0.0" - chalk "^2.0.1" - graceful-fs "^4.1.15" - is-ci "^2.0.0" - mkdirp "^0.5.1" - slash "^2.0.0" - source-map "^0.6.0" - jest-util@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-24.9.0.tgz#7396814e48536d2e85a37de3e4c431d7cb140162" @@ -5129,18 +4632,6 @@ jest-util@^24.9.0: slash "^2.0.0" source-map "^0.6.0" -jest-validate@^24.8.0: - version "24.8.0" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-24.8.0.tgz#624c41533e6dfe356ffadc6e2423a35c2d3b4849" - integrity sha512-+/N7VOEMW1Vzsrk3UWBDYTExTPwf68tavEPKDnJzrC6UlHtUDU/fuEdXqFoHzv9XnQ+zW6X3qMZhJ3YexfeLDA== - dependencies: - "@jest/types" "^24.8.0" - camelcase "^5.0.0" - chalk "^2.0.1" - jest-get-type "^24.8.0" - leven "^2.1.0" - pretty-format "^24.8.0" - jest-validate@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-24.9.0.tgz#0775c55360d173cd854e40180756d4ff52def8ab" @@ -5153,19 +4644,6 @@ jest-validate@^24.9.0: leven "^3.1.0" pretty-format "^24.9.0" -jest-watcher@^24.8.0: - version "24.8.0" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-24.8.0.tgz#58d49915ceddd2de85e238f6213cef1c93715de4" - integrity sha512-SBjwHt5NedQoVu54M5GEx7cl7IGEFFznvd/HNT8ier7cCAx/Qgu9ZMlaTQkvK22G1YOpcWBLQPFSImmxdn3DAw== - dependencies: - "@jest/test-result" "^24.8.0" - "@jest/types" "^24.8.0" - "@types/yargs" "^12.0.9" - ansi-escapes "^3.0.0" - chalk "^2.0.1" - jest-util "^24.8.0" - string-length "^2.0.0" - jest-watcher@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-24.9.0.tgz#4b56e5d1ceff005f5b88e528dc9afc8dd4ed2b3b" @@ -5179,15 +4657,7 @@ jest-watcher@^24.9.0: jest-util "^24.9.0" string-length "^2.0.0" -jest-worker@^24.6.0: - version "24.6.0" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-24.6.0.tgz#7f81ceae34b7cde0c9827a6980c35b7cdc0161b3" - integrity sha512-jDwgW5W9qGNvpI1tNnvajh0a5IE/PuGLFmHk6aR/BZFz8tSgGw17GsDPXAJ6p91IvYDjOw8GpFbvvZGAK+DPQQ== - dependencies: - merge-stream "^1.0.1" - supports-color "^6.1.0" - -jest-worker@^24.9.0: +jest-worker@^24.6.0, jest-worker@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-24.9.0.tgz#5dbfdb5b2d322e98567898238a9697bcce67b3e5" integrity sha512-51PE4haMSXcHohnSMdM42anbvZANYTqMrr52tVKPqqsPJMzoP6FYYDVqahX/HrAoKEKz3uUPzSvKs9A3qR4iVw== @@ -5422,7 +4892,7 @@ klaw@^1.0.0: optionalDependencies: graceful-fs "^4.1.9" -kleur@^3.0.2: +kleur@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== @@ -5475,11 +4945,6 @@ left-pad@^1.3.0: resolved "https://registry.yarnpkg.com/left-pad/-/left-pad-1.3.0.tgz#5b8a3a7765dfe001261dde915589e782f8c94d1e" integrity sha512-XI5MPzVNApjAyhQzphX8BkmKsKUxD4LdyK24iZeQGinBN9yTQT3bFlCBy/aVx2HrNcqQGsdot8ghrjyrvMCoEA== -leven@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/leven/-/leven-2.1.0.tgz#c2e7a9f772094dee9d34202ae8acce4687875580" - integrity sha1-wuep93IJTe6dNCAq6KzORoeHVYA= - leven@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" @@ -5784,13 +5249,6 @@ merge-descriptors@1.0.1: resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" integrity sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E= -merge-stream@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-1.0.1.tgz#4041202d508a342ba00174008df0c251b8c135e1" - integrity sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE= - dependencies: - readable-stream "^2.0.1" - merge-stream@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" @@ -5888,9 +5346,9 @@ minimist@~0.0.1: integrity sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8= minipass@^2.2.1, minipass@^2.3.5: - version "2.3.5" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.3.5.tgz#cacebe492022497f656b0f0f51e2682a9ed2d848" - integrity sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA== + version "2.4.0" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.4.0.tgz#38f0af94f42fb6f34d3d7d82a90e2c99cd3ff485" + integrity sha512-6PmOuSP4NnZXzs2z6rbwzLJu/c5gdzYg1mRI/WIYdx45iiX7T+a4esOzavD6V/KmBzAaopFSTZPZcUx73bqKWA== dependencies: safe-buffer "^5.1.2" yallist "^3.0.0" @@ -6052,17 +5510,6 @@ node-modules-regexp@^1.0.0: resolved "https://registry.yarnpkg.com/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" integrity sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA= -node-notifier@^5.2.1: - version "5.4.0" - resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-5.4.0.tgz#7b455fdce9f7de0c63538297354f3db468426e6a" - integrity sha512-SUDEb+o71XR5lXSTyivXd9J7fCloE3SyP4lSgt3lU2oSANiox+SxlNRGPjDKrwU1YN3ix2KN/VGGCg0t01rttQ== - dependencies: - growly "^1.3.0" - is-wsl "^1.1.0" - semver "^5.5.0" - shellwords "^0.1.1" - which "^1.3.0" - node-notifier@^5.4.2: version "5.4.3" resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-5.4.3.tgz#cb72daf94c93904098e28b9c590fd866e464bd50" @@ -6091,9 +5538,9 @@ node-pre-gyp@^0.12.0: tar "^4" node-releases@^1.1.25: - version "1.1.26" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.26.tgz#f30563edc5c7dc20cf524cc8652ffa7be0762937" - integrity sha512-fZPsuhhUHMTlfkhDLGtfY80DSJTjOcx+qD1j5pqPkuhUHVS7xHZIg9EE4DHK8O3f0zTxXHX5VIkDG8pu98/wfQ== + version "1.1.28" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.28.tgz#503c3c70d0e4732b84e7aaa2925fbdde10482d4a" + integrity sha512-AQw4emh6iSXnCpDiFe0phYcThiccmkNWMZnFZ+lDJjAP8J0m2fVd59duvUUyuTirQOhIAajTFkzG6FHCLBO59g== dependencies: semver "^5.3.0" @@ -6383,7 +5830,7 @@ os-locale@^1.4.0: dependencies: lcid "^1.0.0" -os-locale@^3.0.0, os-locale@^3.1.0: +os-locale@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-3.1.0.tgz#a802a6ee17f24c10483ab9935719cef4ed16bf1a" integrity sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q== @@ -6444,9 +5891,9 @@ p-limit@^1.1.0: p-try "^1.0.0" p-limit@^2.0.0, p-limit@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.2.0.tgz#417c9941e6027a9abcba5092dd2904e255b5fbc2" - integrity sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ== + version "2.2.1" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.2.1.tgz#aa07a788cc3151c939b5131f63570f0dd2009537" + integrity sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg== dependencies: p-try "^2.0.0" @@ -6471,10 +5918,12 @@ p-locate@^4.1.0: dependencies: p-limit "^2.2.0" -p-map@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-2.1.0.tgz#310928feef9c9ecc65b68b17693018a665cea175" - integrity sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw== +p-map@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-3.0.0.tgz#d704d9af8a2ba684e2600d9a215983d4141a979d" + integrity sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ== + dependencies: + aggregate-error "^3.0.0" p-reduce@^1.0.0: version "1.0.0" @@ -6594,7 +6043,7 @@ path-is-absolute@^1.0.0: resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= -path-is-inside@^1.0.1, path-is-inside@^1.0.2: +path-is-inside@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" integrity sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM= @@ -6813,16 +6262,6 @@ prepend-http@^1.0.1: resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" integrity sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw= -pretty-format@^24.8.0: - version "24.8.0" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-24.8.0.tgz#8dae7044f58db7cb8be245383b565a963e3c27f2" - integrity sha512-P952T7dkrDEplsR+TuY7q3VXDae5Sr7zmQb12JU/NDQa/3CH7/QW0yvqLcGN6jL+zQFKaoJcPc+yJxMTGmosqw== - dependencies: - "@jest/types" "^24.8.0" - ansi-regex "^4.0.0" - ansi-styles "^3.2.0" - react-is "^16.8.4" - pretty-format@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-24.9.0.tgz#12fac31b37019a4eea3c11aa9a959eb7628aa7c9" @@ -6853,10 +6292,10 @@ progress@^2.0.0: resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== -projext@^7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/projext/-/projext-7.0.1.tgz#4ff9bd49d0c28a6b4018edd4594a46bcc34c7265" - integrity sha512-Yt06XFzTON0ZtQQCN21gZggiuakd2WlzHKRMCVDssMHKzlfHg2C6bvdyBSLTduWg9+nJx7hpy+mlSmjAknWHdQ== +projext@^7.1.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/projext/-/projext-7.1.0.tgz#f1352df925361c3949a35d1e65383c16dfa419f9" + integrity sha512-6jzaZA7/B5KEqqozjSc9egd7he/GJeCWzIvSK0Ty5RPMyHjExMFsoj/+OmQ4dyNiXoRXMTnc7M3dYY8F7iy9WA== dependencies: "@babel/cli" "7.5.5" "@babel/core" "7.5.5" @@ -6870,8 +6309,8 @@ projext@^7.0.1: "@babel/preset-typescript" "7.3.3" "@babel/runtime" "7.5.5" commander "^3.0.0" - del "^5.0.0" - dotenv "^8.0.0" + del "^5.1.0" + dotenv "^8.1.0" dotenv-expand "^5.1.0" extend "^3.0.2" fs-extra "^8.1.0" @@ -6881,7 +6320,7 @@ projext@^7.0.1: prompt "^1.0.0" shelljs "0.8.3" watchpack "^1.6.0" - wootils "^2.6.3" + wootils "^2.6.5" prompt@^1.0.0: version "1.0.0" @@ -6896,12 +6335,12 @@ prompt@^1.0.0: winston "2.1.x" prompts@^2.0.1: - version "2.1.0" - resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.1.0.tgz#bf90bc71f6065d255ea2bdc0fe6520485c1b45db" - integrity sha512-+x5TozgqYdOwWsQFZizE/Tra3fKvAoy037kOyU6cgz84n8f6zxngLOV4O32kTwt9FcLCxAqw0P/c8rOr9y+Gfg== + version "2.2.1" + resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.2.1.tgz#f901dd2a2dfee080359c0e20059b24188d75ad35" + integrity sha512-VObPvJiWPhpZI6C5m60XOzTfnYg/xc/an+r9VYymj9WJW3B/DIH+REzjpAACPf8brwPeP+7vz3bIim3S+AaMjw== dependencies: - kleur "^3.0.2" - sisteransi "^1.0.0" + kleur "^3.0.3" + sisteransi "^1.0.3" proxy-addr@~2.0.5: version "2.0.5" @@ -6987,9 +6426,9 @@ rc@^1.0.1, rc@^1.1.6, rc@^1.2.7: strip-json-comments "~2.0.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== + version "16.9.0" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.9.0.tgz#21ca9561399aad0ff1a7701c01683e8ca981edcb" + integrity sha512-tJBzzzIgnnRfEm046qRcURvwQnZVXmuCbscxUO5RWrGTXpon2d4c8mI0D8WE6ydVIm29JiLB6+RslkIvym9Rjw== read-pkg-up@^1.0.1: version "1.0.1" @@ -7142,7 +6581,7 @@ redent@^1.0.0: indent-string "^2.1.0" strip-indent "^1.0.1" -regenerate-unicode-properties@^8.0.2: +regenerate-unicode-properties@^8.1.0: version "8.1.0" resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-8.1.0.tgz#ef51e0f0ea4ad424b77bf7cb41f3e015c70a3f0e" integrity sha512-LGZzkgtLY79GeXLm8Dp0BVLdQlWICzBnJz/ipWUgo59qBaZ+BHtq51P2q1uVZlppMuUAT37SDk39qUbjTWB7bA== @@ -7180,9 +6619,9 @@ regex-not@^1.0.0, regex-not@^1.0.2: safe-regex "^1.1.0" regexp-tree@^0.1.6: - version "0.1.11" - resolved "https://registry.yarnpkg.com/regexp-tree/-/regexp-tree-0.1.11.tgz#c9c7f00fcf722e0a56c7390983a7a63dd6c272f3" - integrity sha512-7/l/DgapVVDzZobwMCCgMlqiqyLFJ0cduo/j+3BcDJIB+yJdsYCfKuI3l/04NV+H/rfNRdPIDbXNZHM9XvQatg== + version "0.1.12" + resolved "https://registry.yarnpkg.com/regexp-tree/-/regexp-tree-0.1.12.tgz#28eaaa6e66eeb3527c15108a3ff740d9e574e420" + integrity sha512-TsXZ8+cv2uxMEkLfgwO0E068gsNMLfuYwMMhiUxf0Kw2Vcgzq93vgl6wIlIYuPmfMqMjfQ9zAporiozqCnwLuQ== regexpp@^2.0.1: version "2.0.1" @@ -7199,12 +6638,12 @@ regexpu-core@^1.0.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" - integrity sha512-BtizvGtFQKGPUcTy56o3nk1bGRp4SZOTYrDtGNlqCQufptV5IkkLN6Emw+yunAJjzf+C9FQFtvq7IoA3+oMYHQ== + version "4.5.5" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.5.5.tgz#aaffe61c2af58269b3e516b61a73790376326411" + integrity sha512-FpI67+ky9J+cDizQUJlIlNZFKual/lUkFr1AG6zOCpwZ9cLrg8UUVakyUQJD7fCDIe9Z2nwTQJNPyonatNmDFQ== dependencies: regenerate "^1.4.0" - regenerate-unicode-properties "^8.0.2" + regenerate-unicode-properties "^8.1.0" regjsgen "^0.5.0" regjsparser "^0.6.0" unicode-match-property-ecmascript "^1.0.4" @@ -7368,9 +6807,9 @@ resolve@1.1.7: integrity sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs= resolve@^1.1.6, resolve@^1.10.0, resolve@^1.10.1, resolve@^1.11.0, resolve@^1.11.1, resolve@^1.3.2, resolve@^1.5.0, resolve@^1.8.1: - version "1.11.1" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.11.1.tgz#ea10d8110376982fef578df8fc30b9ac30a07a3e" - integrity sha512-vIpgF6wfuJOZI7KKKSP+HmiKggadPQAdsp5HiC1mvqnfp0gF1vdwgBWZIdrVft9pgqoMFQN+R7BSWZiBxx+BBw== + version "1.12.0" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.12.0.tgz#3fc644a35c84a48554609ff26ec52b66fa577df6" + integrity sha512-B/dOmuoAik5bKcD6s6nXDCjzUKnaDvdkRyAk6rsmsKLipWj4797iothd7jmmUhWTfinVMU+wc56rYKsit2Qy4w== dependencies: path-parse "^1.0.6" @@ -7397,13 +6836,27 @@ revalidator@0.1.x: resolved "https://registry.yarnpkg.com/revalidator/-/revalidator-0.1.8.tgz#fece61bfa0c1b52a206bd6b18198184bdd523a3b" integrity sha1-/s5hv6DBtSoga9axgZgYS91SOjs= -rimraf@2, rimraf@2.6.3, rimraf@2.x.x, rimraf@^2.2.8, rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.3: +rimraf@2, rimraf@2.x.x, rimraf@^2.2.8, rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.3: + version "2.7.1" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" + integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== + dependencies: + glob "^7.1.3" + +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== dependencies: glob "^7.1.3" +rimraf@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.0.tgz#614176d4b3010b75e5c390eb0ee96f6dc0cebb9b" + integrity sha512-NDGVxTsjqfunkds7CqsOiEnxln4Bo7Nddl3XhS4pXg5OzwkLqJ971ZVAAnB+DDLnF76N+VnDEiBHaVV8I06SUg== + dependencies: + glob "^7.1.3" + rollup-plugin-babel@^4.3.3: version "4.3.3" resolved "https://registry.yarnpkg.com/rollup-plugin-babel/-/rollup-plugin-babel-4.3.3.tgz#7eb5ac16d9b5831c3fd5d97e8df77ba25c72a2aa" @@ -7555,7 +7008,7 @@ safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -safe-buffer@^5.0.1, safe-buffer@^5.1.2: +safe-buffer@^5.0.1, safe-buffer@^5.1.2, safe-buffer@~5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.0.tgz#b74daec49b1148f88c64b68d49b1e815c1f2f519" integrity sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg== @@ -7630,11 +7083,11 @@ semver-diff@^2.0.0: semver "^5.0.3" "semver@2 || 3 || 4 || 5", semver@^5.0.3, semver@^5.1.0, semver@^5.3.0, semver@^5.4.1, semver@^5.5.0, semver@^5.5.1, semver@^5.6.0: - version "5.7.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.0.tgz#790a7cf6fea5459bac96110b29b60412dc8ff96b" - integrity sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA== + version "5.7.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" + integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== -semver@^6.0.0, semver@^6.1.0, semver@^6.1.1, semver@^6.1.2, semver@^6.2.0: +semver@^6.0.0, semver@^6.1.0, semver@^6.1.2, semver@^6.2.0, semver@^6.3.0: version "6.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== @@ -7729,10 +7182,10 @@ signal-exit@^3.0.0, signal-exit@^3.0.2: resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0= -sisteransi@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.2.tgz#ec57d64b6f25c4f26c0e2c7dd23f2d7f12f7e418" - integrity sha512-ZcYcZcT69nSLAR2oLN2JwNmLkJEKGooFMCdvOkFrToUt/WfcRWqhIg4P4KwY4dmLbuyXIx4o4YmPsvMRJYJd/w== +sisteransi@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.3.tgz#98168d62b79e3a5e758e27ae63c4a053d748f4eb" + integrity sha512-SbEG75TzH8G7eVXFSN5f9EExILKfly7SUvVY5DhhYLvfhKqhDFY0OzevWa/zwak0RLRfWS5AvfMWpd9gJvr5Yg== slash@^2.0.0: version "2.0.0" @@ -7967,11 +7420,11 @@ string-width@^3.0.0, string-width@^3.1.0: strip-ansi "^5.1.0" string_decoder@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.2.0.tgz#fe86e738b19544afe70469243b2a1ee9240eae8d" - integrity sha512-6YqyX6ZWEYguAxgZzHGL7SsCeGx3V2TtOTqZz1xSTSWnqsbWwbptafNyvf/ACquZUXV3DANr5BDIwNYe1mN42w== + version "1.3.0" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" + integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== dependencies: - safe-buffer "~5.1.0" + safe-buffer "~5.2.0" string_decoder@~0.10.x: version "0.10.31" @@ -8072,9 +7525,9 @@ supports-color@^6.1.0: integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== table@^5.2.3: - version "5.4.5" - resolved "https://registry.yarnpkg.com/table/-/table-5.4.5.tgz#c8f4ea2d8fee08c0027fac27b0ec0a4fe01dfa42" - integrity sha512-oGa2Hl7CQjfoaogtrOHEJroOcYILTx7BZWLGsJIlzoWmB2zmguhNfPJZsWPKYek/MgCxfco54gEi31d1uN2hFA== + version "5.4.6" + resolved "https://registry.yarnpkg.com/table/-/table-5.4.6.tgz#1292d19500ce3f86053b05f0e8e7e4a3bb21079e" + integrity sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug== dependencies: ajv "^6.10.2" lodash "^4.17.14" @@ -8484,9 +7937,9 @@ utils-merge@1.0.1: integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= uuid@^3.3.2: - version "3.3.2" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131" - integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA== + version "3.3.3" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.3.tgz#4568f0216e78760ee1dbf3a4d2cf53e224112866" + integrity sha512-pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ== v8-compile-cache@^2.0.3: version "2.1.0" @@ -8629,19 +8082,7 @@ winston@2.1.x: pkginfo "0.3.x" stack-trace "0.0.x" -wootils@^2.4.1: - version "2.6.0" - resolved "https://registry.yarnpkg.com/wootils/-/wootils-2.6.0.tgz#0a512e02a6c3ed4f66f3ac1e21277d5a9c580dfb" - integrity sha512-wHqkIfPO8+/1GYvwCtGVzT008OfjzXG4Q74asfT4nDWDOJjFSJQ6LrgyrRjfCsOeyIkk+NnRBCMTxIetnPJVZQ== - dependencies: - colors "^1.3.3" - extend "^3.0.2" - fs-extra "^8.1.0" - jimple "^1.5.0" - statuses "^1.5.0" - urijs "^1.19.1" - -wootils@^2.6.3, wootils@^2.6.5: +wootils@^2.4.1, wootils@^2.6.5: version "2.6.5" resolved "https://registry.yarnpkg.com/wootils/-/wootils-2.6.5.tgz#7f01cf6bb0a93f7aa0fea56ddcd692ffdda5e442" integrity sha512-SoF5M8pwX2D3W/neZLJOp0SFcHQKJfGKlT1GVhCrw58gREtTZZz32b6MQ3mvo4/L9RBziEIaNgRf1gEwcIkxaQ== @@ -8742,7 +8183,7 @@ y18n@^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: +y18n@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w== @@ -8757,14 +8198,6 @@ yallist@^3.0.0, yallist@^3.0.3: resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.0.3.tgz#b4b049e314be545e3ce802236d6cd22cd91c3de9" integrity sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A== -yargs-parser@^11.1.1: - version "11.1.1" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-11.1.1.tgz#879a0865973bca9f6bab5cbdf3b1c67ec7d3bcf4" - integrity sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ== - dependencies: - camelcase "^5.0.0" - decamelize "^1.2.0" - yargs-parser@^13.1.0, yargs-parser@^13.1.1: version "13.1.1" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.1.tgz#d26058532aa06d365fe091f6a1fc06b2f7e5eca0" @@ -8797,24 +8230,6 @@ yargs@13.2.4: y18n "^4.0.0" yargs-parser "^13.1.0" -yargs@^12.0.2: - version "12.0.5" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-12.0.5.tgz#05f5997b609647b64f66b81e3b4b10a368e7ad13" - integrity sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw== - dependencies: - cliui "^4.0.0" - decamelize "^1.2.0" - find-up "^3.0.0" - get-caller-file "^1.0.1" - os-locale "^3.0.0" - require-directory "^2.1.1" - require-main-filename "^1.0.1" - set-blocking "^2.0.0" - string-width "^2.0.0" - which-module "^2.0.0" - y18n "^3.2.1 || ^4.0.0" - yargs-parser "^11.1.1" - yargs@^13.3.0: version "13.3.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.0.tgz#4c657a55e07e5f2cf947f8a366567c04a0dedc83" From 605352b939d070c46ac612c02c249767b1cf5156 Mon Sep 17 00:00:00 2001 From: homer0 Date: Mon, 26 Aug 2019 18:54:14 -0300 Subject: [PATCH 15/15] v5.0.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 4174c8f..48c3c85 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "projext-plugin-rollup", "description": "Allows projext to use Rollup as a build engine.", "homepage": "https://homer0.github.io/projext-plugin-rollup/", - "version": "4.0.0", + "version": "5.0.0", "repository": "homer0/projext-plugin-rollup", "author": "Leonardo Apiwan (@homer0) ", "license": "MIT",