From 836597f117f77af7638cc62b83c0c90cdc8a385c Mon Sep 17 00:00:00 2001 From: homer0 Date: Sat, 20 Jul 2019 06:49:04 -0300 Subject: [PATCH 01/24] refactor(project): require Node > 8.10 --- .nvmrc | 2 +- package.json | 2 +- yarn.lock | 1070 +++++++++++++++++++++++++++----------------------- 3 files changed, 570 insertions(+), 504 deletions(-) diff --git a/.nvmrc b/.nvmrc index 45a4fb7..22ec1e6 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -8 +8.10 diff --git a/package.json b/package.json index eb41859..8d62b56 100644 --- a/package.json +++ b/package.json @@ -62,7 +62,7 @@ }, "engine-strict": true, "engines": { - "node": ">=8.0.0", + "node": ">=8.10.0", "npm": ">=3.0.0" }, "main": "src/index.js", diff --git a/yarn.lock b/yarn.lock index fe4b387..7cda917 100644 --- a/yarn.lock +++ b/yarn.lock @@ -19,33 +19,13 @@ optionalDependencies: chokidar "^2.0.4" -"@babel/code-frame@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0.tgz#06e2ab19bdb535385559aabb5ba59729482800f8" - integrity sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA== +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.5.5": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.5.5.tgz#bc0782f6d69f7b7d49531219699b988f669a8f9d" + integrity sha512-27d4lZoomVyo51VegxI20xZPuSHusqbQag/ztrBC7wegWoQ1nLREPVSKSW8byhTlzTKyNE4ifaTA6lCp7JjpFw== dependencies: "@babel/highlight" "^7.0.0" -"@babel/core@7.4.3": - version "7.4.3" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.4.3.tgz#198d6d3af4567be3989550d97e068de94503074f" - integrity sha512-oDpASqKFlbspQfzAE7yaeTmdljSH2ADIvBlb0RwbStltTuWa0+7CCI1fYVINNv9saHPa1W7oaKeuNuKj+RQCvA== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/generator" "^7.4.0" - "@babel/helpers" "^7.4.3" - "@babel/parser" "^7.4.3" - "@babel/template" "^7.4.0" - "@babel/traverse" "^7.4.3" - "@babel/types" "^7.4.0" - convert-source-map "^1.1.0" - debug "^4.1.0" - json5 "^2.1.0" - lodash "^4.17.11" - resolve "^1.3.2" - semver "^5.4.1" - source-map "^0.5.0" - "@babel/core@7.4.4": version "7.4.4" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.4.4.tgz#84055750b05fcd50f9915a826b44fa347a825250" @@ -66,18 +46,18 @@ semver "^5.4.1" source-map "^0.5.0" -"@babel/core@^7.1.0": - version "7.4.5" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.4.5.tgz#081f97e8ffca65a9b4b0fdc7e274e703f000c06a" - integrity sha512-OvjIh6aqXtlsA8ujtGKfC7LYWksYSX8yQcM8Ay3LuvVeQ63lcOKgoZWVqcpFwkd29aYU9rVx7jxhfhiEDV9MZA== +"@babel/core@7.5.4": + version "7.5.4" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.5.4.tgz#4c32df7ad5a58e9ea27ad025c11276324e0b4ddd" + integrity sha512-+DaeBEpYq6b2+ZmHx3tHspC+ZRflrvLqwfv8E3hNr5LVQoyBnL8RPKSBCg+rK2W2My9PWlujBiqd0ZPsR9Q6zQ== dependencies: "@babel/code-frame" "^7.0.0" - "@babel/generator" "^7.4.4" - "@babel/helpers" "^7.4.4" - "@babel/parser" "^7.4.5" + "@babel/generator" "^7.5.0" + "@babel/helpers" "^7.5.4" + "@babel/parser" "^7.5.0" "@babel/template" "^7.4.4" - "@babel/traverse" "^7.4.5" - "@babel/types" "^7.4.4" + "@babel/traverse" "^7.5.0" + "@babel/types" "^7.5.0" convert-source-map "^1.1.0" debug "^4.1.0" json5 "^2.1.0" @@ -86,14 +66,34 @@ semver "^5.4.1" source-map "^0.5.0" -"@babel/generator@^7.4.0", "@babel/generator@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.4.4.tgz#174a215eb843fc392c7edcaabeaa873de6e8f041" - integrity sha512-53UOLK6TVNqKxf7RUh8NE851EHRxOOeVXKbK2bivdb+iziMyk03Sr4eaE9OELCbyZAAafAKPDwF2TPUES5QbxQ== +"@babel/core@^7.1.0": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.5.5.tgz#17b2686ef0d6bc58f963dddd68ab669755582c30" + integrity sha512-i4qoSr2KTtce0DmkuuQBV4AuQgGPUcPXMr9L5MyYAtk06z068lQ10a4O009fe5OB/DfNV+h+qqT7ddNV8UnRjg== + dependencies: + "@babel/code-frame" "^7.5.5" + "@babel/generator" "^7.5.5" + "@babel/helpers" "^7.5.5" + "@babel/parser" "^7.5.5" + "@babel/template" "^7.4.4" + "@babel/traverse" "^7.5.5" + "@babel/types" "^7.5.5" + convert-source-map "^1.1.0" + debug "^4.1.0" + json5 "^2.1.0" + lodash "^4.17.13" + resolve "^1.3.2" + semver "^5.4.1" + source-map "^0.5.0" + +"@babel/generator@^7.4.0", "@babel/generator@^7.4.4", "@babel/generator@^7.5.0", "@babel/generator@^7.5.5": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.5.5.tgz#873a7f936a3c89491b43536d12245b626664e3cf" + integrity sha512-ETI/4vyTSxTzGnU2c49XHv2zhExkv9JHLTwDAFz85kmcwuShvYG2H08FwgIguQf4JC75CBnXAUM5PqeF4fj0nQ== dependencies: - "@babel/types" "^7.4.4" + "@babel/types" "^7.5.5" jsesc "^2.5.1" - lodash "^4.17.11" + lodash "^4.17.13" source-map "^0.5.0" trim-right "^1.0.1" @@ -121,26 +121,26 @@ "@babel/traverse" "^7.4.4" "@babel/types" "^7.4.4" -"@babel/helper-create-class-features-plugin@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.4.4.tgz#fc3d690af6554cc9efc607364a82d48f58736dba" - integrity sha512-UbBHIa2qeAGgyiNR9RszVF7bUHEdgS4JAUNT8SiqrAN6YJVxlOxeLr5pBzb5kan302dejJ9nla4RyKcR1XT6XA== +"@babel/helper-create-class-features-plugin@^7.4.4", "@babel/helper-create-class-features-plugin@^7.5.5": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.5.5.tgz#401f302c8ddbc0edd36f7c6b2887d8fa1122e5a4" + integrity sha512-ZsxkyYiRA7Bg+ZTRpPvB6AbOFKTFFK4LrvTet8lInm0V468MWCaSYJE+I7v2z2r8KNLtYiV+K5kTCnR7dvyZjg== dependencies: "@babel/helper-function-name" "^7.1.0" - "@babel/helper-member-expression-to-functions" "^7.0.0" + "@babel/helper-member-expression-to-functions" "^7.5.5" "@babel/helper-optimise-call-expression" "^7.0.0" "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-replace-supers" "^7.4.4" + "@babel/helper-replace-supers" "^7.5.5" "@babel/helper-split-export-declaration" "^7.4.4" -"@babel/helper-define-map@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.4.4.tgz#6969d1f570b46bdc900d1eba8e5d59c48ba2c12a" - integrity sha512-IX3Ln8gLhZpSuqHJSnTNBWGDE9kdkTEWl21A/K7PQ00tseBwbqCHTvNLHSBd9M0R5rER4h5Rsvj9vw0R5SieBg== +"@babel/helper-define-map@^7.5.5": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.5.5.tgz#3dec32c2046f37e09b28c93eb0b103fd2a25d369" + integrity sha512-fTfxx7i0B5NJqvUOBBGREnrqbTxRh7zinBANpZXAVDlsZxYdclDp467G1sQ8VZYMnAURY3RpBUAgOYT9GfzHBg== dependencies: "@babel/helper-function-name" "^7.1.0" - "@babel/types" "^7.4.4" - lodash "^4.17.11" + "@babel/types" "^7.5.5" + lodash "^4.17.13" "@babel/helper-explode-assignable-expression@^7.1.0": version "7.1.0" @@ -173,12 +173,12 @@ dependencies: "@babel/types" "^7.4.4" -"@babel/helper-member-expression-to-functions@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.0.0.tgz#8cd14b0a0df7ff00f009e7d7a436945f47c7a16f" - integrity sha512-avo+lm/QmZlv27Zsi0xEor2fKcqWG56D5ae9dzklpIaY7cQMK5N8VSpaNVPPagiqmy7LrEjK1IWdGMOqPu5csg== +"@babel/helper-member-expression-to-functions@^7.5.5": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.5.5.tgz#1fb5b8ec4453a93c439ee9fe3aeea4a84b76b590" + integrity sha512-5qZ3D1uMclSNqYcXqiHoA0meVdv+xUEex9em2fqMnrk/scphGlGgg66zjMrPJESPwrFJ6sbfFQYUSa0Mz7FabA== dependencies: - "@babel/types" "^7.0.0" + "@babel/types" "^7.5.5" "@babel/helper-module-imports@^7.0.0": version "7.0.0" @@ -188,16 +188,16 @@ "@babel/types" "^7.0.0" "@babel/helper-module-transforms@^7.1.0", "@babel/helper-module-transforms@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.4.4.tgz#96115ea42a2f139e619e98ed46df6019b94414b8" - integrity sha512-3Z1yp8TVQf+B4ynN7WoHPKS8EkdTbgAEy0nU0rs/1Kw4pDgmvYH3rz3aI11KgxKCba2cn7N+tqzV1mY2HMN96w== + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.5.5.tgz#f84ff8a09038dcbca1fd4355661a500937165b4a" + integrity sha512-jBeCvETKuJqeiaCdyaheF40aXnnU1+wkSiUs/IQg3tB85up1LyL8x77ClY8qJpuRJUcXQo+ZtdNESmZl4j56Pw== dependencies: "@babel/helper-module-imports" "^7.0.0" "@babel/helper-simple-access" "^7.1.0" "@babel/helper-split-export-declaration" "^7.4.4" "@babel/template" "^7.4.4" - "@babel/types" "^7.4.4" - lodash "^4.17.11" + "@babel/types" "^7.5.5" + lodash "^4.17.13" "@babel/helper-optimise-call-expression@^7.0.0": version "7.0.0" @@ -212,11 +212,11 @@ integrity sha512-CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA== "@babel/helper-regex@^7.0.0", "@babel/helper-regex@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/helper-regex/-/helper-regex-7.4.4.tgz#a47e02bc91fb259d2e6727c2a30013e3ac13c4a2" - integrity sha512-Y5nuB/kESmR3tKjU8Nkn1wMGEx1tjJX076HBMeL3XLQCu6vA/YRzuTW0bbb+qRnXvQGn+d6Rx953yffl8vEy7Q== + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/helper-regex/-/helper-regex-7.5.5.tgz#0aa6824f7100a2e0e89c1527c23936c152cab351" + integrity sha512-CkCYQLkfkiugbRDO8eZn6lRuR8kzZoGXCg3149iTk5se7g6qykSpy3+hELSwquhu+TgHn8nkLiBwHvNX8Hofcw== dependencies: - lodash "^4.17.11" + lodash "^4.17.13" "@babel/helper-remap-async-to-generator@^7.1.0": version "7.1.0" @@ -229,15 +229,15 @@ "@babel/traverse" "^7.1.0" "@babel/types" "^7.0.0" -"@babel/helper-replace-supers@^7.1.0", "@babel/helper-replace-supers@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.4.4.tgz#aee41783ebe4f2d3ab3ae775e1cc6f1a90cefa27" - integrity sha512-04xGEnd+s01nY1l15EuMS1rfKktNF+1CkKmHoErDppjAAZL+IUBZpzT748x262HF7fibaQPhbvWUl5HeSt1EXg== +"@babel/helper-replace-supers@^7.5.5": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.5.5.tgz#f84ce43df031222d2bad068d2626cb5799c34bc2" + integrity sha512-XvRFWrNnlsow2u7jXDuH4jDDctkxbS7gXssrP4q2nUD606ukXHRvydj346wmNg+zAgpFx4MWf4+usfC93bElJg== dependencies: - "@babel/helper-member-expression-to-functions" "^7.0.0" + "@babel/helper-member-expression-to-functions" "^7.5.5" "@babel/helper-optimise-call-expression" "^7.0.0" - "@babel/traverse" "^7.4.4" - "@babel/types" "^7.4.4" + "@babel/traverse" "^7.5.5" + "@babel/types" "^7.5.5" "@babel/helper-simple-access@^7.1.0": version "7.1.0" @@ -264,28 +264,28 @@ "@babel/traverse" "^7.1.0" "@babel/types" "^7.2.0" -"@babel/helpers@^7.4.3", "@babel/helpers@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.4.4.tgz#868b0ef59c1dd4e78744562d5ce1b59c89f2f2a5" - integrity sha512-igczbR/0SeuPR8RFfC7tGrbdTbFL3QTvH6D+Z6zNxnTe//GyqmtHmDkzrqDmyZ3eSwPqB/LhyKoU5DXsp+Vp2A== +"@babel/helpers@^7.4.4", "@babel/helpers@^7.5.4", "@babel/helpers@^7.5.5": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.5.5.tgz#63908d2a73942229d1e6685bc2a0e730dde3b75e" + integrity sha512-nRq2BUhxZFnfEn/ciJuhklHvFOqjJUD5wpx+1bxUF2axL9C+v4DE/dmp5sT2dKnpOs4orZWzpAZqlCy8QqE/7g== dependencies: "@babel/template" "^7.4.4" - "@babel/traverse" "^7.4.4" - "@babel/types" "^7.4.4" + "@babel/traverse" "^7.5.5" + "@babel/types" "^7.5.5" "@babel/highlight@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.0.0.tgz#f710c38c8d458e6dd9a201afb637fcb781ce99e4" - integrity sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw== + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.5.0.tgz#56d11312bd9248fa619591d02472be6e8cb32540" + integrity sha512-7dV4eu9gBxoM0dAnj/BCFDW9LFU0zvTrkq0ugM7pnHEgguOEeOz1so2ZghEdzviYzQEED0r4EAgpsBChKy1TRQ== dependencies: chalk "^2.0.0" esutils "^2.0.2" js-tokens "^4.0.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.4.3", "@babel/parser@^7.4.4", "@babel/parser@^7.4.5": - version "7.4.5" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.4.5.tgz#04af8d5d5a2b044a2a1bffacc1e5e6673544e872" - integrity sha512-9mUqkL1FF5T7f0WDFfAoDdiMVPWsdD1gZYzSnaXsxUCUqzuch/8of9G3VUSNiZmMBoRxT3neyVsqeiL/ZPcjew== +"@babel/parser@^7.1.0", "@babel/parser@^7.4.3", "@babel/parser@^7.4.4", "@babel/parser@^7.5.0", "@babel/parser@^7.5.5": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.5.5.tgz#02f077ac8817d3df4a832ef59de67565e71cca4b" + integrity sha512-E5BN68cqR7dhKan1SfqgPGhQ178bkVKpXTPEXnFJBrEt8/DKRZlybmy+IgYLTeN7tp1R5Ccmbm2rBk17sHYU3g== "@babel/plugin-proposal-async-generator-functions@^7.2.0": version "7.2.0" @@ -313,6 +313,14 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-syntax-decorators" "^7.2.0" +"@babel/plugin-proposal-dynamic-import@^7.5.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.5.0.tgz#e532202db4838723691b10a67b8ce509e397c506" + integrity sha512-x/iMjggsKTFHYC6g11PL7Qy58IK8H5zqfm9e6hu4z1iH2IRyAp9u9dL80zA6R76yFovETFLKz2VJIC2iIPBuFw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-dynamic-import" "^7.2.0" + "@babel/plugin-proposal-json-strings@^7.2.0": version "7.2.0" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.2.0.tgz#568ecc446c6148ae6b267f02551130891e29f317" @@ -321,7 +329,7 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-syntax-json-strings" "^7.2.0" -"@babel/plugin-proposal-object-rest-spread@7.4.4", "@babel/plugin-proposal-object-rest-spread@^7.4.4": +"@babel/plugin-proposal-object-rest-spread@7.4.4": version "7.4.4" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.4.4.tgz#1ef173fcf24b3e2df92a678f027673b55e7e3005" integrity sha512-dMBG6cSPBbHeEBdFXeQ2QLc5gUpg4Vkaz8octD4aoW/ISO+jBOcsuxYL7bsb5WSu8RLP6boxrBIALEHgoHtO9g== @@ -329,6 +337,14 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-syntax-object-rest-spread" "^7.2.0" +"@babel/plugin-proposal-object-rest-spread@^7.4.4", "@babel/plugin-proposal-object-rest-spread@^7.5.4": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.5.5.tgz#61939744f71ba76a3ae46b5eea18a54c16d22e58" + integrity sha512-F2DxJJSQ7f64FyTVl5cw/9MWn6naXGdk3Q3UhDbFEEHv+EilCPoeRD3Zh/Utx1CJz4uyKlQ4uH+bJPbEhMV7Zw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-object-rest-spread" "^7.2.0" + "@babel/plugin-proposal-optional-catch-binding@^7.2.0": version "7.2.0" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.2.0.tgz#135d81edb68a081e55e56ec48541ece8065c38f5" @@ -360,7 +376,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-syntax-dynamic-import@7.2.0": +"@babel/plugin-syntax-dynamic-import@7.2.0", "@babel/plugin-syntax-dynamic-import@^7.2.0": version "7.2.0" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.2.0.tgz#69c159ffaf4998122161ad8ebc5e6d1f55df8612" integrity sha512-mVxuJ0YroI/h/tbFTPGZR8cv6ai+STMKNBq0f8hFxsxWjl94qqhsb+wXbpNMDPU3cfR1TIsVFzU3nXyZMqyK4w== @@ -409,10 +425,10 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-async-to-generator@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.4.4.tgz#a3f1d01f2f21cadab20b33a82133116f14fb5894" - integrity sha512-YiqW2Li8TXmzgbXw+STsSqPBPFnGviiaSp6CYOq55X8GQ2SGVLrXB6pNid8HkqkZAzOH6knbai3snhP7v0fNwA== +"@babel/plugin-transform-async-to-generator@^7.4.4", "@babel/plugin-transform-async-to-generator@^7.5.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.5.0.tgz#89a3848a0166623b5bc481164b5936ab947e887e" + integrity sha512-mqvkzwIGkq0bEF1zLRRiTdjfomZJDV33AH3oQzHVGkI2VzEmXLpKKOBvEVaFZBJdN0XTyH38s9j/Kiqr68dggg== dependencies: "@babel/helper-module-imports" "^7.0.0" "@babel/helper-plugin-utils" "^7.0.0" @@ -426,24 +442,24 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-transform-block-scoping@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.4.4.tgz#c13279fabf6b916661531841a23c4b7dae29646d" - integrity sha512-jkTUyWZcTrwxu5DD4rWz6rDB5Cjdmgz6z7M7RLXOJyCUkFBawssDGcGh8M/0FTSB87avyJI1HsTwUXp9nKA1PA== + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.5.5.tgz#a35f395e5402822f10d2119f6f8e045e3639a2ce" + integrity sha512-82A3CLRRdYubkG85lKwhZB0WZoHxLGsJdux/cOVaJCJpvYFl1LVzAIFyRsa7CvXqW8rBM4Zf3Bfn8PHt5DP0Sg== dependencies: "@babel/helper-plugin-utils" "^7.0.0" - lodash "^4.17.11" + lodash "^4.17.13" "@babel/plugin-transform-classes@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.4.4.tgz#0ce4094cdafd709721076d3b9c38ad31ca715eb6" - integrity sha512-/e44eFLImEGIpL9qPxSRat13I5QNRgBLu2hOQJCF7VLy/otSM/sypV1+XaIw5+502RX/+6YaSAPmldk+nhHDPw== + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.5.5.tgz#d094299d9bd680a14a2a0edae38305ad60fb4de9" + integrity sha512-U2htCNK/6e9K7jGyJ++1p5XRU+LJjrwtoiVn9SzRlDT2KubcZ11OOwy3s24TjHxPgxNwonCYP7U2K51uVYCMDg== dependencies: "@babel/helper-annotate-as-pure" "^7.0.0" - "@babel/helper-define-map" "^7.4.4" + "@babel/helper-define-map" "^7.5.5" "@babel/helper-function-name" "^7.1.0" "@babel/helper-optimise-call-expression" "^7.0.0" "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-replace-supers" "^7.4.4" + "@babel/helper-replace-supers" "^7.5.5" "@babel/helper-split-export-declaration" "^7.4.4" globals "^11.1.0" @@ -454,10 +470,10 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-destructuring@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.4.4.tgz#9d964717829cc9e4b601fc82a26a71a4d8faf20f" - integrity sha512-/aOx+nW0w8eHiEHm+BTERB2oJn5D127iye/SUQl7NjHy0lf+j7h4MKMMSOwdazGq9OxgiNADncE+SRJkCxjZpQ== +"@babel/plugin-transform-destructuring@^7.4.4", "@babel/plugin-transform-destructuring@^7.5.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.5.0.tgz#f6c09fdfe3f94516ff074fe877db7bc9ef05855a" + integrity sha512-YbYgbd3TryYYLGyC7ZR+Tq8H/+bCmwoaxHfJHupom5ECstzbRLTch6gOQbhEY9Z4hiCNHEURgq06ykFv9JZ/QQ== dependencies: "@babel/helper-plugin-utils" "^7.0.0" @@ -470,10 +486,10 @@ "@babel/helper-regex" "^7.4.4" regexpu-core "^4.5.4" -"@babel/plugin-transform-duplicate-keys@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.2.0.tgz#d952c4930f312a4dbfff18f0b2914e60c35530b3" - integrity sha512-q+yuxW4DsTjNceUiTzK0L+AfQ0zD9rWaTLiUqHA8p0gxx7lu1EylenfzjeIWNkPy6e/0VG/Wjw9uf9LueQwLOw== +"@babel/plugin-transform-duplicate-keys@^7.2.0", "@babel/plugin-transform-duplicate-keys@^7.5.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.5.0.tgz#c5dbf5106bf84cdf691222c0974c12b1df931853" + integrity sha512-igcziksHizyQPlX9gfSjHkE2wmoCH3evvD2qR5w29/Dk0SMKE/eOI7f1HhBdNhR/zxJDqrgpoDTq5YSLH/XMsQ== dependencies: "@babel/helper-plugin-utils" "^7.0.0" @@ -522,30 +538,33 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-modules-amd@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.2.0.tgz#82a9bce45b95441f617a24011dc89d12da7f4ee6" - integrity sha512-mK2A8ucqz1qhrdqjS9VMIDfIvvT2thrEsIQzbaTdc5QFzhDjQv2CkJJ5f6BXIkgbmaoax3zBr2RyvV/8zeoUZw== +"@babel/plugin-transform-modules-amd@^7.2.0", "@babel/plugin-transform-modules-amd@^7.5.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.5.0.tgz#ef00435d46da0a5961aa728a1d2ecff063e4fb91" + integrity sha512-n20UsQMKnWrltocZZm24cRURxQnWIvsABPJlw/fvoy9c6AgHZzoelAIzajDHAQrDpuKFFPPcFGd7ChsYuIUMpg== dependencies: "@babel/helper-module-transforms" "^7.1.0" "@babel/helper-plugin-utils" "^7.0.0" + babel-plugin-dynamic-import-node "^2.3.0" -"@babel/plugin-transform-modules-commonjs@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.4.4.tgz#0bef4713d30f1d78c2e59b3d6db40e60192cac1e" - integrity sha512-4sfBOJt58sEo9a2BQXnZq+Q3ZTSAUXyK3E30o36BOGnJ+tvJ6YSxF0PG6kERvbeISgProodWuI9UVG3/FMY6iw== +"@babel/plugin-transform-modules-commonjs@^7.4.4", "@babel/plugin-transform-modules-commonjs@^7.5.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.5.0.tgz#425127e6045231360858eeaa47a71d75eded7a74" + integrity sha512-xmHq0B+ytyrWJvQTc5OWAC4ii6Dhr0s22STOoydokG51JjWhyYo5mRPXoi+ZmtHQhZZwuXNN+GG5jy5UZZJxIQ== dependencies: "@babel/helper-module-transforms" "^7.4.4" "@babel/helper-plugin-utils" "^7.0.0" "@babel/helper-simple-access" "^7.1.0" + babel-plugin-dynamic-import-node "^2.3.0" -"@babel/plugin-transform-modules-systemjs@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.4.4.tgz#dc83c5665b07d6c2a7b224c00ac63659ea36a405" - integrity sha512-MSiModfILQc3/oqnG7NrP1jHaSPryO6tA2kOMmAQApz5dayPxWiHqmq4sWH2xF5LcQK56LlbKByCd8Aah/OIkQ== +"@babel/plugin-transform-modules-systemjs@^7.4.4", "@babel/plugin-transform-modules-systemjs@^7.5.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.5.0.tgz#e75266a13ef94202db2a0620977756f51d52d249" + integrity sha512-Q2m56tyoQWmuNGxEtUyeEkm6qJYFqs4c+XyXH5RAuYxObRNz9Zgj/1g2GMnjYp2EUyEy7YTrxliGCXzecl/vJg== dependencies: "@babel/helper-hoist-variables" "^7.4.4" "@babel/helper-plugin-utils" "^7.0.0" + babel-plugin-dynamic-import-node "^2.3.0" "@babel/plugin-transform-modules-umd@^7.2.0": version "7.2.0" @@ -570,12 +589,12 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-transform-object-super@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.2.0.tgz#b35d4c10f56bab5d650047dad0f1d8e8814b6598" - integrity sha512-VMyhPYZISFZAqAPVkiYb7dUe2AsVi2/wCT5+wZdsNO31FojQJa9ns40hzZ6U9f50Jlq4w6qwzdBB2uwqZ00ebg== + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.5.5.tgz#c70021df834073c65eb613b8679cc4a381d1a9f9" + integrity sha512-un1zJQAhSosGFBduPgN/YFNvWVpRuHKU7IHBglLoLZsGmruJPOo6pbInneflUdmq7YvSVqhpPs5zdBvLnteltQ== dependencies: "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-replace-supers" "^7.1.0" + "@babel/helper-replace-supers" "^7.5.5" "@babel/plugin-transform-parameters@^7.4.4": version "7.4.4" @@ -607,20 +626,20 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-runtime@7.4.3": - version "7.4.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.4.3.tgz#4d6691690ecdc9f5cb8c3ab170a1576c1f556371" - integrity sha512-7Q61bU+uEI7bCUFReT1NKn7/X6sDQsZ7wL1sJ9IYMAO7cI+eg6x9re1cEw2fCRMbbTVyoeUKWSV1M6azEfKCfg== +"@babel/plugin-transform-runtime@7.4.4": + version "7.4.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.4.4.tgz#a50f5d16e9c3a4ac18a1a9f9803c107c380bce08" + integrity sha512-aMVojEjPszvau3NRg+TIH14ynZLvPewH4xhlCW1w6A3rkxTS1m4uwzRclYR9oS+rl/dr+kT+pzbfHuAWP/lc7Q== dependencies: "@babel/helper-module-imports" "^7.0.0" "@babel/helper-plugin-utils" "^7.0.0" resolve "^1.8.1" semver "^5.5.1" -"@babel/plugin-transform-runtime@7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.4.4.tgz#a50f5d16e9c3a4ac18a1a9f9803c107c380bce08" - integrity sha512-aMVojEjPszvau3NRg+TIH14ynZLvPewH4xhlCW1w6A3rkxTS1m4uwzRclYR9oS+rl/dr+kT+pzbfHuAWP/lc7Q== +"@babel/plugin-transform-runtime@7.5.0": + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.5.0.tgz#45242c2c9281158c5f06d25beebac63e498a284e" + integrity sha512-LmPIZOAgTLl+86gR9KjLXex6P/lRz1fWEjTz6V6QZMmKie51ja3tvzdwORqhHc4RWR8TcZ5pClpRWs0mlaA2ng== dependencies: "@babel/helper-module-imports" "^7.0.0" "@babel/helper-plugin-utils" "^7.0.0" @@ -665,10 +684,11 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-transform-typescript@^7.3.2": - version "7.4.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.4.5.tgz#ab3351ba35307b79981993536c93ff8be050ba28" - integrity sha512-RPB/YeGr4ZrFKNwfuQRlMf2lxoCUaU01MTw39/OFE/RiL8HDjtn68BwEPft1P7JN4akyEmjGWAMNldOV7o9V2g== + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.5.5.tgz#6d862766f09b2da1cb1f7d505fe2aedab6b7d4b8" + integrity sha512-pehKf4m640myZu5B2ZviLaiBlxMCjSZ1qTEO459AXKX5GnPueyulJeCqZFs1nz/Ya2dDzXQ1NxZ/kKNWyD4h6w== dependencies: + "@babel/helper-create-class-features-plugin" "^7.5.5" "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-syntax-typescript" "^7.2.0" @@ -743,39 +763,41 @@ js-levenshtein "^1.1.3" semver "^5.5.0" -"@babel/preset-env@^7.4.3": - version "7.4.5" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.4.5.tgz#2fad7f62983d5af563b5f3139242755884998a58" - integrity sha512-f2yNVXM+FsR5V8UwcFeIHzHWgnhXg3NpRmy0ADvALpnhB0SLbCvrCRr4BLOUYbQNLS+Z0Yer46x9dJXpXewI7w== +"@babel/preset-env@7.5.4": + version "7.5.4" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.5.4.tgz#64bc15041a3cbb0798930319917e70fcca57713d" + integrity sha512-hFnFnouyRNiH1rL8YkX1ANCNAUVC8Djwdqfev8i1415tnAG+7hlA5zhZ0Q/3Q5gkop4HioIPbCEWAalqcbxRoQ== dependencies: "@babel/helper-module-imports" "^7.0.0" "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-proposal-async-generator-functions" "^7.2.0" + "@babel/plugin-proposal-dynamic-import" "^7.5.0" "@babel/plugin-proposal-json-strings" "^7.2.0" - "@babel/plugin-proposal-object-rest-spread" "^7.4.4" + "@babel/plugin-proposal-object-rest-spread" "^7.5.4" "@babel/plugin-proposal-optional-catch-binding" "^7.2.0" "@babel/plugin-proposal-unicode-property-regex" "^7.4.4" "@babel/plugin-syntax-async-generators" "^7.2.0" + "@babel/plugin-syntax-dynamic-import" "^7.2.0" "@babel/plugin-syntax-json-strings" "^7.2.0" "@babel/plugin-syntax-object-rest-spread" "^7.2.0" "@babel/plugin-syntax-optional-catch-binding" "^7.2.0" "@babel/plugin-transform-arrow-functions" "^7.2.0" - "@babel/plugin-transform-async-to-generator" "^7.4.4" + "@babel/plugin-transform-async-to-generator" "^7.5.0" "@babel/plugin-transform-block-scoped-functions" "^7.2.0" "@babel/plugin-transform-block-scoping" "^7.4.4" "@babel/plugin-transform-classes" "^7.4.4" "@babel/plugin-transform-computed-properties" "^7.2.0" - "@babel/plugin-transform-destructuring" "^7.4.4" + "@babel/plugin-transform-destructuring" "^7.5.0" "@babel/plugin-transform-dotall-regex" "^7.4.4" - "@babel/plugin-transform-duplicate-keys" "^7.2.0" + "@babel/plugin-transform-duplicate-keys" "^7.5.0" "@babel/plugin-transform-exponentiation-operator" "^7.2.0" "@babel/plugin-transform-for-of" "^7.4.4" "@babel/plugin-transform-function-name" "^7.4.4" "@babel/plugin-transform-literals" "^7.2.0" "@babel/plugin-transform-member-expression-literals" "^7.2.0" - "@babel/plugin-transform-modules-amd" "^7.2.0" - "@babel/plugin-transform-modules-commonjs" "^7.4.4" - "@babel/plugin-transform-modules-systemjs" "^7.4.4" + "@babel/plugin-transform-modules-amd" "^7.5.0" + "@babel/plugin-transform-modules-commonjs" "^7.5.0" + "@babel/plugin-transform-modules-systemjs" "^7.5.0" "@babel/plugin-transform-modules-umd" "^7.2.0" "@babel/plugin-transform-named-capturing-groups-regex" "^7.4.5" "@babel/plugin-transform-new-target" "^7.4.4" @@ -790,7 +812,7 @@ "@babel/plugin-transform-template-literals" "^7.4.4" "@babel/plugin-transform-typeof-symbol" "^7.2.0" "@babel/plugin-transform-unicode-regex" "^7.4.4" - "@babel/types" "^7.4.4" + "@babel/types" "^7.5.0" browserslist "^4.6.0" core-js-compat "^3.1.1" invariant "^2.2.2" @@ -829,28 +851,28 @@ "@babel/parser" "^7.4.4" "@babel/types" "^7.4.4" -"@babel/traverse@^7.1.0", "@babel/traverse@^7.4.3", "@babel/traverse@^7.4.4", "@babel/traverse@^7.4.5": - version "7.4.5" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.4.5.tgz#4e92d1728fd2f1897dafdd321efbff92156c3216" - integrity sha512-Vc+qjynwkjRmIFGxy0KYoPj4FdVDxLej89kMHFsWScq999uX+pwcX4v9mWRjW0KcAYTPAuVQl2LKP1wEVLsp+A== +"@babel/traverse@^7.1.0", "@babel/traverse@^7.4.3", "@babel/traverse@^7.4.4", "@babel/traverse@^7.5.0", "@babel/traverse@^7.5.5": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.5.5.tgz#f664f8f368ed32988cd648da9f72d5ca70f165bb" + integrity sha512-MqB0782whsfffYfSjH4TM+LMjrJnhCNEDMDIjeTpl+ASaUvxcjoiVCo/sM1GhS1pHOXYfWVCYneLjMckuUxDaQ== dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/generator" "^7.4.4" + "@babel/code-frame" "^7.5.5" + "@babel/generator" "^7.5.5" "@babel/helper-function-name" "^7.1.0" "@babel/helper-split-export-declaration" "^7.4.4" - "@babel/parser" "^7.4.5" - "@babel/types" "^7.4.4" + "@babel/parser" "^7.5.5" + "@babel/types" "^7.5.5" debug "^4.1.0" globals "^11.1.0" - lodash "^4.17.11" + lodash "^4.17.13" -"@babel/types@^7.0.0", "@babel/types@^7.2.0", "@babel/types@^7.3.0", "@babel/types@^7.4.0", "@babel/types@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.4.4.tgz#8db9e9a629bb7c29370009b4b779ed93fe57d5f0" - integrity sha512-dOllgYdnEFOebhkKCjzSVFqw/PmmB8pH6RGOWkY4GsboQNd47b1fBThBSwlHAq9alF9vc1M3+6oqR47R50L0tQ== +"@babel/types@^7.0.0", "@babel/types@^7.2.0", "@babel/types@^7.3.0", "@babel/types@^7.4.0", "@babel/types@^7.4.4", "@babel/types@^7.5.0", "@babel/types@^7.5.5": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.5.5.tgz#97b9f728e182785909aa4ab56264f090a028d18a" + integrity sha512-s63F9nJioLqOlW3UkyMd+BYhXt44YuaFm/VV0VwuteqjYwRrObkU7ra9pY4wAJR3oXi8hJrMcrcJdO/HH33vtw== dependencies: esutils "^2.0.2" - lodash "^4.17.11" + lodash "^4.17.13" to-fast-properties "^2.0.0" "@cnakazawa/watch@^1.0.3": @@ -1093,9 +1115,9 @@ integrity sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA== "@types/node@*": - version "12.0.8" - resolved "https://registry.yarnpkg.com/@types/node/-/node-12.0.8.tgz#551466be11b2adc3f3d47156758f610bd9f6b1d8" - integrity sha512-b8bbUOTwzIY3V5vDTY1fIJ+ePKDUBqt2hC2woVGotdQQhG/2Sh62HOKHrT7ab+VerXAcPyAiTEipPu/FsreUtg== + 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/q@^1.5.1": version "1.5.2" @@ -1291,11 +1313,6 @@ accepts@~1.3.4, accepts@~1.3.5, accepts@~1.3.7: mime-types "~2.1.24" negotiator "0.6.2" -acorn-dynamic-import@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/acorn-dynamic-import/-/acorn-dynamic-import-4.0.0.tgz#482210140582a36b83c3e342e1cfebcaa9240948" - integrity sha512-d3OEjQV4ROpoflsnUA8HozoIR504TFxNivYEUi6uwz0IYhBkTDXGuWlNdMtybRt3nqVx/L6XqMt0FxkXuWKZhw== - acorn-globals@^1.0.4: version "1.0.9" resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-1.0.9.tgz#55bb5e98691507b74579d0513413217c380c54cf" @@ -1317,9 +1334,9 @@ acorn-jsx@^5.0.0: integrity sha512-HJ7CfNHrfJLlNTzIEUTj43LNWGkqpRLxm3YjAlcD0ACydk9XynzYsCBHxut+iqt+1aBXkx9UP/w/ZqMr13XIzg== acorn-walk@^6.0.1: - version "6.1.1" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-6.1.1.tgz#d363b66f5fac5f018ff9c3a1e7b6f8e310cc3913" - integrity sha512-OtUw6JUTgxA2QoqqmrmQ7F2NYqiBPi/L2jqHyFtllhOUvXYQXf0Z1CYUinIfyT4bTCGmrA7gX9FvHA81uzCoVw== + version "6.2.0" + resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-6.2.0.tgz#123cb8f3b84c2171f1f7fb252615b1c78a6b1a8c" + integrity sha512-7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA== acorn@^2.1.0, acorn@^2.4.0: version "2.7.0" @@ -1331,10 +1348,10 @@ 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.5, acorn@^6.0.7: - version "6.1.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.1.1.tgz#7d25ae05bb8ad1f9b699108e1094ecd7884adc1f" - integrity sha512-jPTiwtOxaHNaAPg/dmrJ/beuzLRnXtB0kQPQ8JpotKJgTB6rX6c8mlf315941pyjBSaPg8NHXS9fhP4u17DpGA== +acorn@^6.0.1, acorn@^6.0.7, acorn@^6.2.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.2.0.tgz#67f0da2fc339d6cfb5d6fb244fd449f33cd8bbe3" + integrity sha512-8oe72N3WPMjA+2zVG71Ia0nXZ8DpQH+QyyHO+p06jT8eg8FGG3FbcUIi8KziHlAfheJQZeoqbvq1mQSQHXKYLw== add-matchers@0.6.2: version "0.6.2" @@ -1358,14 +1375,14 @@ ajv-errors@^1.0.0: integrity sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ== ajv-keywords@^3.1.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.4.0.tgz#4b831e7b531415a7cc518cd404e73f6193c6349d" - integrity sha512-aUjdRFISbuFOl0EIZc+9e4FfZp0bDZgAdOOf30bJmw8VM9v84SHyVyxDfbWxpGYbdZD/9XoKxfHVNmxPkhwyGw== + version "3.4.1" + resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.4.1.tgz#ef916e271c64ac12171fd8384eaae6b2345854da" + integrity sha512-RO1ibKvd27e6FEShVFfPALuHI3WjSVNeK5FIsmme/LYRNxjKuNj+Dt7bucLa6NdSv3JcVTyMlm9kGR84z1XpaQ== -ajv@^6.1.0, ajv@^6.5.5, ajv@^6.9.1: - version "6.10.0" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.10.0.tgz#90d0d54439da587cd7e843bfb7045f50bd22bdf1" - integrity sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg== +ajv@^6.1.0, ajv@^6.10.2, ajv@^6.5.5, ajv@^6.9.1: + version "6.10.2" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.10.2.tgz#d3cea04d6b017b2894ad69040fec8b623eb4bd52" + integrity sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw== dependencies: fast-deep-equal "^2.0.1" fast-json-stable-stringify "^2.0.0" @@ -1601,16 +1618,16 @@ async@^1.5.2: integrity sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo= async@^2.5.0: - version "2.6.2" - resolved "https://registry.yarnpkg.com/async/-/async-2.6.2.tgz#18330ea7e6e313887f5d2f2a904bac6fe4dd5381" - integrity sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg== + version "2.6.3" + resolved "https://registry.yarnpkg.com/async/-/async-2.6.3.tgz#d72625e2344a3656e3a3ad4fa749fa83299d82ff" + integrity sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg== dependencies: - lodash "^4.17.11" + lodash "^4.17.14" async@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/async/-/async-3.0.1.tgz#dfeb34657d1e63c94c0eee424297bf8a2c9a8182" - integrity sha512-ZswD8vwPtmBZzbn9xyi8XBQWXH3AvOQ43Za1KWYq7JeycrZuUYzx01KvHcVbXltjqH4y0MWrQ33008uLTqXuDw== + version "3.1.0" + resolved "https://registry.yarnpkg.com/async/-/async-3.1.0.tgz#42b3b12ae1b74927b5217d8c0016baaf62463772" + integrity sha512-4vx/aaY6j/j3Lw3fbCHNWP0pPaTCew3F6F3hYyl/tHs/ndmV1q7NW9T5yuJ2XAGwdQrP+6Wu20x06U4APo/iQQ== async@~0.9.0: version "0.9.2" @@ -1707,6 +1724,13 @@ babel-messages@^6.23.0, babel-messages@^6.8.0: dependencies: babel-runtime "^6.22.0" +babel-plugin-dynamic-import-node@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.0.tgz#f00f507bdaa3c3e3ff6e7e5e98d90a7acab96f7f" + integrity sha512-o6qFkpeQEBxcqt0XYlWzAVxNCSCZdUgcR8IRlhD/8DylxjjO4foPcvTW0GGKa/cVt3rvxZ7o5ippJ+/0nvLhlQ== + dependencies: + object.assign "^4.1.0" + babel-plugin-istanbul@^5.1.0: version "5.1.4" resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-5.1.4.tgz#841d16b9a58eeb407a0ddce622ba02fe87a752ba" @@ -1826,7 +1850,7 @@ block-stream@*: dependencies: inherits "~2.0.0" -bluebird@^3.5.3: +bluebird@^3.5.5: version "3.5.5" resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.5.tgz#a8d0afd73251effbbd5fe384a77d73003c17a71f" integrity sha512-5am6HnnfN+urzt4yfg7IgTbotDjIT/u8AJpEt0sIU9FtXfVeezXAPKswrG+xKUCOYAINpSdgZVDU6QFh+cuH3w== @@ -1999,18 +2023,18 @@ browserify-zlib@^0.2.0: pako "~1.0.5" browserslist@^4.0.0, browserslist@^4.5.2, browserslist@^4.6.0, browserslist@^4.6.2: - version "4.6.2" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.6.2.tgz#574c665950915c2ac73a4594b8537a9eba26203f" - integrity sha512-2neU/V0giQy9h3XMPwLhEY3+Ao0uHSwHvU8Q1Ea6AgLVL1sXbX3dzPrJ8NWe5Hi4PoTkCYXOtVR9rfRLI0J/8Q== + version "4.6.6" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.6.6.tgz#6e4bf467cde520bc9dbdf3747dafa03531cec453" + integrity sha512-D2Nk3W9JL9Fp/gIcWei8LrERCS+eXu9AM5cfXA8WEZ84lFks+ARnZ0q/R69m2SV3Wjma83QDDPxsNKXUwdIsyA== dependencies: - caniuse-lite "^1.0.30000974" - electron-to-chromium "^1.3.150" - node-releases "^1.1.23" + caniuse-lite "^1.0.30000984" + electron-to-chromium "^1.3.191" + node-releases "^1.1.25" bser@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/bser/-/bser-2.0.0.tgz#9ac78d3ed5d915804fd87acb158bc797147a1719" - integrity sha1-mseNPtXZFYBP2HrLFYvHlxR6Fxk= + version "2.1.0" + resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.0.tgz#65fc784bf7f87c009b973c12db6546902fa9c7b5" + integrity sha512-8zsjWrQkkBoLK6uxASk1nJ2SKv97ltiGDo6A3wA0/yRPz+CwmEyDo0hUrhIuukG2JHpAl3bvFIixw2/3Hi0DOg== dependencies: node-int64 "^0.4.0" @@ -2062,21 +2086,21 @@ bytes@3.1.0: integrity sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg== cacache@^11.2.0, cacache@^11.3.2: - version "11.3.2" - resolved "https://registry.yarnpkg.com/cacache/-/cacache-11.3.2.tgz#2d81e308e3d258ca38125b676b98b2ac9ce69bfa" - integrity sha512-E0zP4EPGDOaT2chM08Als91eYnf8Z+eH1awwwVsngUmgppfM5jjJ8l3z5vO5p5w/I3LsiXawb1sW0VY65pQABg== + version "11.3.3" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-11.3.3.tgz#8bd29df8c6a718a6ebd2d010da4d7972ae3bbadc" + integrity sha512-p8WcneCytvzPxhDvYp31PD039vi77I12W+/KfR9S8AZbaiARFBCpsPJS+9uhWfeBfeAtW7o/4vt3MUqLkbY6nA== dependencies: - bluebird "^3.5.3" + bluebird "^3.5.5" chownr "^1.1.1" figgy-pudding "^3.5.1" - glob "^7.1.3" + glob "^7.1.4" graceful-fs "^4.1.15" lru-cache "^5.1.1" mississippi "^3.0.0" mkdirp "^0.5.1" move-concurrently "^1.0.1" promise-inflight "^1.0.1" - rimraf "^2.6.2" + rimraf "^2.6.3" ssri "^6.0.1" unique-filename "^1.1.1" y18n "^4.0.0" @@ -2176,10 +2200,10 @@ caniuse-api@^3.0.0: lodash.memoize "^4.1.2" lodash.uniq "^4.5.0" -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000974: - version "1.0.30000974" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000974.tgz#b7afe14ee004e97ce6dc73e3f878290a12928ad8" - integrity sha512-xc3rkNS/Zc3CmpMKuczWEdY2sZgx09BkAxfvkxlAEBTqcMHeL8QnPqhKse+5sRTi3nrw2pJwToD2WvKn1Uhvww== +caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000984: + version "1.0.30000984" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000984.tgz#dc96c3c469e9bcfc6ad5bdd24c77ec918ea76fe0" + integrity sha512-n5tKOjMaZ1fksIpQbjERuqCyfgec/m9pferkFQbLmWtqLUdmt12hNhjSwsmPdqeiG2NkITOQhr1VYIwWSAceiA== capture-exit@^2.0.0: version "2.0.0" @@ -2198,6 +2222,15 @@ caseless@~0.12.0: resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= +chalk@2.4.2, chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.4.1, chalk@^2.4.2: + version "2.4.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + chalk@^1.1.1, chalk@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" @@ -2209,15 +2242,6 @@ chalk@^1.1.1, chalk@^1.1.3: strip-ansi "^3.0.0" supports-color "^2.0.0" -chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.4.1, chalk@^2.4.2: - version "2.4.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" - integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== - dependencies: - ansi-styles "^3.2.1" - escape-string-regexp "^1.0.5" - supports-color "^5.3.0" - chardet@^0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" @@ -2290,9 +2314,9 @@ chokidar@^2.0.2, chokidar@^2.0.4, chokidar@^2.1.5, chokidar@^2.1.6: fsevents "^1.2.7" chownr@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.1.tgz#54726b8b8fff4df053c42187e801fb4412df1494" - integrity sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g== + version "1.1.2" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.2.tgz#a18f1e0b269c8a6a5d3c86eb298beb14c3dd7bf6" + integrity sha512-GkfeAQh+QNy3wquu9oIZr6SS5x7wGdSgNQvD10X3r+AZr1Oys22HW8kAmDMvNg2+Dm0TeGaEuO8gFwdBXxwO8A== chrome-trace-event@^1.0.0: version "1.0.2" @@ -2371,6 +2395,15 @@ cliui@^4.0.0: 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" + integrity sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA== + dependencies: + string-width "^3.1.0" + strip-ansi "^5.2.0" + wrap-ansi "^5.1.0" + clone-deep@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-2.0.2.tgz#00db3a1e173656730d1188c3d6aced6d7ea97713" @@ -2456,7 +2489,7 @@ colors@1.0.x: resolved "https://registry.yarnpkg.com/colors/-/colors-1.0.3.tgz#0433f44d809680fdeb60ed260f1b0c262e82a40b" integrity sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs= -colors@1.3.3, colors@^1.1.2: +colors@^1.1.2, colors@^1.3.3: version "1.3.3" resolved "https://registry.yarnpkg.com/colors/-/colors-1.3.3.tgz#39e005d546afe01e01f9c4ca8fa50f686a01205d" integrity sha512-mmGt/1pZqYRjMxB1axhTo16/snVZ5krrKkcmMeVKxzECMMXoCgnvTPp10QgHfcbQZw8Dq2jMNG6je4JlWU0gWg== @@ -2572,6 +2605,11 @@ 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== + connect-history-api-fallback@^1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz#8b32089359308d111115d81cad3fceab888f97bc" @@ -2713,12 +2751,12 @@ cosmiconfig@^5.0.0: parse-json "^4.0.0" coveralls@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/coveralls/-/coveralls-3.0.4.tgz#f50233c9c62fd0973f710fce85fd19dba24cff4b" - integrity sha512-eyqUWA/7RT0JagiL0tThVhjbIjoiEUyWCjtUJoOPcWoeofP5WK/jb2OJYoBFrR6DvplR+AxOyuBqk4JHkk5ykA== + version "3.0.5" + resolved "https://registry.yarnpkg.com/coveralls/-/coveralls-3.0.5.tgz#28d7274c6c9827aa85537eab82d66e7e62d0d527" + integrity sha512-/KD7PGfZv/tjKB6LoW97jzIgFqem0Tu9tZL9/iwBnBd8zkIZp7vT1ZSHNvnr0GSQMV/LTMxUstWg8WcDDUVQKg== dependencies: growl "~> 1.10.0" - js-yaml "^3.11.0" + js-yaml "^3.13.1" lcov-parse "^0.0.10" log-driver "^1.2.7" minimist "^1.2.0" @@ -2762,6 +2800,17 @@ create-hmac@^1.1.0, create-hmac@^1.1.2, create-hmac@^1.1.4: safe-buffer "^5.0.1" sha.js "^2.4.8" +cross-spawn@6.0.5, cross-spawn@^6.0.0, cross-spawn@^6.0.5: + version "6.0.5" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" + integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== + dependencies: + nice-try "^1.0.4" + path-key "^2.0.1" + semver "^5.5.0" + shebang-command "^1.2.0" + which "^1.2.9" + cross-spawn@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-3.0.1.tgz#1256037ecb9f0c5f79e3d6ef135e30770184b982" @@ -2779,17 +2828,6 @@ cross-spawn@^5.0.1: shebang-command "^1.2.0" which "^1.2.9" -cross-spawn@^6.0.0, cross-spawn@^6.0.5: - version "6.0.5" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" - integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== - dependencies: - nice-try "^1.0.4" - path-key "^2.0.1" - semver "^5.5.0" - shebang-command "^1.2.0" - which "^1.2.9" - crypto-browserify@^3.11.0: version "3.12.0" resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec" @@ -2867,14 +2905,6 @@ css-select@^2.0.0: domutils "^1.7.0" nth-check "^1.0.2" -css-tree@1.0.0-alpha.28: - version "1.0.0-alpha.28" - resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.28.tgz#8e8968190d886c9477bc8d61e96f61af3f7ffa7f" - integrity sha512-joNNW1gCp3qFFzj4St6zk+Wh/NBv0vM5YbEreZk0SD4S23S+1xBKb6cLDg2uj4P4k/GUMlIm6cKIDqIG+vdt0w== - dependencies: - mdn-data "~1.1.0" - source-map "^0.5.3" - css-tree@1.0.0-alpha.29: version "1.0.0-alpha.29" resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.29.tgz#3fa9d4ef3142cbd1c301e7664c1f352bd82f5a39" @@ -2883,16 +2913,19 @@ css-tree@1.0.0-alpha.29: mdn-data "~1.1.0" source-map "^0.5.3" +css-tree@1.0.0-alpha.33: + version "1.0.0-alpha.33" + resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.33.tgz#970e20e5a91f7a378ddd0fc58d0b6c8d4f3be93e" + integrity sha512-SPt57bh5nQnpsTBsx/IXbO14sRc9xXu5MtMAVuo0BaQQmyf0NupNPPSoMaqiAF5tDFafYsTkfeH4Q/HCKXkg4w== + dependencies: + mdn-data "2.0.4" + source-map "^0.5.3" + css-unit-converter@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/css-unit-converter/-/css-unit-converter-1.1.1.tgz#d9b9281adcfd8ced935bdbaba83786897f64e996" integrity sha1-2bkoGtz9jO2TW9urqDeGiX9k6ZY= -css-url-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/css-url-regex/-/css-url-regex-1.1.0.tgz#83834230cc9f74c457de59eebd1543feeb83b7ec" - integrity sha1-g4NCMMyfdMRX3lnuvRVD/uuDt+w= - css-what@2.1, css-what@^2.1.2: version "2.1.3" resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.3.tgz#a6d7604573365fe74686c3f311c56513d88285f2" @@ -2976,7 +3009,7 @@ cssnano-util-same-parent@^4.0.0: resolved "https://registry.yarnpkg.com/cssnano-util-same-parent/-/cssnano-util-same-parent-4.0.1.tgz#574082fb2859d2db433855835d9a8456ea18bbf3" integrity sha512-WcKx5OY+KoSIAxBW6UBBRay1U6vkYheCdjyVNDm85zt5K9mHoGOfsOsqIszfAqrQQFIIKgjh2+FDgIj/zsl21Q== -cssnano@^4.1.0: +cssnano@^4.1.10: version "4.1.10" resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-4.1.10.tgz#0ac41f0b13d13d465487e111b778d42da631b8b2" integrity sha512-5wny+F6H4/8RgNlaqab4ktc3e0/blKutmq8yNlBFXA//nSFFAqAngjNVRzUvCgYROULmZZUoosL/KSoZo5aUaQ== @@ -2994,9 +3027,9 @@ csso@^3.5.1: css-tree "1.0.0-alpha.29" cssom@0.3.x, "cssom@>= 0.3.0 < 0.4.0", "cssom@>= 0.3.2 < 0.4.0": - version "0.3.6" - resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.6.tgz#f85206cee04efa841f3c5982a74ba96ab20d65ad" - integrity sha512-DtUeseGk9/GBW0hl0vVPpU22iHL6YB5BUX7ml1hB+GMpo0NX5G4voX3kdWiMSEguFtcW3Vh3djqNF4aIe6ne0A== + version "0.3.8" + resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a" + integrity sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg== "cssstyle@>= 0.2.29 < 0.3.0": version "0.2.37" @@ -3006,9 +3039,9 @@ cssom@0.3.x, "cssom@>= 0.3.0 < 0.4.0", "cssom@>= 0.3.2 < 0.4.0": cssom "0.3.x" cssstyle@^1.0.0: - version "1.2.2" - resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-1.2.2.tgz#427ea4d585b18624f6fdbf9de7a2a1a3ba713077" - integrity sha512-43wY3kl1CVQSvL7wUY1qXkxVGkStjpkDmVjiIKX8R97uhajy8Bybay78uOtqvh7Q5GK75dNPfW0geWjE6qQQow== + version "1.4.0" + resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-1.4.0.tgz#9d31328229d3c565c61e586b02041a28fccdccf1" + integrity sha512-GBrLZYZ4X4x6/QEoBnIrqb8B/f5l4+8me2dkom/j1Gtbxy0kBv6OGzKuAsGM75bkGwGAFkt56Iwg28S3XTZgSA== dependencies: cssom "0.3.x" @@ -3384,15 +3417,15 @@ ee-first@1.1.1: resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= -electron-to-chromium@^1.3.150: - version "1.3.162" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.162.tgz#e006e3a2aeebaf942064a16b24c6dfc864510de1" - integrity sha512-/cCwFlLV0lImvAfNsJpEVIZFhJBoutb7L0AHd56K4h8McUqpdkbBvAbMnY/mfNKnCqkX6GZVvQc+BVod4t2EMw== +electron-to-chromium@^1.3.191: + version "1.3.196" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.196.tgz#1a7885855880fa3ae7a8908c442757e561eec82b" + integrity sha512-NFGRHzY0x8yIUFnAthKxaOKe5q+c8jjvyQM2pMq2+59QORz8AN5+qXPJBwX05kz2uEtyraX2XxB0LPT+7EE6vw== elliptic@^6.0.0: - version "6.4.1" - resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.1.tgz#c2d0b7776911b86722c632c3c06c60f2f819939a" - integrity sha512-BsXLz5sqX8OHcsh7CqBMztyXARmGQ3LWPtGjJi6DiJHq5C/qvi9P3OqgswKSDftbu8+IoI/QDTAm2fFnQ9SZSQ== + version "6.5.0" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.0.tgz#2b8ed4c891b7de3200e14412a5b8248c7af505ca" + integrity sha512-eFOJTMyCYb7xtE/caJ6JJu+bhi67WCYNbkGSknu20pmM8Ke/bqOfdnZWxyoGN26JgfxTbXrsCkEw4KheCT/KGg== dependencies: bn.js "^4.4.0" brorand "^1.0.1" @@ -3424,7 +3457,7 @@ end-of-stream@^1.0.0, end-of-stream@^1.1.0: dependencies: once "^1.4.0" -enhanced-resolve@^4.1.0: +enhanced-resolve@4.1.0, enhanced-resolve@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz#41c7e0bfdfe74ac1ffe1e57ad6a5c6c9f3742a7f" integrity sha512-F/7vkyTtyc/llOIn8oWclcB25KdRaiPBpZYDgJHgh/UHtpgT2p2eldQgtQnLtUvfMKPKxbRaQM/hHkvLHt1Vng== @@ -3646,13 +3679,13 @@ esdoc@^1.1.0: taffydb "2.7.3" eslint-config-airbnb-base@^13.1.0: - version "13.1.0" - resolved "https://registry.yarnpkg.com/eslint-config-airbnb-base/-/eslint-config-airbnb-base-13.1.0.tgz#b5a1b480b80dfad16433d6c4ad84e6605052c05c" - integrity sha512-XWwQtf3U3zIoKO1BbHh6aUhJZQweOwSt4c2JrPDg9FP3Ltv3+YfEv7jIDB8275tVnO/qOHbfuYg3kzw6Je7uWw== + 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== dependencies: - eslint-restricted-globals "^0.1.1" + confusing-browser-globals "^1.0.5" object.assign "^4.1.0" - object.entries "^1.0.4" + object.entries "^1.1.0" eslint-import-resolver-node@^0.3.2: version "0.3.2" @@ -3663,9 +3696,9 @@ eslint-import-resolver-node@^0.3.2: resolve "^1.5.0" eslint-module-utils@^2.4.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.4.0.tgz#8b93499e9b00eab80ccb6614e69f03678e84e09a" - integrity sha512-14tltLm38Eu3zS+mt0KvILC3q8jyIAH518MlG+HO0p+yK885Lb1UHTY/UgR91eOyGdmxAPb+OLoW4znqIT6Ndw== + version "2.4.1" + resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.4.1.tgz#7b4675875bf96b0dbf1b21977456e5bb1f5e018c" + integrity sha512-H6DOj+ejw7Tesdgbfs4jeS4YMFrT8uI8xwd1gtQqXssaR0EQ26L+2O/w6wkYFy2MymON0fTwHmXBvvfLNZVZEw== dependencies: debug "^2.6.8" pkg-dir "^2.0.0" @@ -3679,9 +3712,9 @@ eslint-plugin-es@^1.4.0: regexpp "^2.0.1" eslint-plugin-import@^2.17.3: - version "2.17.3" - resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.17.3.tgz#00548b4434c18faebaba04b24ae6198f280de189" - integrity sha512-qeVf/UwXFJbeyLbxuY8RgqDyEKCkqV7YC+E5S5uOjAp4tOc8zj01JP3ucoBM8JcEqd1qRasJSg6LLlisirfy0Q== + version "2.18.2" + resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.18.2.tgz#02f1180b90b077b33d447a17a2326ceb400aceb6" + integrity sha512-5ohpsHAiUBRNaBWAF08izwUGlbrJoJJ+W9/TBwsGoR1MnlgfwMIKrFeSjWbt6moabiXW9xNvtFz+97KHRfI4HQ== dependencies: array-includes "^3.0.3" contains-path "^0.1.0" @@ -3690,8 +3723,8 @@ eslint-plugin-import@^2.17.3: eslint-import-resolver-node "^0.3.2" eslint-module-utils "^2.4.0" has "^1.0.3" - lodash "^4.17.11" minimatch "^3.0.4" + object.values "^1.1.0" read-pkg-up "^2.0.0" resolve "^1.11.0" @@ -3707,11 +3740,6 @@ eslint-plugin-node@^9.1.0: resolve "^1.10.1" semver "^6.1.0" -eslint-restricted-globals@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/eslint-restricted-globals/-/eslint-restricted-globals-0.1.1.tgz#35f0d5cbc64c2e3ed62e93b4b1a7af05ba7ed4d7" - integrity sha1-NfDVy8ZMLj7WLpO0saevBbp+1Nc= - eslint-scope@^4.0.0, eslint-scope@^4.0.3: version "4.0.3" resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.3.tgz#ca03833310f6889a3264781aa82e63eb9cfe7848" @@ -3721,9 +3749,11 @@ eslint-scope@^4.0.0, eslint-scope@^4.0.3: estraverse "^4.1.1" eslint-utils@^1.3.0, eslint-utils@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.3.1.tgz#9a851ba89ee7c460346f97cf8939c7298827e512" - integrity sha512-Z7YjnIldX+2XMcjr7ZkgEsOj/bREONV60qYeB/bjMAqqqZ4zxKyWX+BOUkdmRmA9riiIPVvo5x86m5elviOk0Q== + 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-visitor-keys@^1.0.0: version "1.0.0" @@ -4006,9 +4036,9 @@ extend@3.0.2, extend@^3.0.2, extend@~3.0.2: integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== external-editor@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.0.3.tgz#5866db29a97826dbe4bf3afd24070ead9ea43a27" - integrity sha512-bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA== + version "3.1.0" + resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.1.0.tgz#cb03f740befae03ea4d283caed2741a83f335495" + integrity sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew== dependencies: chardet "^0.7.0" iconv-lite "^0.4.24" @@ -4190,13 +4220,13 @@ find-up@^3.0.0: dependencies: locate-path "^3.0.0" -findup-sync@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-2.0.0.tgz#9326b1488c22d1a6088650a86901b2d9a90a2cbc" - integrity sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw= +findup-sync@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-3.0.0.tgz#17b108f9ee512dfb7a5c7f3c8b27ea9e1a9c08d1" + integrity sha512-YbffarhcicEhOrm4CtrwdKBdCuz576RLdhJDsIfvNtxUuhdRet1qZcsMjqbePtAseKdAnDyM/IyXbu7PRPRLYg== dependencies: detect-file "^1.0.0" - is-glob "^3.1.0" + is-glob "^4.0.0" micromatch "^3.0.4" resolve-dir "^1.0.1" @@ -4210,9 +4240,9 @@ flat-cache@^2.0.1: write "1.0.3" flatted@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/flatted/-/flatted-2.0.0.tgz#55122b6536ea496b4b44893ee2608141d10d9916" - integrity sha512-R+H8IZclI8AAkSBRQJLVOsxwAoHd6WC40b4QTNWIjzAa6BXOBfQcM587MXDTVPeYaopFNWHUFLx7eNmHDSxMWg== + version "2.0.1" + resolved "https://registry.yarnpkg.com/flatted/-/flatted-2.0.1.tgz#69e57caa8f0eacbc281d2e2cb458d46fdb449e08" + integrity sha512-a1hQMktqW9Nmqr5aktAux3JMNqaucxGcjtjWnZLHX7yyPCmlSV3M54nGYbqT8K+0GhF3NBgmJCc3ma+WOgX8Jg== flush-write-stream@^1.0.0: version "1.1.1" @@ -4312,12 +4342,12 @@ fs-extra@7.0.1: jsonfile "^4.0.0" universalify "^0.1.0" -fs-extra@8.0.1, fs-extra@^8.0.1: - version "8.0.1" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.0.1.tgz#90294081f978b1f182f347a440a209154344285b" - integrity sha512-W+XLrggcDzlle47X/XnS7FXrXu9sDo+Ze9zpndeBxdgv88FHLm1HtmkhEwavruS6koanBjp098rUpHs65EmG7A== +fs-extra@^8.0.1, fs-extra@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" + integrity sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g== dependencies: - graceful-fs "^4.1.2" + graceful-fs "^4.2.0" jsonfile "^4.0.0" universalify "^0.1.0" @@ -4454,19 +4484,7 @@ glob-to-regexp@^0.3.0: resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz#8c5a1494d2066c570cc3bfe4496175acc4d502ab" integrity sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs= -glob@7.1.3: - version "7.1.3" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1" - integrity sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ== - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.0.4" - once "^1.3.0" - path-is-absolute "^1.0.0" - -glob@^7.0.0, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@~7.1.1: +glob@7.1.4, glob@^7.0.0, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@~7.1.1: version "7.1.4" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.4.tgz#aa608a2f6c577ad357e1ae5a5c26d9a8d1969255" integrity sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A== @@ -4485,6 +4503,13 @@ global-dirs@^0.1.0: dependencies: ini "^1.3.4" +global-modules@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-2.0.0.tgz#997605ad2345f27f51539bea26574421215c7780" + integrity sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A== + dependencies: + global-prefix "^3.0.0" + global-modules@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz#6d770f0eb523ac78164d72b5e71a8877265cc3ea" @@ -4505,6 +4530,15 @@ global-prefix@^1.0.1: is-windows "^1.0.1" which "^1.2.14" +global-prefix@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-3.0.0.tgz#fc85f73064df69f50421f47f883fe5b913ba9b97" + integrity sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg== + dependencies: + ini "^1.3.5" + kind-of "^6.0.2" + which "^1.3.1" + globals@^11.1.0, globals@^11.7.0: version "11.12.0" resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" @@ -4578,10 +4612,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: - version "4.1.15" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.15.tgz#ffb703e1066e8a0eeaa4c8b80ba9253eeefbfb00" - integrity sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA== +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== "growl@~> 1.10.0": version "1.10.5" @@ -4841,7 +4875,7 @@ http-errors@1.6.3, http-errors@~1.6.2, http-errors@~1.6.3: setprototypeof "1.1.0" statuses ">= 1.4.0 < 2" -http-errors@1.7.2, http-errors@~1.7.2: +http-errors@1.7.2: version "1.7.2" resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.2.tgz#4f5029cf13239f31036e5b2e55292bcfbcc85c8f" integrity sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg== @@ -4852,6 +4886,17 @@ http-errors@1.7.2, http-errors@~1.7.2: statuses ">= 1.5.0 < 2" toidentifier "1.0.0" +http-errors@~1.7.2: + version "1.7.3" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.3.tgz#6c619e4f9c60308c38519498c14fbb10aacebb06" + integrity sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw== + dependencies: + depd "~1.1.2" + inherits "2.0.4" + setprototypeof "1.1.1" + statuses ">= 1.5.0 < 2" + toidentifier "1.0.0" + "http-parser-js@>=0.4.0 <0.4.11": version "0.4.10" resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.4.10.tgz#92c9c1374c35085f75db359ec56cc257cbb93fa4" @@ -4975,9 +5020,9 @@ import-fresh@^2.0.0: resolve-from "^3.0.0" import-fresh@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.0.0.tgz#a3d897f420cab0e671236897f75bc14b4885c390" - integrity sha512-pOnA9tfM3Uwics+SaBLCNyZZZbK+4PTu0OPZtLlMIrv17EdBoC15S9Kn8ckJ9TZTyKb3ywNE5y1yeDxxGA7nTQ== + version "3.1.0" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.1.0.tgz#6d33fa1dcef6df930fae003446f33415af905118" + integrity sha512-PpuksHKGt8rXfWEr9m9EHIpgyyaltBy8+eF6GJM0QCAxMgxCfucMF3mjecK2QsJr0amJW7gTqh5/wht0z2UhEQ== dependencies: parent-module "^1.0.0" resolve-from "^4.0.0" @@ -4987,7 +5032,7 @@ import-lazy@^2.1.0: resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-2.1.0.tgz#05698e3d45c88e8d7e9d92cb0584e77f096f3e43" integrity sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM= -import-local@^2.0.0: +import-local@2.0.0, import-local@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/import-local/-/import-local-2.0.0.tgz#55070be38a5993cf18ef6db7e961f5bee5c5a09d" integrity sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ== @@ -5025,25 +5070,30 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@2.0.3, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" - integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= +inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3: + version "2.0.4" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== inherits@2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" integrity sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE= -ini@^1.3.4, ini@~1.3.0: +inherits@2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" + integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= + +ini@^1.3.4, ini@^1.3.5, ini@~1.3.0: version "1.3.5" resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw== inquirer@^6.2.2: - version "6.3.1" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.3.1.tgz#7a413b5e7950811013a3db491c61d1f3b776e8e7" - integrity sha512-MmL624rfkFt4TG9y/Jvmt8vdmOo836U7Y0Hxr2aFk3RelZEGX4Igk0KabWrcaaZaTv9uzglOqWh1Vly+FAWAXA== + version "6.5.0" + resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.5.0.tgz#2303317efc9a4ea7ec2e2df6f86569b734accf42" + integrity sha512-scfHejeG/lVZSpvCXpsB4j/wQNPM5JC8kiElOI0OUTwmc1RTpXr4H32/HOlQHcZiYl2z2VElwuCVDRG8vFmbnA== dependencies: ansi-escapes "^3.2.0" chalk "^2.4.2" @@ -5051,7 +5101,7 @@ inquirer@^6.2.2: cli-width "^2.0.0" external-editor "^3.0.3" figures "^2.0.0" - lodash "^4.17.11" + lodash "^4.17.12" mute-stream "0.0.7" run-async "^2.2.0" rxjs "^6.4.0" @@ -5067,7 +5117,7 @@ internal-ip@^4.3.0: default-gateway "^4.2.0" ipaddr.js "^1.9.0" -interpret@^1.0.0, interpret@^1.1.0: +interpret@1.2.0, interpret@^1.0.0: version "1.2.0" resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.2.0.tgz#d5061a6224be58e8083985f5014d844359576296" integrity sha512-mT34yGKMNceBQUoVn7iCDKDntA7SC6gycMAWzGx1z/CMCTV7b2AAtXlo3nRyHZ1FelRkQbQjprHSYGwzLtkVbw== @@ -5099,11 +5149,16 @@ ip@^1.1.0, ip@^1.1.5: resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" integrity sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo= -ipaddr.js@1.9.0, ipaddr.js@^1.9.0: +ipaddr.js@1.9.0: version "1.9.0" resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.0.tgz#37df74e430a0e47550fe54a2defe30d8acd95f65" integrity sha512-M4Sjn6N/+O6/IXSJseKqHoFc+5FdGJ22sXqnjTpdZweHK64MzEPAyQZyEU3R/KRv2GLoa7nNtg/C2Ev6m7z+eA== +ipaddr.js@^1.9.0: + version "1.9.1" + resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" + integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== + is-absolute-url@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-2.1.0.tgz#50530dfb84fcc9aa7dbe7852e83a37b93b9f2aa6" @@ -5299,9 +5354,9 @@ is-obj@^1.0.0: integrity sha1-PkcprB9f3gJc19g6iW2rn09n2w8= is-path-cwd@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-2.1.0.tgz#2e0c7e463ff5b7a0eb60852d851a6809347a124c" - integrity sha512-Sc5j3/YnM8tDeyCsVeKlm/0p95075DyLmDEIkSgQ7mXkrOX+uTCtmQFm0CYzVyJwcCCmO3k8qfJt17SxQwB5Zw== + 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" @@ -5329,7 +5384,7 @@ is-plain-obj@^1.0.0, is-plain-obj@^1.1.0: resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= -is-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4: +is-plain-object@^2.0.3, is-plain-object@^2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== @@ -5480,9 +5535,9 @@ istanbul-reports@^2.1.1: handlebars "^4.1.2" jasmine-expect@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/jasmine-expect/-/jasmine-expect-4.0.1.tgz#48934ec5a3ba6b13dc0396eab8d4ddc336a0f7b3" - integrity sha512-tn+sdVx04MRHpW6ltIkEKANRO29C7AUdmkeupFrwbAawd8ICA/IZT9YsdIljGuxU+wLYoOJsaics6swnw2lO2g== + version "4.0.2" + resolved "https://registry.yarnpkg.com/jasmine-expect/-/jasmine-expect-4.0.2.tgz#a35bc1dd9e03504cfd73a5b0282ce73d103fc5c5" + integrity sha512-VpHLwpBE1chVIhiJ7kJHBbdsm2GVvBli5bem4pGqkbiuvIW2mxghPNhYrKyoHBQKVmlq+xLUTGlrWMC/Ovn+2g== dependencies: add-matchers "0.6.2" @@ -5495,7 +5550,7 @@ jest-changed-files@^24.8.0: execa "^1.0.0" throat "^4.0.0" -jest-cli@^24.7.1, jest-cli@^24.8.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== @@ -5589,17 +5644,17 @@ jest-environment-node@^24.8.0: jest-util "^24.8.0" jest-ex@^6.0.1: - version "6.1.0" - resolved "https://registry.yarnpkg.com/jest-ex/-/jest-ex-6.1.0.tgz#966f7afb19969593fc7ea92d7df2870ea8e3814e" - integrity sha512-5YMxOXRrRUge1OmpzsCMAVnfumqF1Kq+lBA/yQNIEHYDsUFasI6iYdWgfG2YZbtsYBwTIYbGswUePEFztYSaog== + version "6.1.1" + resolved "https://registry.yarnpkg.com/jest-ex/-/jest-ex-6.1.1.tgz#3ce1b9d216ef5d224eeca78da2aba46831354f24" + integrity sha512-ZICeQwfxAMaFS15qQYD0zLZXi76KMVtHe2d1m8R5HQIJ3EaqH+lBLcjgnscxFq2dtNLNobpnZm32fM8eVDtHYQ== dependencies: - "@babel/core" "7.4.3" - "@babel/plugin-transform-runtime" "7.4.3" - "@babel/preset-env" "^7.4.3" - glob "7.1.3" + "@babel/core" "7.5.4" + "@babel/plugin-transform-runtime" "7.5.0" + "@babel/preset-env" "7.5.4" + glob "7.1.4" html-loader "0.5.5" - jest-cli "^24.7.1" - yargs "13.2.2" + jest-cli "^24.8.0" + yargs "13.2.4" jest-get-type@^24.8.0: version "24.8.0" @@ -5886,7 +5941,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.11.0, js-yaml@^3.13.0, js-yaml@^3.13.1: +js-yaml@^3.13.0, 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== @@ -6121,9 +6176,9 @@ lcov-parse@^0.0.10: integrity sha1-GwuP+ayceIklBYK3C3ExXZ2m2aM= leasot@^7.4.0: - version "7.4.0" - resolved "https://registry.yarnpkg.com/leasot/-/leasot-7.4.0.tgz#5df74267af8ca67833b435e92576e4c5a1a39aaf" - integrity sha512-l29dwWEBiaXwDTvUyKAt5YeZXJrETyptxsTYsjaY5XaU1Q6lMM/XsF28xnWgGRAfXYJsx3kTlctEflsyI1Dfng== + version "7.5.0" + resolved "https://registry.yarnpkg.com/leasot/-/leasot-7.5.0.tgz#40d31b94bc7378da71837416f41745bb7532e13b" + integrity sha512-/vFxfV8u6X8BlJzav4ykNSGZDGoGdMYhyad56baCxk1lKIVld4O3z17EeCIKMqErX7ipwO7+H3kFHgjD5AGCHg== dependencies: async "^3.0.1" chalk "^2.4.2" @@ -6267,9 +6322,9 @@ lodash.memoize@^4.1.2: integrity sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4= lodash.merge@^4.4.0: - version "4.6.1" - resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.1.tgz#adc25d9cb99b9391c59624f379fbba60d7111d54" - integrity sha512-AOYza4+Hf5z1/0Hztxpm2/xiPZgi/cjMqdnKTUWTBSKchJlxXXuUSxCCl8rJlf4g6yww/j6mA8nC8Hw/EZWxKQ== + version "4.6.2" + resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" + integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== lodash.pick@^4.2.1: version "4.4.0" @@ -6306,10 +6361,10 @@ lodash.uniq@^4.5.0: resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= -lodash@^4.0.0, lodash@^4.1.0, lodash@^4.15.0, lodash@^4.17.11, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.2.0, lodash@~4.17.10: - version "4.17.11" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d" - integrity sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg== +lodash@^4.0.0, lodash@^4.1.0, lodash@^4.15.0, lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.13, lodash@^4.17.14, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.2.0, lodash@~4.17.10: + version "4.17.15" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" + integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== log-driver@^1.2.7: version "1.2.7" @@ -6433,6 +6488,11 @@ md5.js@^1.3.4: inherits "^2.0.1" safe-buffer "^5.1.2" +mdn-data@2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.4.tgz#699b3c38ac6f1d728091a64650b65d388502fd5b" + integrity sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA== + mdn-data@~1.1.0: version "1.1.4" resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-1.1.4.tgz#50b5d4ffc4575276573c4eedb8780812a8419f01" @@ -6641,9 +6701,9 @@ mississippi@^3.0.0: through2 "^2.0.0" mixin-deep@^1.2.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.1.tgz#a49e7268dce1a0d9698e45326c5626df3543d0fe" - integrity sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ== + version "1.3.2" + resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" + integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== dependencies: for-in "^1.0.2" is-extendable "^1.0.1" @@ -6889,10 +6949,10 @@ node-pre-gyp@^0.12.0: semver "^5.3.0" tar "^4" -node-releases@^1.1.23: - version "1.1.23" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.23.tgz#de7409f72de044a2fa59c097f436ba89c39997f0" - integrity sha512-uq1iL79YjfYC0WXoHbC/z28q/9pOl8kSHaXdWmAAc8No+bDwqkZbzIJz55g/MUsPgSGm9LZ7QSUbzTcH5tz47w== +node-releases@^1.1.25: + version "1.1.25" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.25.tgz#0c2d7dbc7fed30fbe02a9ee3007b8c90bf0133d3" + integrity sha512-fI5BXuk83lKEoZDdH3gRhtsNgh05/wZacuXkgbiYkceE7+QIMXOg98n9ZV7mz27B+kFHnqHcUpscZZlGRSmTpQ== dependencies: semver "^5.3.0" @@ -7000,9 +7060,9 @@ npm-bundled@^1.0.1: integrity sha512-8/JCaftHwbd//k6y2rEWp6k1wxVfpFzB6t1p825+cUb7Ym2XQfhwIC5KwhrvzZRJu+LtDE585zVaS32+CGtf0g== npm-packlist@^1.1.6: - version "1.4.1" - resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.1.tgz#19064cdf988da80ea3cee45533879d90192bbfbc" - integrity sha512-+TcdO7HJJ8peiiYhvPxsEDhF3PJFGUGRcFsGve3vxvxdcpO2Z4Z7rkosRM0kWj6LfbK/P0gu3dzk5RU1ffvFcw== + version "1.4.4" + resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.4.tgz#866224233850ac534b63d1a6e76050092b5d2f44" + integrity sha512-zTLo8UcVYtDU3gdeaFu2Xu0n0EvelfHDGuqtNIn5RO7yQj4H1TqNdBc/yZjxnWA0PVB8D3Woyp0i5B43JwQ6Vw== dependencies: ignore-walk "^3.0.1" npm-bundled "^1.0.1" @@ -7092,7 +7152,7 @@ object.assign@^4.1.0: has-symbols "^1.0.0" object-keys "^1.0.11" -object.entries@^1.0.4: +object.entries@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.0.tgz#2024fc6d6ba246aee38bdb0ffd5cfbcf371b7519" integrity sha512-l+H6EQ8qzGRxbkHOd5I/aHRhHDKoQXQ8g0BYt4uSweQU1/J6dZUOyWh9a2Vky35YCKjzmgxOzta2hH6kf9HuXA== @@ -7179,11 +7239,11 @@ optimist@^0.6.1: wordwrap "~0.0.2" optimize-css-assets-webpack-plugin@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-5.0.1.tgz#9eb500711d35165b45e7fd60ba2df40cb3eb9159" - integrity sha512-Rqm6sSjWtx9FchdP0uzTQDc7GXDKnwVEGoSxjezPkzMewx7gEWE9IMUYKmigTRC4U3RaNSwYVnUDLuIdtTpm0A== + version "5.0.3" + resolved "https://registry.yarnpkg.com/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-5.0.3.tgz#e2f1d4d94ad8c0af8967ebd7cf138dcb1ef14572" + integrity sha512-q9fbvCRS6EYtUKKSwI87qm2IxlyJK5b4dygW1rKUBT6mMDhdG5e5bZT63v6tnJR9F9FB/H5a0HTmtw+laUBxKA== dependencies: - cssnano "^4.1.0" + cssnano "^4.1.10" last-call-webpack-plugin "^3.0.0" optionator@^0.8.1, optionator@^0.8.2: @@ -7570,9 +7630,9 @@ pn@^1.1.0: integrity sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA== portfinder@^1.0.20: - version "1.0.20" - resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.20.tgz#bea68632e54b2e13ab7b0c4775e9b41bf270e44a" - integrity sha512-Yxe4mTyDzTd59PZJY4ojZR8F+E5e97iq2ZOHPz3HDgSvYC5siNad2tLooQ5y5QHyQhc3xVqvyk/eNA3wuoa7Sw== + version "1.0.21" + resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.21.tgz#60e1397b95ac170749db70034ece306b9a27e324" + integrity sha512-ESabpDCzmBS3ekHbmpAIiESq3udRsCBGiBZLsC+HgBKv2ezb0R4oG+7RnYEVZ/ZCfhel5Tx3UzdNWA0Lox2QCA== dependencies: async "^1.5.2" debug "^2.2.0" @@ -7923,11 +7983,6 @@ prepend-http@^1.0.0, prepend-http@^1.0.1: resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" integrity sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw= -prettier@^1.17.0: - version "1.18.2" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.18.2.tgz#6823e7c5900017b4bd3acf46fe9ac4b4d7bda9ea" - integrity sha512-OeHeMc0JhFE9idD4ZdtNibzY0+TPHSpSSb9h8FqtP+YnoZZ1sl8Vc9b1sasjfymH3SonAF4QcA2+mzHPhMvIiw== - pretty-error@^2.0.2: version "2.1.1" resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-2.1.1.tgz#5f4f87c8f91e5ae3f3ba87ab4cf5e03b1a17f1a3" @@ -7952,9 +8007,9 @@ private@^0.1.6, private@~0.1.5: integrity sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg== process-nextick-args@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa" - integrity sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw== + version "2.0.1" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" + integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== process@^0.11.10: version "0.11.10" @@ -8039,9 +8094,9 @@ pseudomap@^1.0.2: integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= psl@^1.1.24, psl@^1.1.28: - version "1.1.32" - resolved "https://registry.yarnpkg.com/psl/-/psl-1.1.32.tgz#3f132717cf2f9c169724b2b6caf373cf694198db" - integrity sha512-MHACAkHpihU/REGGPLj4sEfc/XKW2bheigvHO1dUqjaKigMp1C8+WLQYRGgeKFMsw5PMfegZcaN8IDXK/cD0+g== + version "1.2.0" + resolved "https://registry.yarnpkg.com/psl/-/psl-1.2.0.tgz#df12b5b1b3a30f51c329eacbdef98f3a6e136dc6" + integrity sha512-GEn74ZffufCmkDDLNcl3uuyF/aSD6exEyh1v/ZSdAomB82t6G9hzJVRx0jBmLDW+VfZqks3aScmMw9DszwUalA== pstree.remy@^1.1.6: version "1.1.7" @@ -8360,14 +8415,14 @@ regenerator-runtime@^0.11.0: integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg== regenerator-runtime@^0.13.2: - version "0.13.2" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.2.tgz#32e59c9a6fb9b1a4aff09b4930ca2d4477343447" - integrity sha512-S/TQAZJO+D3m9xeN1WTI8dLKBBiRgXBlTJvbWjCThHWZj9EvHK70Ff50/tYj2J/fvBY6JtFVwRuazHN2E7M9BA== + version "0.13.3" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.3.tgz#7cf6a77d8f5c6f60eb73c5fc1955b2ceb01e6bf5" + integrity sha512-naKIZz2GQ8JWh///G7L3X6LaQUAMp2lvb1rvwwsURe/VXwD6VMfr+/1NuNw3ag8v2kY1aQ/go5SNn79O9JU7yw== regenerator-transform@^0.14.0: - version "0.14.0" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.14.0.tgz#2ca9aaf7a2c239dd32e4761218425b8c7a86ecaf" - integrity sha512-rtOelq4Cawlbmq9xuMR5gdFmv7ku/sFoB7sRiywx7aq53bc52b4j6zvH7Te1Vt/X2YveDKnCGUbioieU7FEL3w== + version "0.14.1" + resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.14.1.tgz#3b2fce4e1ab7732c08f665dfdb314749c7ddd2fb" + integrity sha512-flVuee02C3FKRISbxhXl9mGzdbWUVHubl1SMaknjxkFB1/iqpJhArQUvRxOOPEc/9tAiX0BaQ28FJH10E4isSQ== dependencies: private "^0.1.6" @@ -8385,9 +8440,9 @@ regex-parser@2.2.10: integrity sha512-8t6074A68gHfU8Neftl0Le6KTDwfGAj7IyjPIMSfikI2wJUTHDMaIq42bUsfVnj8mhx0R+45rdUXHGpN164avA== regexp-tree@^0.1.6: - version "0.1.10" - resolved "https://registry.yarnpkg.com/regexp-tree/-/regexp-tree-0.1.10.tgz#d837816a039c7af8a8d64d7a7c3cf6a1d93450bc" - integrity sha512-K1qVSbcedffwuIslMwpe6vGlj+ZXRnGkvjAtFHfDZZZuEdA/h0dxljAPu9vhUo6Rrx2U2AwJ+nSQ6hK+lrP5MQ== + 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== regexpp@^2.0.1: version "2.0.1" @@ -8592,9 +8647,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.3.2, resolve@^1.5.0, resolve@^1.8.1: - version "1.11.0" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.11.0.tgz#4014870ba296176b86343d50b60f3b50609ce232" - integrity sha512-WL2pBDjqT6pGUNSUzMw00o4T7If+z4H2x3Gz893WoUQ5KW8Vr9txp00ykiP16VBaZF5+j/OcXJHZ9+PCvdiDKw== + version "1.11.1" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.11.1.tgz#ea10d8110376982fef578df8fc30b9ac30a07a3e" + integrity sha512-vIpgF6wfuJOZI7KKKSP+HmiKggadPQAdsp5HiC1mvqnfp0gF1vdwgBWZIdrVft9pgqoMFQN+R7BSWZiBxx+BBw== dependencies: path-parse "^1.0.6" @@ -8639,7 +8694,7 @@ rgba-regex@^1.0.0: resolved "https://registry.yarnpkg.com/rgba-regex/-/rgba-regex-1.0.0.tgz#43374e2e2ca0968b0ef1523460b7d730ff22eeb3" integrity sha1-QzdOLiyglosO8VI0YLfXMP8i7rM= -rimraf@2, rimraf@2.6.3, rimraf@2.x.x, rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.2, rimraf@^2.6.3: +rimraf@2, rimraf@2.6.3, rimraf@2.x.x, rimraf@^2.5.4, rimraf@^2.6.1, 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== @@ -8680,11 +8735,16 @@ rxjs@^6.4.0: dependencies: tslib "^1.9.0" -safe-buffer@5.1.2, safe-buffer@>=5.1.0, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: +safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.2" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== +safe-buffer@>=5.1.0, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2: + version "5.2.0" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.0.tgz#b74daec49b1148f88c64b68d49b1e815c1f2f519" + integrity sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg== + safe-regex@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" @@ -8749,11 +8809,11 @@ schema-utils@^1.0.0: ajv-keywords "^3.1.0" script-ext-html-webpack-plugin@^2.1.3: - version "2.1.3" - resolved "https://registry.yarnpkg.com/script-ext-html-webpack-plugin/-/script-ext-html-webpack-plugin-2.1.3.tgz#b4bf703cddbe3de2e6f483e19dfeba2b5ec4abfe" - integrity sha512-a/gqxJFw2IAs8LK/ZFBKv1YoeFysbntdiLBVdNfgHgMKWW1mMcRGY6Hm3aihSaY9tqqhcaXuQJ4nn19loNbkuQ== + version "2.1.4" + resolved "https://registry.yarnpkg.com/script-ext-html-webpack-plugin/-/script-ext-html-webpack-plugin-2.1.4.tgz#7c309354e310bf78523e1b84ca96fd374ceb9880" + integrity sha512-7MAv3paAMfh9y2Rg+yQKp9jEGC5cEcmdge4EomRqri10qoczmliYEVPVNz0/5e9QQ202e05qDll9B8zZlY9N1g== dependencies: - debug "^4.1.0" + debug "^4.1.1" scss-tokenizer@^0.2.3: version "0.2.3" @@ -8788,9 +8848,9 @@ semver-diff@^2.0.0: integrity sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA== semver@^6.0.0, semver@^6.1.0, semver@^6.1.1: - version "6.1.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-6.1.1.tgz#53f53da9b30b2103cd4f15eab3a18ecbcb210c9b" - integrity sha512-rWYq2e5iYW+fFe/oPPtYJxYgjBm8sC4rmoGdUOgBB7VnwKt6HrL793l2voH1UlsyYZpJ4g0wfjnTEO1s1NP2eQ== + version "6.2.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.2.0.tgz#4d813d9590aaf8a9192693d6c85b9344de5901db" + integrity sha512-jdFC1VdUGT/2Scgbimf7FSx9iJLXoqfglSF+gJeuNWVpiE37OIbc1jywR/GJyFdz3mnkz2/id0L0J/cr0izR5A== semver@~5.3.0: version "5.3.0" @@ -8878,20 +8938,10 @@ set-blocking@^2.0.0, set-blocking@~2.0.0: resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= -set-value@^0.4.3: - version "0.4.3" - resolved "https://registry.yarnpkg.com/set-value/-/set-value-0.4.3.tgz#7db08f9d3d22dc7f78e53af3c3bf4666ecdfccf1" - integrity sha1-fbCPnT0i3H945Trzw79GZuzfzPE= - dependencies: - extend-shallow "^2.0.1" - is-extendable "^0.1.1" - is-plain-object "^2.0.1" - to-object-path "^0.3.0" - -set-value@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.0.tgz#71ae4a88f0feefbbf52d1ea604f3fb315ebb6274" - integrity sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg== +set-value@^2.0.0, set-value@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b" + integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw== dependencies: extend-shallow "^2.0.1" is-extendable "^0.1.1" @@ -8969,9 +9019,9 @@ simple-swizzle@^0.2.2: is-arrayish "^0.3.1" sisteransi@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.0.tgz#77d9622ff909080f1c19e5f4a1df0c1b0a27b88c" - integrity sha512-N+z4pHB4AmUv0SjveWRd6q1Nj5w62m5jodv+GD8lvmbY/83T/rpbJGZOnK5T149OldDj4Db07BSv9xY4K6NTPQ== + version "1.0.2" + resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.2.tgz#ec57d64b6f25c4f26c0e2c7dd23f2d7f12f7e418" + integrity sha512-ZcYcZcT69nSLAR2oLN2JwNmLkJEKGooFMCdvOkFrToUt/WfcRWqhIg4P4KwY4dmLbuyXIx4o4YmPsvMRJYJd/w== slash@^1.0.0: version "1.0.0" @@ -9073,7 +9123,7 @@ source-map-resolve@^0.5.0, source-map-resolve@^0.5.2: source-map-url "^0.4.0" urix "^0.1.0" -source-map-support@^0.5.6, source-map-support@~0.5.10: +source-map-support@^0.5.6, source-map-support@~0.5.10, source-map-support@~0.5.12: version "0.5.12" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.12.tgz#b4f3b10d51857a5af0138d3ce8003b201613d599" integrity sha512-4h2Pbvyy15EE02G+JOZpUCmqWJuqrs+sEkzewTm++BPi7Hvn/HwcqLAcNxYAyI0x13CpPPn+kMjl+hplXMHITQ== @@ -9125,9 +9175,9 @@ spdx-expression-parse@^3.0.0: spdx-license-ids "^3.0.0" spdx-license-ids@^3.0.0: - version "3.0.4" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.4.tgz#75ecd1a88de8c184ef015eafb51b5b48bfd11bb1" - integrity sha512-7j8LYJLeY/Yb6ACbQ7F76qy5jHkp0U6jgBfJsk97bwWlVUnUWsAgpyaCvo17h0/RQGnQ036tVDomiwoI4pDkQA== + version "3.0.5" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz#3694b5804567a458d3c8045842a6358632f62654" + integrity sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q== spdy-transport@^3.0.0: version "3.0.0" @@ -9209,7 +9259,7 @@ static-extend@^0.1.1: define-property "^0.2.5" object-copy "^0.1.0" -statuses@1.5.0, "statuses@>= 1.4.0 < 2", "statuses@>= 1.5.0 < 2", statuses@~1.5.0: +statuses@1.5.0, "statuses@>= 1.4.0 < 2", "statuses@>= 1.5.0 < 2", statuses@^1.5.0, statuses@~1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= @@ -9298,7 +9348,7 @@ string-width@^1.0.1, string-width@^1.0.2: is-fullwidth-code-point "^2.0.0" strip-ansi "^4.0.0" -string-width@^3.0.0: +string-width@^3.0.0, string-width@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== @@ -9393,36 +9443,35 @@ stylehacks@^4.0.0: postcss "^7.0.0" postcss-selector-parser "^3.0.0" +supports-color@6.1.0, supports-color@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.1.0.tgz#0764abc69c63d5ac842dd4867e8d025e880df8f3" + integrity sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ== + dependencies: + has-flag "^3.0.0" + supports-color@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= -supports-color@^5.2.0, supports-color@^5.3.0, supports-color@^5.5.0: +supports-color@^5.2.0, supports-color@^5.3.0: version "5.5.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== dependencies: has-flag "^3.0.0" -supports-color@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.1.0.tgz#0764abc69c63d5ac842dd4867e8d025e880df8f3" - integrity sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ== - dependencies: - has-flag "^3.0.0" - svgo@^1.0.0: - version "1.2.2" - resolved "https://registry.yarnpkg.com/svgo/-/svgo-1.2.2.tgz#0253d34eccf2aed4ad4f283e11ee75198f9d7316" - integrity sha512-rAfulcwp2D9jjdGu+0CuqlrAUin6bBWrpoqXWwKDZZZJfXcUXQSxLJOFJCQCSA0x0pP2U0TxSlJu2ROq5Bq6qA== + version "1.3.0" + resolved "https://registry.yarnpkg.com/svgo/-/svgo-1.3.0.tgz#bae51ba95ded9a33a36b7c46ce9c359ae9154313" + integrity sha512-MLfUA6O+qauLDbym+mMZgtXCGRfIxyQoeH6IKVcFslyODEe/ElJNwr0FohQ3xG4C6HK6bk3KYPPXwHVJk3V5NQ== dependencies: chalk "^2.4.1" coa "^2.0.2" css-select "^2.0.0" css-select-base-adapter "^0.1.1" - css-tree "1.0.0-alpha.28" - css-url-regex "^1.1.0" + css-tree "1.0.0-alpha.33" csso "^3.5.1" js-yaml "^3.13.1" mkdirp "~0.5.1" @@ -9438,12 +9487,12 @@ svgo@^1.0.0: integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== table@^5.2.3: - version "5.4.0" - resolved "https://registry.yarnpkg.com/table/-/table-5.4.0.tgz#d772a3216e68829920a41a32c18eda286c95d780" - integrity sha512-nHFDrxmbrkU7JAFKqKbDJXfzrX2UBsWmrieXFTGxiI5e4ncg3VqsZeI4EzNmX0ncp4XNGVeoxIWJXfCIXwrsvw== + version "5.4.4" + resolved "https://registry.yarnpkg.com/table/-/table-5.4.4.tgz#6e0f88fdae3692793d1077fd172a4667afe986a6" + integrity sha512-IIfEAUx5QlODLblLrGTTLJA7Tk0iLSGBvgY8essPRVNGHAzThujww1YqHLs6h3HfTg55h++RzLHH5Xw/rfv+mg== dependencies: - ajv "^6.9.1" - lodash "^4.17.11" + ajv "^6.10.2" + lodash "^4.17.14" slice-ansi "^2.1.0" string-width "^3.0.0" @@ -9507,7 +9556,7 @@ terser-webpack-plugin@1.3.0, terser-webpack-plugin@^1.1.0: webpack-sources "^1.3.0" worker-farm "^1.7.0" -terser@4.0.0, terser@^4.0.0: +terser@4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/terser/-/terser-4.0.0.tgz#ef356f6f359a963e2cc675517f21c1c382877374" integrity sha512-dOapGTU0hETFl1tCo4t56FN+2jffoKyER9qBGoUFyZ6y7WLoKT0bF+lAYi6B6YsILcGF3q1C2FBh8QcKSCgkgA== @@ -9516,6 +9565,15 @@ terser@4.0.0, terser@^4.0.0: source-map "~0.6.1" source-map-support "~0.5.10" +terser@^4.0.0: + version "4.1.2" + resolved "https://registry.yarnpkg.com/terser/-/terser-4.1.2.tgz#b2656c8a506f7ce805a3f300a2ff48db022fa391" + integrity sha512-jvNoEQSPXJdssFwqPSgWjsOrb+ELoE+ILpHPKXC83tIxOlh2U75F1KuB2luLD/3a6/7K3Vw5pDn+hvu0C4AzSw== + 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" @@ -9779,14 +9837,14 @@ unicode-property-aliases-ecmascript@^1.0.4: integrity sha512-L5RAqCfXqAwR3RriF8pM0lU0w4Ryf/GgzONwi6KnL1taJQa7x1TCxdJnILX59WIGOwR57IVxn7Nej0fz1Ny6fw== union-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.0.tgz#5c71c34cb5bad5dcebe3ea0cd08207ba5aa1aea4" - integrity sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ= + version "1.0.1" + resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" + integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg== dependencies: arr-union "^3.1.0" get-value "^2.0.6" is-extendable "^0.1.1" - set-value "^0.4.3" + set-value "^2.0.1" uniq@^1.0.1: version "1.0.1" @@ -9880,7 +9938,7 @@ uri-js@^4.2.2: dependencies: punycode "^2.1.0" -urijs@1.19.1: +urijs@1.19.1, urijs@^1.19.1: version "1.19.1" resolved "https://registry.yarnpkg.com/urijs/-/urijs-1.19.1.tgz#5b0ff530c0cbde8386f6342235ba5ca6e995d25a" integrity sha512-xVrGVi94ueCJNrBSTjWqjvtgvl3cyOTThp2zaMaFNGp3F542TR6sM3f2o8RqZl+AwteClSVmoCyt0ka4RjQOQg== @@ -9981,7 +10039,7 @@ uuid@^3.0.1, 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.2: +v8-compile-cache@2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.0.3.tgz#00f7494d2ae2b688cfe2899df6ed2c54bef91dbe" integrity sha512-CNmdbwQMBjwr9Gsmohvm0pbL954tJrNzf6gWL3K+QMQf00PF7ERGrEiLgjuU3mKreLC2MeGhUsNV9ybTbLgd3w== @@ -10059,22 +10117,21 @@ webidl-conversions@^4.0.2: integrity sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg== webpack-cli@^3.3.4: - version "3.3.4" - resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-3.3.4.tgz#de27e281c48a897b8c219cb093e261d5f6afe44a" - integrity sha512-ubJGQEKMtBSpT+LiL5hXvn2GIOWiRWItR1DGUqJRhwRBeGhpRXjvF5f0erqdRJLErkfqS5/Ldkkedh4AL5Q1ZQ== - dependencies: - chalk "^2.4.1" - cross-spawn "^6.0.5" - enhanced-resolve "^4.1.0" - findup-sync "^2.0.0" - global-modules "^1.0.0" - import-local "^2.0.0" - interpret "^1.1.0" - loader-utils "^1.1.0" - prettier "^1.17.0" - supports-color "^5.5.0" - v8-compile-cache "^2.0.2" - yargs "^12.0.5" + version "3.3.6" + resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-3.3.6.tgz#2c8c399a2642133f8d736a359007a052e060032c" + integrity sha512-0vEa83M7kJtxK/jUhlpZ27WHIOndz5mghWL2O53kiDoA9DIxSKnfqB92LoqEn77cT4f3H2cZm1BMEat/6AZz3A== + dependencies: + chalk "2.4.2" + cross-spawn "6.0.5" + enhanced-resolve "4.1.0" + findup-sync "3.0.0" + global-modules "2.0.0" + import-local "2.0.0" + interpret "1.2.0" + loader-utils "1.2.3" + supports-color "6.1.0" + v8-compile-cache "2.0.3" + yargs "13.2.4" webpack-dev-middleware@^3.7.0: version "3.7.0" @@ -10149,16 +10206,15 @@ webpack-sources@^1.0.1, webpack-sources@^1.1.0, webpack-sources@^1.3.0: source-map "~0.6.1" webpack@^4.34.0: - version "4.34.0" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.34.0.tgz#a4c30129482f7b4ece4c0842002dedf2b56fab58" - integrity sha512-ry2IQy1wJjOefLe1uJLzn5tG/DdIKzQqNlIAd2L84kcaADqNvQDTBlo8UcCNyDaT5FiaB+16jhAkb63YeG3H8Q== + version "4.36.1" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.36.1.tgz#f546fda7a403a76faeaaa7196c50d12370ed18a9" + integrity sha512-Ej01/N9W8DVyhEpeQnbUdGvOECw0L46FxS12cCOs8gSK7bhUlrbHRnWkjiXckGlHjUrmL89kDpTRIkUk6Y+fKg== dependencies: "@webassemblyjs/ast" "1.8.5" "@webassemblyjs/helper-module-context" "1.8.5" "@webassemblyjs/wasm-edit" "1.8.5" "@webassemblyjs/wasm-parser" "1.8.5" - acorn "^6.0.5" - acorn-dynamic-import "^4.0.0" + acorn "^6.2.0" ajv "^6.1.0" ajv-keywords "^3.1.0" chrome-trace-event "^1.0.0" @@ -10239,7 +10295,7 @@ which-module@^2.0.0: resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= -which@1, which@^1.2.14, which@^1.2.9, which@^1.3.0: +which@1, which@^1.2.14, which@^1.2.9, which@^1.3.0, which@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== @@ -10274,15 +10330,16 @@ winston@2.1.x: stack-trace "0.0.x" wootils@^2.0.0, wootils@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/wootils/-/wootils-2.3.0.tgz#b628fd4b0b7644ce116456d2f3c223cfddc5e7c5" - integrity sha512-VtUPHMR+0NM/+rEtGVZjCbY5ajfI0BpBqpCkepFCqcxvMq9YB/coZX5VAdR/aJHup7HvfROLoABtDYRAe2F1jw== + version "2.5.0" + resolved "https://registry.yarnpkg.com/wootils/-/wootils-2.5.0.tgz#597813ce496e4afe3a335f182002fd6581cbc674" + integrity sha512-lV8U2jXe2V73zpDvOEjqdLbvrym3USGh49oy2flVQAVREmLwotbLlMNX10IgIoICwJfs8+r2REo5uupN4safww== dependencies: - colors "1.3.3" - fs-extra "8.0.1" - jimple "1.5.0" - statuses "1.5.0" - urijs "1.19.1" + 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" @@ -10309,6 +10366,15 @@ wrap-ansi@^2.0.0: string-width "^1.0.1" strip-ansi "^3.0.1" +wrap-ansi@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09" + integrity sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q== + dependencies: + ansi-styles "^3.2.0" + string-width "^3.0.0" + strip-ansi "^5.0.0" + wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" @@ -10362,9 +10428,9 @@ xml-name-validator@^3.0.0: integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== xtend@^4.0.0, xtend@~4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" - integrity sha1-pcbVMr5lbiPbgg77lDofBJmNY68= + version "4.0.2" + resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" + integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== y18n@^3.2.1: version "3.2.1" @@ -10394,7 +10460,7 @@ yargs-parser@^11.1.1: camelcase "^5.0.0" decamelize "^1.2.0" -yargs-parser@^13.0.0: +yargs-parser@^13.1.0: version "13.1.1" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.1.tgz#d26058532aa06d365fe091f6a1fc06b2f7e5eca0" integrity sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ== @@ -10409,7 +10475,7 @@ yargs-parser@^5.0.0: dependencies: camelcase "^3.0.0" -yargs@12.0.5, yargs@^12.0.2, yargs@^12.0.5: +yargs@12.0.5, 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== @@ -10427,12 +10493,12 @@ yargs@12.0.5, yargs@^12.0.2, yargs@^12.0.5: y18n "^3.2.1 || ^4.0.0" yargs-parser "^11.1.1" -yargs@13.2.2: - version "13.2.2" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.2.2.tgz#0c101f580ae95cea7f39d927e7770e3fdc97f993" - integrity sha512-WyEoxgyTD3w5XRpAQNYUB9ycVH/PQrToaTXdYXRdOXvEy1l19br+VJsc0vcO8PTGg5ro/l/GY7F/JMEBmI0BxA== +yargs@13.2.4: + version "13.2.4" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.2.4.tgz#0b562b794016eb9651b98bd37acf364aa5d6dc83" + integrity sha512-HG/DWAJa1PAnHT9JAhNa8AbAv3FPaiLzioSjCcmuXXhP8MlpHO5vwls4g4j6n30Z74GVQj8Xa62dWVx1QCGklg== dependencies: - cliui "^4.0.0" + cliui "^5.0.0" find-up "^3.0.0" get-caller-file "^2.0.1" os-locale "^3.1.0" @@ -10442,7 +10508,7 @@ yargs@13.2.2: string-width "^3.0.0" which-module "^2.0.0" y18n "^4.0.0" - yargs-parser "^13.0.0" + yargs-parser "^13.1.0" yargs@^7.0.0: version "7.1.0" From 77b22efa717e420177932bef192700d8bdc3d12c Mon Sep 17 00:00:00 2001 From: homer0 Date: Sat, 20 Jul 2019 07:01:09 -0300 Subject: [PATCH 02/24] chore(project): update dependencies and add @babel/plugin-transform-runtime for the tests --- package.json | 49 ++-- yarn.lock | 766 +++++++++++++++++++++++++++------------------------ 2 files changed, 435 insertions(+), 380 deletions(-) diff --git a/package.json b/package.json index 8d62b56..0c71b76 100644 --- a/package.json +++ b/package.json @@ -8,57 +8,58 @@ "license": "MIT", "dependencies": { "projext": "^6.0.6", - "wootils": "^2.3.0", + "wootils": "^2.5.0", "jimple": "^1.5.0", - "fs-extra": "^8.0.1", + "fs-extra": "^8.1.0", "extend": "^3.0.2", - "webpack": "^4.34.0", - "webpack-cli": "^3.3.4", - "webpack-dev-server": "3.5.0", - "mini-css-extract-plugin": "0.7.0", + "webpack": "^4.36.1", + "webpack-cli": "^3.3.6", + "webpack-dev-server": "^3.7.2", + "mini-css-extract-plugin": "0.8.0", "html-webpack-plugin": "^3.2.0", - "script-ext-html-webpack-plugin": "^2.1.3", - "compression-webpack-plugin": "2.0.0", - "terser-webpack-plugin": "1.3.0", - "optimize-css-assets-webpack-plugin": "^5.0.1", + "script-ext-html-webpack-plugin": "^2.1.4", + "compression-webpack-plugin": "^3.0.0", + "terser-webpack-plugin": "^1.3.0", + "optimize-css-assets-webpack-plugin": "^5.0.3", "copy-webpack-plugin": "^5.0.3", - "@babel/core": "7.4.4", + "@babel/core": "7.5.5", "node-sass": "^4.12.0", "babel-loader": "^8.0.6", - "css-loader": "2.1.1", + "css-loader": "^3.1.0", "sass-loader": "^7.1.0", "style-loader": "0.23.1", - "raw-loader": "2.0.0", - "file-loader": "3.0.1", - "url-loader": "1.1.2", + "raw-loader": "^3.1.0", + "file-loader": "^4.1.0", + "url-loader": "^2.1.0", "resolve-url-loader": "^3.1.0", "source-map-loader": "0.2.4", "webpack-dev-middleware": "^3.7.0", "webpack-hot-middleware": "^2.25.0", - "terser": "4.0.0", + "terser": "^4.1.2", "opener": "^1.5.1" }, "devDependencies": { "eslint": "^5.16.0", - "eslint-config-airbnb-base": "^13.1.0", - "eslint-plugin-import": "^2.17.3", + "eslint-config-airbnb-base": "^13.2.0", + "eslint-plugin-import": "^2.18.2", "eslint-plugin-node": "^9.1.0", - "@babel/preset-env": "7.4.4", - "jest-ex": "^6.0.1", + "@babel/preset-env": "7.5.5", + "@babel/plugin-transform-runtime": "7.5.5", + "jest-ex": "^6.1.1", "jest-cli": "^24.8.0", - "jasmine-expect": "^4.0.1", - "jimpex": "^3.0.0", + "jasmine-expect": "^4.0.2", + "jimpex": "^4.0.1", "esdoc": "^1.1.0", "esdoc-standard-plugin": "^1.0.0", "esdoc-node": "^1.0.4", - "leasot": "^7.4.0", - "coveralls": "^3.0.4" + "leasot": "^8.0.0", + "coveralls": "^3.0.5" }, "engine-strict": true, "engines": { diff --git a/yarn.lock b/yarn.lock index 7cda917..863eb61 100644 --- a/yarn.lock +++ b/yarn.lock @@ -66,7 +66,7 @@ semver "^5.4.1" source-map "^0.5.0" -"@babel/core@^7.1.0": +"@babel/core@7.5.5", "@babel/core@^7.1.0": version "7.5.5" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.5.5.tgz#17b2686ef0d6bc58f963dddd68ab669755582c30" integrity sha512-i4qoSr2KTtce0DmkuuQBV4AuQgGPUcPXMr9L5MyYAtk06z068lQ10a4O009fe5OB/DfNV+h+qqT7ddNV8UnRjg== @@ -337,7 +337,7 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-syntax-object-rest-spread" "^7.2.0" -"@babel/plugin-proposal-object-rest-spread@^7.4.4", "@babel/plugin-proposal-object-rest-spread@^7.5.4": +"@babel/plugin-proposal-object-rest-spread@^7.4.4", "@babel/plugin-proposal-object-rest-spread@^7.5.4", "@babel/plugin-proposal-object-rest-spread@^7.5.5": version "7.5.5" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.5.5.tgz#61939744f71ba76a3ae46b5eea18a54c16d22e58" integrity sha512-F2DxJJSQ7f64FyTVl5cw/9MWn6naXGdk3Q3UhDbFEEHv+EilCPoeRD3Zh/Utx1CJz4uyKlQ4uH+bJPbEhMV7Zw== @@ -441,7 +441,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-block-scoping@^7.4.4": +"@babel/plugin-transform-block-scoping@^7.4.4", "@babel/plugin-transform-block-scoping@^7.5.5": version "7.5.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.5.5.tgz#a35f395e5402822f10d2119f6f8e045e3639a2ce" integrity sha512-82A3CLRRdYubkG85lKwhZB0WZoHxLGsJdux/cOVaJCJpvYFl1LVzAIFyRsa7CvXqW8rBM4Zf3Bfn8PHt5DP0Sg== @@ -449,7 +449,7 @@ "@babel/helper-plugin-utils" "^7.0.0" lodash "^4.17.13" -"@babel/plugin-transform-classes@^7.4.4": +"@babel/plugin-transform-classes@^7.4.4", "@babel/plugin-transform-classes@^7.5.5": version "7.5.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.5.5.tgz#d094299d9bd680a14a2a0edae38305ad60fb4de9" integrity sha512-U2htCNK/6e9K7jGyJ++1p5XRU+LJjrwtoiVn9SzRlDT2KubcZ11OOwy3s24TjHxPgxNwonCYP7U2K51uVYCMDg== @@ -588,7 +588,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-object-super@^7.2.0": +"@babel/plugin-transform-object-super@^7.2.0", "@babel/plugin-transform-object-super@^7.5.5": version "7.5.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.5.5.tgz#c70021df834073c65eb613b8679cc4a381d1a9f9" integrity sha512-un1zJQAhSosGFBduPgN/YFNvWVpRuHKU7IHBglLoLZsGmruJPOo6pbInneflUdmq7YvSVqhpPs5zdBvLnteltQ== @@ -646,6 +646,16 @@ resolve "^1.8.1" semver "^5.5.1" +"@babel/plugin-transform-runtime@7.5.5": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.5.5.tgz#a6331afbfc59189d2135b2e09474457a8e3d28bc" + integrity sha512-6Xmeidsun5rkwnGfMOp6/z9nSzWpHFNVr2Jx7kwoq4mVatQfQx5S56drBgEHF+XQbKOdIaOiMIINvp/kAwMN+w== + dependencies: + "@babel/helper-module-imports" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" + resolve "^1.8.1" + semver "^5.5.1" + "@babel/plugin-transform-shorthand-properties@^7.2.0": version "7.2.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.2.0.tgz#6333aee2f8d6ee7e28615457298934a3b46198f0" @@ -819,6 +829,62 @@ js-levenshtein "^1.1.3" semver "^5.5.0" +"@babel/preset-env@7.5.5": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.5.5.tgz#bc470b53acaa48df4b8db24a570d6da1fef53c9a" + integrity sha512-GMZQka/+INwsMz1A5UEql8tG015h5j/qjptpKY2gJ7giy8ohzU710YciJB5rcKsWGWHiW3RUnHib0E5/m3Tp3A== + dependencies: + "@babel/helper-module-imports" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-proposal-async-generator-functions" "^7.2.0" + "@babel/plugin-proposal-dynamic-import" "^7.5.0" + "@babel/plugin-proposal-json-strings" "^7.2.0" + "@babel/plugin-proposal-object-rest-spread" "^7.5.5" + "@babel/plugin-proposal-optional-catch-binding" "^7.2.0" + "@babel/plugin-proposal-unicode-property-regex" "^7.4.4" + "@babel/plugin-syntax-async-generators" "^7.2.0" + "@babel/plugin-syntax-dynamic-import" "^7.2.0" + "@babel/plugin-syntax-json-strings" "^7.2.0" + "@babel/plugin-syntax-object-rest-spread" "^7.2.0" + "@babel/plugin-syntax-optional-catch-binding" "^7.2.0" + "@babel/plugin-transform-arrow-functions" "^7.2.0" + "@babel/plugin-transform-async-to-generator" "^7.5.0" + "@babel/plugin-transform-block-scoped-functions" "^7.2.0" + "@babel/plugin-transform-block-scoping" "^7.5.5" + "@babel/plugin-transform-classes" "^7.5.5" + "@babel/plugin-transform-computed-properties" "^7.2.0" + "@babel/plugin-transform-destructuring" "^7.5.0" + "@babel/plugin-transform-dotall-regex" "^7.4.4" + "@babel/plugin-transform-duplicate-keys" "^7.5.0" + "@babel/plugin-transform-exponentiation-operator" "^7.2.0" + "@babel/plugin-transform-for-of" "^7.4.4" + "@babel/plugin-transform-function-name" "^7.4.4" + "@babel/plugin-transform-literals" "^7.2.0" + "@babel/plugin-transform-member-expression-literals" "^7.2.0" + "@babel/plugin-transform-modules-amd" "^7.5.0" + "@babel/plugin-transform-modules-commonjs" "^7.5.0" + "@babel/plugin-transform-modules-systemjs" "^7.5.0" + "@babel/plugin-transform-modules-umd" "^7.2.0" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.4.5" + "@babel/plugin-transform-new-target" "^7.4.4" + "@babel/plugin-transform-object-super" "^7.5.5" + "@babel/plugin-transform-parameters" "^7.4.4" + "@babel/plugin-transform-property-literals" "^7.2.0" + "@babel/plugin-transform-regenerator" "^7.4.5" + "@babel/plugin-transform-reserved-words" "^7.2.0" + "@babel/plugin-transform-shorthand-properties" "^7.2.0" + "@babel/plugin-transform-spread" "^7.2.0" + "@babel/plugin-transform-sticky-regex" "^7.2.0" + "@babel/plugin-transform-template-literals" "^7.4.4" + "@babel/plugin-transform-typeof-symbol" "^7.2.0" + "@babel/plugin-transform-unicode-regex" "^7.4.4" + "@babel/types" "^7.5.5" + browserslist "^4.6.0" + core-js-compat "^3.1.1" + invariant "^2.2.2" + js-levenshtein "^1.1.3" + semver "^5.5.0" + "@babel/preset-flow@7.0.0": version "7.0.0" resolved "https://registry.yarnpkg.com/@babel/preset-flow/-/preset-flow-7.0.0.tgz#afd764835d9535ec63d8c7d4caf1c06457263da2" @@ -1029,18 +1095,26 @@ "@types/istanbul-reports" "^1.1.1" "@types/yargs" "^12.0.9" -"@mrmlnc/readdir-enhanced@^2.2.1": - version "2.2.1" - resolved "https://registry.yarnpkg.com/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz#524af240d1a360527b730475ecfa1344aa540dde" - integrity sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g== +"@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" + integrity sha512-NT/skIZjgotDSiXs0WqYhgcuBKhUMgfekCmCGtkUAiLqZdOnrdjmZr9wRl3ll64J9NF79uZ4fk16Dx0yMc/Xbg== dependencies: - call-me-maybe "^1.0.1" - glob-to-regexp "^0.3.0" + "@nodelib/fs.stat" "2.0.1" + run-parallel "^1.1.9" -"@nodelib/fs.stat@^1.1.2": - version "1.1.3" - resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz#2b5a3ab3f918cca48a8c754c08168e3f03eba61b" - integrity sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw== +"@nodelib/fs.stat@2.0.1", "@nodelib/fs.stat@^2.0.1": + version "2.0.1" + resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.1.tgz#814f71b1167390cfcb6a6b3d9cdeb0951a192c14" + integrity sha512-+RqhBlLn6YRBGOIoVYthsG0J9dfpO79eJyN7BYBkZJtfqrBwf2KK+rD/M/yjZR6WBmIhAgOV7S60eCgaSWtbFw== + +"@nodelib/fs.walk@^1.2.1": + version "1.2.2" + resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.2.tgz#6a6450c5e17012abd81450eb74949a4d970d2807" + integrity sha512-J/DR3+W12uCzAJkw7niXDcqcKBg6+5G5Q/ZpThpGNzAUz70eOR6RV4XnnSN01qHZiVl0eavoxJsBypQoKsV2QQ== + dependencies: + "@nodelib/fs.scandir" "2.1.1" + fastq "^1.6.0" "@types/babel__core@^7.1.0": version "7.1.2" @@ -1529,13 +1603,18 @@ array-includes@^3.0.3: define-properties "^1.1.2" es-abstract "^1.7.0" -array-union@^1.0.1, array-union@^1.0.2: +array-union@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" integrity sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk= dependencies: array-uniq "^1.0.1" +array-union@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" + integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== + array-uniq@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" @@ -1624,7 +1703,7 @@ async@^2.5.0: dependencies: lodash "^4.17.14" -async@^3.0.1: +async@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/async/-/async-3.1.0.tgz#42b3b12ae1b74927b5217d8c0016baaf62463772" integrity sha512-4vx/aaY6j/j3Lw3fbCHNWP0pPaTCew3F6F3hYyl/tHs/ndmV1q7NW9T5yuJ2XAGwdQrP+6Wu20x06U4APo/iQQ== @@ -1860,23 +1939,7 @@ bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0: resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.8.tgz#2cde09eb5ee341f484746bb0309b3253b1b1442f" integrity sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA== -body-parser@1.18.3: - version "1.18.3" - resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.18.3.tgz#5b292198ffdd553b3a0f20ded0592b956955c8b4" - integrity sha1-WykhmP/dVTs6DyDe0FkrlWlVyLQ= - dependencies: - bytes "3.0.0" - content-type "~1.0.4" - debug "2.6.9" - depd "~1.1.2" - http-errors "~1.6.3" - iconv-lite "0.4.23" - on-finished "~2.3.0" - qs "6.5.2" - raw-body "2.3.3" - type-is "~1.6.16" - -body-parser@1.19.0: +body-parser@1.19.0, body-parser@^1.19.0: version "1.19.0" resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.19.0.tgz#96b2709e57c9c4e09a6fd66a8fd979844f69f08a" integrity sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw== @@ -1946,6 +2009,13 @@ braces@^2.3.1, braces@^2.3.2: split-string "^3.0.2" to-regex "^3.0.1" +braces@^3.0.1: + version "3.0.2" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" + integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== + dependencies: + fill-range "^7.0.1" + brorand@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" @@ -2120,11 +2190,6 @@ cache-base@^1.0.1: union-value "^1.0.0" unset-value "^1.0.0" -call-me-maybe@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.1.tgz#26d208ea89e37b5cbde60250a15f031c16a4d66b" - integrity sha1-JtII6onje1y95gJQoV8DHBak1ms= - caller-callsite@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/caller-callsite/-/caller-callsite-2.0.0.tgz#847e0fce0a223750a9a027c54b33731ad3154134" @@ -2185,7 +2250,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.2.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== @@ -2506,7 +2571,7 @@ commander@2.17.x: resolved "https://registry.yarnpkg.com/commander/-/commander-2.17.1.tgz#bd77ab7de6de94205ceacc72f1716d29f20a77bf" integrity sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg== -commander@^2.19.0, commander@^2.20.0, commander@^2.8.1, commander@~2.20.0: +commander@^2.20.0, commander@^2.8.1, commander@~2.20.0: version "2.20.0" resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.0.tgz#d58bb2b5c1ee8f87b0d340027e9e94e222c5a422" integrity sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ== @@ -2533,38 +2598,25 @@ compose-function@3.0.3: dependencies: arity-n "^1.0.4" -compressible@~2.0.14, compressible@~2.0.16: +compressible@~2.0.16: version "2.0.17" resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.17.tgz#6e8c108a16ad58384a977f3a482ca20bff2f38c1" integrity sha512-BGHeLCK1GV7j1bSmQQAi26X+GgWcTjLr/0tzSvMCl3LH1w1IJ4PFSPoV5316b30cneTziC+B1a+3OjoSUcQYmw== dependencies: mime-db ">= 1.40.0 < 2" -compression-webpack-plugin@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/compression-webpack-plugin/-/compression-webpack-plugin-2.0.0.tgz#46476350c1eb27f783dccc79ac2f709baa2cffbc" - integrity sha512-bDgd7oTUZC8EkRx8j0sjyCfeiO+e5sFcfgaFcjVhfQf5lLya7oY2BczxcJ7IUuVjz5m6fy8IECFmVFew3xLk8Q== +compression-webpack-plugin@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/compression-webpack-plugin/-/compression-webpack-plugin-3.0.0.tgz#097d2e4d95c3a14cb5c8ed20899009ab5b9bbca0" + integrity sha512-ls+oKw4eRbvaSv/hj9NmctihhBcR26j76JxV0bLRLcWhrUBdQFgd06z/Kgg7exyQvtWWP484wZxs0gIUX3NO0Q== dependencies: cacache "^11.2.0" - find-cache-dir "^2.0.0" + find-cache-dir "^3.0.0" neo-async "^2.5.0" schema-utils "^1.0.0" serialize-javascript "^1.4.0" webpack-sources "^1.0.1" -compression@1.7.3: - version "1.7.3" - resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.3.tgz#27e0e176aaf260f7f2c2813c3e440adb9f1993db" - integrity sha512-HSjyBG5N1Nnz7tF2+O7A9XUhyjru71/fwgNb7oIsEVHR0WShfs2tIS/EySLgiTe98aOK18YDlMXpzjCXY/n9mg== - dependencies: - accepts "~1.3.5" - bytes "3.0.0" - compressible "~2.0.14" - debug "2.6.9" - on-headers "~1.0.1" - safe-buffer "5.1.2" - vary "~1.1.2" - compression@^1.7.4: version "1.7.4" resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.4.tgz#95523eff170ca57c29a0ca41e6fe131f41e5bb8f" @@ -2637,11 +2689,6 @@ contains-path@^0.1.0: resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a" integrity sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo= -content-disposition@0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.2.tgz#0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4" - integrity sha1-DPaLud318r55YcOoUXjLhdunjLQ= - content-disposition@0.5.3: version "0.5.3" resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.3.tgz#e130caf7e7279087c5616c2007d0485698984fbd" @@ -2671,11 +2718,6 @@ cookie-signature@1.0.6: resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" integrity sha1-4wOogrNCzD7oylE6eZmXNNqzriw= -cookie@0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb" - integrity sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s= - cookie@0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.0.tgz#beb437e7022b3b6d49019d088665303ebe9c14ba" @@ -2750,7 +2792,7 @@ cosmiconfig@^5.0.0: js-yaml "^3.13.1" parse-json "^4.0.0" -coveralls@^3.0.4: +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== @@ -2863,22 +2905,23 @@ css-declaration-sorter@^4.0.1: postcss "^7.0.1" timsort "^0.3.0" -css-loader@2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-2.1.1.tgz#d8254f72e412bb2238bb44dd674ffbef497333ea" - integrity sha512-OcKJU/lt232vl1P9EEDamhoO9iKY3tIjY5GU+XDLblAykTdgs6Ux9P1hTHve8nFKy5KPpOXOsVI/hIwi3841+w== +css-loader@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-3.1.0.tgz#6f008b993b8ce812e6bab57f3cbfdc7a7cf28685" + integrity sha512-MuL8WsF/KSrHCBCYaozBKlx+r7vIfUaDTEreo7wR7Vv3J6N0z6fqWjRk3e/6wjneitXN1r/Y9FTK1psYNOBdJQ== dependencies: - camelcase "^5.2.0" - icss-utils "^4.1.0" + camelcase "^5.3.1" + cssesc "^3.0.0" + icss-utils "^4.1.1" loader-utils "^1.2.3" normalize-path "^3.0.0" - postcss "^7.0.14" + postcss "^7.0.17" postcss-modules-extract-imports "^2.0.0" - postcss-modules-local-by-default "^2.0.6" + postcss-modules-local-by-default "^3.0.2" postcss-modules-scope "^2.1.0" - postcss-modules-values "^2.0.0" - postcss-value-parser "^3.3.0" - schema-utils "^1.0.0" + postcss-modules-values "^3.0.0" + postcss-value-parser "^4.0.0" + schema-utils "^2.0.0" css-select-base-adapter@^0.1.1: version "0.1.1" @@ -3278,13 +3321,20 @@ diffie-hellman@^5.0.0: miller-rabin "^4.0.0" randombytes "^2.0.0" -dir-glob@^2.0.0, dir-glob@^2.2.2: +dir-glob@^2.0.0: version "2.2.2" resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.2.2.tgz#fa09f0694153c8918b18ba0deafae94769fc50c4" integrity sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw== dependencies: path-type "^3.0.0" +dir-glob@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" + integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== + dependencies: + path-type "^4.0.0" + dns-equal@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/dns-equal/-/dns-equal-1.0.0.tgz#b39e7f1da6eb0a75ba9c17324b34753c47e0654d" @@ -3678,7 +3728,7 @@ esdoc@^1.1.0: minimist "1.2.0" taffydb "2.7.3" -eslint-config-airbnb-base@^13.1.0: +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== @@ -3711,7 +3761,7 @@ eslint-plugin-es@^1.4.0: eslint-utils "^1.3.0" regexpp "^2.0.1" -eslint-plugin-import@^2.17.3: +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" integrity sha512-5ohpsHAiUBRNaBWAF08izwUGlbrJoJJ+W9/TBwsGoR1MnlgfwMIKrFeSjWbt6moabiXW9xNvtFz+97KHRfI4HQ== @@ -3943,42 +3993,6 @@ expect@^24.8.0: jest-message-util "^24.8.0" jest-regex-util "^24.3.0" -express@4.16.4: - version "4.16.4" - resolved "https://registry.yarnpkg.com/express/-/express-4.16.4.tgz#fddef61926109e24c515ea97fd2f1bdbf62df12e" - integrity sha512-j12Uuyb4FMrd/qQAm6uCHAkPtO8FDTRJZBDd5D2KOL2eLaz1yUNdUB/NOIyq0iU4q4cFarsUCrnFDPBcnksuOg== - dependencies: - accepts "~1.3.5" - array-flatten "1.1.1" - body-parser "1.18.3" - content-disposition "0.5.2" - content-type "~1.0.4" - cookie "0.3.1" - cookie-signature "1.0.6" - debug "2.6.9" - depd "~1.1.2" - encodeurl "~1.0.2" - escape-html "~1.0.3" - etag "~1.8.1" - finalhandler "1.1.1" - fresh "0.5.2" - merge-descriptors "1.0.1" - methods "~1.1.2" - on-finished "~2.3.0" - parseurl "~1.3.2" - path-to-regexp "0.1.7" - proxy-addr "~2.0.4" - qs "6.5.2" - range-parser "~1.2.0" - safe-buffer "5.1.2" - send "0.16.2" - serve-static "1.13.2" - setprototypeof "1.1.0" - statuses "~1.4.0" - type-is "~1.6.16" - utils-merge "1.0.1" - vary "~1.1.2" - express@^4.17.1: version "4.17.1" resolved "https://registry.yarnpkg.com/express/-/express-4.17.1.tgz#4491fc38605cf51f8629d39c2b5d026f98a4c134" @@ -4030,7 +4044,7 @@ extend-shallow@^3.0.0, extend-shallow@^3.0.2: assign-symbols "^1.0.0" is-extendable "^1.0.1" -extend@3.0.2, extend@^3.0.2, extend@~3.0.2: +extend@^3.0.2, extend@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== @@ -4078,17 +4092,17 @@ fast-deep-equal@^2.0.1: resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49" integrity sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk= -fast-glob@^2.2.6: - version "2.2.7" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-2.2.7.tgz#6953857c3afa475fff92ee6015d52da70a4cd39d" - integrity sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw== +fast-glob@^3.0.3: + version "3.0.4" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.0.4.tgz#d484a41005cb6faeb399b951fd1bd70ddaebb602" + integrity sha512-wkIbV6qg37xTJwqSsdnIphL1e+LaGz4AIQqr00mIubMaEhv1/HEmJ0uuCGZRNRUkZZmOB5mJKO0ZUTVq+SxMQg== dependencies: - "@mrmlnc/readdir-enhanced" "^2.2.1" - "@nodelib/fs.stat" "^1.1.2" - glob-parent "^3.1.0" - is-glob "^4.0.0" + "@nodelib/fs.stat" "^2.0.1" + "@nodelib/fs.walk" "^1.2.1" + glob-parent "^5.0.0" + is-glob "^4.0.1" merge2 "^1.2.3" - micromatch "^3.1.10" + micromatch "^4.0.2" fast-json-stable-stringify@^2.0.0: version "2.0.0" @@ -4105,6 +4119,13 @@ fastparse@^1.1.1: resolved "https://registry.yarnpkg.com/fastparse/-/fastparse-1.1.2.tgz#91728c5a5942eced8531283c79441ee4122c35a9" integrity sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ== +fastq@^1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.6.0.tgz#4ec8a38f4ac25f21492673adb7eae9cfef47d1c2" + integrity sha512-jmxqQ3Z/nXoeyDmWAzF9kH1aGZSis6e/SbfPmJpUnyZ0ogr6iscHQaml4wsEepEWSdtmpy+eVXmCRIMpxaXqOA== + dependencies: + reusify "^1.0.0" + faye-websocket@^0.10.0: version "0.10.0" resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4" @@ -4145,13 +4166,13 @@ file-entry-cache@^5.0.1: dependencies: flat-cache "^2.0.1" -file-loader@3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-3.0.1.tgz#f8e0ba0b599918b51adfe45d66d1e771ad560faa" - integrity sha512-4sNIOXgtH/9WZq4NvlfU3Opn5ynUsqBwSLyM+I7UOwdGigTBYfVVQEwe/msZNX/j4pCJTIM14Fsw66Svo1oVrw== +file-loader@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-4.1.0.tgz#3a763391bc9502da7c59612fe348e38fc1980336" + integrity sha512-ajDk1nlByoalZAGR4b0H6oD+EGlWnyW1qbSxzaUc7RFiqmn+RbXQQRbTc72jsiUIlVusJ4Et58ltds8ZwTfnAw== dependencies: - loader-utils "^1.0.2" - schema-utils "^1.0.0" + loader-utils "^1.2.3" + schema-utils "^2.0.0" fill-range@^4.0.0: version "4.0.0" @@ -4163,18 +4184,12 @@ fill-range@^4.0.0: repeat-string "^1.6.1" to-regex-range "^2.1.0" -finalhandler@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.1.tgz#eebf4ed840079c83f4249038c9d703008301b105" - integrity sha512-Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg== +fill-range@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" + integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== dependencies: - debug "2.6.9" - encodeurl "~1.0.2" - escape-html "~1.0.3" - on-finished "~2.3.0" - parseurl "~1.3.2" - statuses "~1.4.0" - unpipe "~1.0.0" + to-regex-range "^5.0.1" finalhandler@~1.1.2: version "1.1.2" @@ -4198,6 +4213,15 @@ find-cache-dir@^2.0.0, find-cache-dir@^2.1.0: make-dir "^2.0.0" pkg-dir "^3.0.0" +find-cache-dir@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.0.0.tgz#cd4b7dd97b7185b7e17dbfe2d6e4115ee3eeb8fc" + integrity sha512-t7ulV1fmbxh5G9l/492O1p5+EBbr3uwpt6odhFTMc+nWyhmbloe+ja9BZ8pIBtqFWhOmCWVjx+pTW4zDkFoclw== + dependencies: + commondir "^1.0.1" + make-dir "^3.0.0" + pkg-dir "^4.1.0" + find-up@^1.0.0: version "1.1.2" resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" @@ -4220,6 +4244,14 @@ find-up@^3.0.0: dependencies: locate-path "^3.0.0" +find-up@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" + integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== + dependencies: + locate-path "^5.0.0" + path-exists "^4.0.0" + findup-sync@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-3.0.0.tgz#17b108f9ee512dfb7a5c7f3c8b27ea9e1a9c08d1" @@ -4333,15 +4365,6 @@ fs-extra@5.0.0: jsonfile "^4.0.0" universalify "^0.1.0" -fs-extra@7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-7.0.1.tgz#4f189c44aa123b895f722804f55ea23eadc348e9" - integrity sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw== - dependencies: - graceful-fs "^4.1.2" - jsonfile "^4.0.0" - universalify "^0.1.0" - fs-extra@^8.0.1, fs-extra@^8.1.0: version "8.1.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" @@ -4479,10 +4502,12 @@ glob-parent@^3.1.0: is-glob "^3.1.0" path-dirname "^1.0.0" -glob-to-regexp@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz#8c5a1494d2066c570cc3bfe4496175acc4d502ab" - integrity sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs= +glob-parent@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.0.0.tgz#1dc99f0f39b006d3e92c2c284068382f0c20e954" + integrity sha512-Z2RwiujPRGluePM6j699ktJYxmPpJKCfpGA13jz2hmFZC7gKetzrWvg5KN3+OsIFmydGyZ1AVwERCq1w/ZZwRg== + dependencies: + is-glob "^4.0.1" glob@7.1.4, glob@^7.0.0, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@~7.1.1: version "7.1.4" @@ -4549,6 +4574,20 @@ 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.1: + version "10.0.1" + resolved "https://registry.yarnpkg.com/globby/-/globby-10.0.1.tgz#4782c34cb75dd683351335c5829cc3420e606b22" + integrity sha512-sSs4inE1FB2YQiymcmTv6NWENryABjUNPeWhOvmn4SjtKybglsyPZxFB3U1/+L1bYi0rNZDqCLlHyLYDl1Pq5A== + dependencies: + "@types/glob" "^7.1.1" + array-union "^2.1.0" + dir-glob "^3.0.1" + fast-glob "^3.0.3" + glob "^7.1.3" + ignore "^5.1.1" + merge2 "^1.2.3" + slash "^3.0.0" + globby@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c" @@ -4572,20 +4611,6 @@ globby@^7.1.1: pify "^3.0.0" slash "^1.0.0" -globby@^9.2.0: - version "9.2.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-9.2.0.tgz#fd029a706c703d29bdd170f4b6db3a3f7a7cb63d" - integrity sha512-ollPHROa5mcxDEkwg6bPt3QbEf4pDQSNtd6JPL1YvOvAo/7/0VAm9TccUeoTmarjPw4pfUthSCqcyfNB1I3ZSg== - dependencies: - "@types/glob" "^7.1.1" - array-union "^1.0.2" - dir-glob "^2.2.2" - fast-glob "^2.2.6" - glob "^7.1.3" - ignore "^4.0.3" - pify "^4.0.1" - slash "^2.0.0" - globule@^1.0.0: version "1.2.1" resolved "https://registry.yarnpkg.com/globule/-/globule-1.2.1.tgz#5dffb1b191f22d20797a9369b49eab4e9839696d" @@ -4865,16 +4890,6 @@ http-deceiver@^1.2.7: resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" integrity sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc= -http-errors@1.6.3, http-errors@~1.6.2, http-errors@~1.6.3: - version "1.6.3" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d" - integrity sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0= - dependencies: - depd "~1.1.2" - inherits "2.0.3" - setprototypeof "1.1.0" - statuses ">= 1.4.0 < 2" - http-errors@1.7.2: version "1.7.2" resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.2.tgz#4f5029cf13239f31036e5b2e55292bcfbcc85c8f" @@ -4886,6 +4901,16 @@ http-errors@1.7.2: statuses ">= 1.5.0 < 2" toidentifier "1.0.0" +http-errors@~1.6.2: + version "1.6.3" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d" + integrity sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0= + dependencies: + depd "~1.1.2" + inherits "2.0.3" + setprototypeof "1.1.0" + statuses ">= 1.4.0 < 2" + http-errors@~1.7.2: version "1.7.3" resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.3.tgz#6c619e4f9c60308c38519498c14fbb10aacebb06" @@ -4948,13 +4973,6 @@ ice-cap@0.0.4: cheerio "0.20.0" color-logger "0.0.3" -iconv-lite@0.4.23: - version "0.4.23" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.23.tgz#297871f63be507adcfbfca715d0cd0eed84e9a63" - integrity sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA== - dependencies: - safer-buffer ">= 2.1.2 < 3" - iconv-lite@0.4.24, iconv-lite@^0.4.24, iconv-lite@^0.4.4: version "0.4.24" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" @@ -4962,12 +4980,7 @@ iconv-lite@0.4.24, iconv-lite@^0.4.24, iconv-lite@^0.4.4: dependencies: safer-buffer ">= 2.1.2 < 3" -icss-replace-symbols@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz#06ea6f83679a7749e386cfe1fe812ae5db223ded" - integrity sha1-Bupvg2ead0njhs/h/oEq5dsiPe0= - -icss-utils@^4.1.0: +icss-utils@^4.0.0, icss-utils@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-4.1.1.tgz#21170b53789ee27447c2f47dd683081403f9a467" integrity sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA== @@ -5001,7 +5014,7 @@ ignore@^3.3.5: resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.10.tgz#0a97fb876986e8081c631160f8f9f389157f0043" integrity sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug== -ignore@^4.0.3, ignore@^4.0.6: +ignore@^4.0.6: version "4.0.6" resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== @@ -5348,6 +5361,11 @@ is-number@^3.0.0: dependencies: kind-of "^3.0.2" +is-number@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== + is-obj@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" @@ -5534,7 +5552,7 @@ istanbul-reports@^2.1.1: dependencies: handlebars "^4.1.2" -jasmine-expect@^4.0.1: +jasmine-expect@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/jasmine-expect/-/jasmine-expect-4.0.2.tgz#a35bc1dd9e03504cfd73a5b0282ce73d103fc5c5" integrity sha512-VpHLwpBE1chVIhiJ7kJHBbdsm2GVvBli5bem4pGqkbiuvIW2mxghPNhYrKyoHBQKVmlq+xLUTGlrWMC/Ovn+2g== @@ -5643,7 +5661,7 @@ jest-environment-node@^24.8.0: jest-mock "^24.8.0" jest-util "^24.8.0" -jest-ex@^6.0.1: +jest-ex@^6.1.1: version "6.1.1" resolved "https://registry.yarnpkg.com/jest-ex/-/jest-ex-6.1.1.tgz#3ce1b9d216ef5d224eeca78da2aba46831354f24" integrity sha512-ZICeQwfxAMaFS15qQYD0zLZXi76KMVtHe2d1m8R5HQIJ3EaqH+lBLcjgnscxFq2dtNLNobpnZm32fM8eVDtHYQ== @@ -5898,25 +5916,24 @@ jest-worker@^24.6.0: merge-stream "^1.0.1" supports-color "^6.1.0" -jimpex@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/jimpex/-/jimpex-3.0.0.tgz#1bc803389c53282c0e97590ea1b13b2af3ce4af3" - integrity sha512-eOAXUlosxy952oA9BNobxH0EzQIX+k0kr+3OQOwqQvZ+H5oh1d0iZbhfIruOZq+ynlhMCKnt0vyot7IJ+Ku5bw== - dependencies: - body-parser "1.18.3" - compression "1.7.3" - express "4.16.4" - extend "3.0.2" - fs-extra "7.0.1" - jimple "1.5.0" - mime "2.4.0" - multer "1.4.1" - node-fetch "2.3.0" - statuses "1.5.0" - urijs "1.19.1" - wootils "^2.0.0" - -jimple@1.5.0, jimple@^1.5.0: +jimpex@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/jimpex/-/jimpex-4.0.1.tgz#0737367f98936556a2767a40f8682355a916646d" + integrity sha512-/LaadzJMIiXHI4NaYXXQ4k87DgJPN6JPtPo4klrVo3F15gMXSMChFG9z2a/+2d6iwaYHcXAI50Reo3nbaJoWmQ== + dependencies: + body-parser "^1.19.0" + compression "^1.7.4" + express "^4.17.1" + fs-extra "^8.1.0" + jimple "^1.5.0" + mime "^2.4.4" + multer "^1.4.1" + node-fetch "^2.6.0" + statuses "^1.5.0" + urijs "^1.19.1" + wootils "^2.4.1" + +jimple@^1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/jimple/-/jimple-1.5.0.tgz#a964bf4862bb2b488ce3830266a4dd8e8ef1213b" integrity sha512-lV8T+LMLvq4qYomJvXtIoL+rwT3tQ2fjq6Bv+vgO0zEtfIw6oXlOmSbHusq5TgR5IKP2avouqWVpGFjbsWlR2Q== @@ -6175,19 +6192,19 @@ lcov-parse@^0.0.10: resolved "https://registry.yarnpkg.com/lcov-parse/-/lcov-parse-0.0.10.tgz#1b0b8ff9ac9c7889250582b70b71315d9da6d9a3" integrity sha1-GwuP+ayceIklBYK3C3ExXZ2m2aM= -leasot@^7.4.0: - version "7.5.0" - resolved "https://registry.yarnpkg.com/leasot/-/leasot-7.5.0.tgz#40d31b94bc7378da71837416f41745bb7532e13b" - integrity sha512-/vFxfV8u6X8BlJzav4ykNSGZDGoGdMYhyad56baCxk1lKIVld4O3z17EeCIKMqErX7ipwO7+H3kFHgjD5AGCHg== +leasot@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/leasot/-/leasot-8.0.0.tgz#04bd7889fbfe04e32c0a9c8e89e3d1ef67ed0470" + integrity sha512-ZZ+oBnXJwhPuembFST1ztqaq0aPFRci0TotuHBxP7CKsUDFAT/injak4+PwdN+uI55gKvge2ydFV8cwhvY6WOw== dependencies: - async "^3.0.1" + async "^3.1.0" chalk "^2.4.2" commander "^2.20.0" eol "^0.9.1" get-stdin "^7.0.0" - globby "^9.2.0" + globby "^10.0.1" json2xml "^0.1.3" - lodash "^4.17.11" + lodash "^4.17.15" log-symbols "^3.0.0" strip-ansi "^5.2.0" text-table "^0.2.0" @@ -6281,6 +6298,13 @@ locate-path@^3.0.0: p-locate "^3.0.0" path-exists "^3.0.0" +locate-path@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" + integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== + dependencies: + p-locate "^4.1.0" + lodash.assignin@^4.0.9: version "4.2.0" resolved "https://registry.yarnpkg.com/lodash.assignin/-/lodash.assignin-4.2.0.tgz#ba8df5fb841eb0a3e8044232b0e263a8dc6a28a2" @@ -6361,7 +6385,7 @@ lodash.uniq@^4.5.0: resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= -lodash@^4.0.0, lodash@^4.1.0, lodash@^4.15.0, lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.13, lodash@^4.17.14, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.2.0, lodash@~4.17.10: +lodash@^4.0.0, lodash@^4.1.0, lodash@^4.15.0, lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.13, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.2.0, lodash@~4.17.10: version "4.17.15" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== @@ -6378,7 +6402,7 @@ log-symbols@^3.0.0: dependencies: chalk "^2.4.2" -loglevel@^1.6.2: +loglevel@^1.6.3: version "1.6.3" resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.6.3.tgz#77f2eb64be55a404c9fd04ad16d57c1d6d6b1280" integrity sha512-LoEDv5pgpvWgPF4kNYuIp0qqSJVWak/dML0RY74xlzMZiT9w77teNAwKYKWBTYjlokMirg+o3jBwp+vlLrcfAA== @@ -6438,6 +6462,13 @@ make-dir@^2.0.0, make-dir@^2.1.0: pify "^4.0.1" semver "^5.6.0" +make-dir@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.0.0.tgz#1b5f39f6b9270ed33f9f054c5c0f84304989f801" + integrity sha512-grNJDhb8b1Jm1qeqW5R/O63wUo4UXo2v2HMic6YT9i/HBlF93S8jkMgH7yugvY9ABDShH4VZMn8I+U8+fCNegw== + dependencies: + semver "^6.0.0" + makeerror@1.0.x: version "1.0.11" resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c" @@ -6577,6 +6608,14 @@ micromatch@^3.0.4, micromatch@^3.1.10, micromatch@^3.1.4, micromatch@^3.1.8: snapdragon "^0.8.1" to-regex "^3.0.2" +micromatch@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.2.tgz#4fcb0999bf9fbc2fcbdd212f6d629b9a56c39259" + integrity sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q== + dependencies: + braces "^3.0.1" + picomatch "^2.0.5" + miller-rabin@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" @@ -6597,22 +6636,12 @@ mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.19, mime-types@~2.1.24: dependencies: mime-db "1.40.0" -mime@1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.1.tgz#121f9ebc49e3766f311a76e1fa1c8003c4b03aa6" - integrity sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ== - mime@1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== -mime@2.4.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/mime/-/mime-2.4.0.tgz#e051fd881358585f3279df333fe694da0bcffdd6" - integrity sha512-ikBcWwyqXQSHKtciCcctu9YfPbFYZ4+gbHEmE0Q8jzcTYQg5dHCr3g2wwAZjPoJfQVXZq6KXAjpXOTf5/cjT7w== - -mime@^2.0.3, mime@^2.4.2: +mime@^2.4.2, mime@^2.4.4: version "2.4.4" resolved "https://registry.yarnpkg.com/mime/-/mime-2.4.4.tgz#bd7b91135fc6b01cde3e9bae33d659b63d8857e5" integrity sha512-LRxmNwziLPT828z+4YkNzloCFC2YM4wrB99k+AV5ZbEyfGNWfG8SO1FUXLmLDBSo89NrJZ4DIWeLjy1CHGhMGA== @@ -6627,10 +6656,10 @@ mimic-fn@^2.0.0: resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== -mini-css-extract-plugin@0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-0.7.0.tgz#5ba8290fbb4179a43dd27cca444ba150bee743a0" - integrity sha512-RQIw6+7utTYn8DBGsf/LpRgZCJMpZt+kuawJ/fju0KiOL6nAaTBNmCJwS7HtwSCXfS47gCkmtBFS7HdsquhdxQ== +mini-css-extract-plugin@0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-0.8.0.tgz#81d41ec4fe58c713a96ad7c723cdb2d0bd4d70e1" + integrity sha512-MNpRGbNA52q6U92i0qbVpQNsgk7LExy41MdAlG84FeytfDOtRIf/mCHdEgG8rpTKOaNKiqUnZdlptF469hxqOw== dependencies: loader-utils "^1.1.0" normalize-url "1.9.1" @@ -6750,10 +6779,10 @@ ms@^2.1.1: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== -multer@1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/multer/-/multer-1.4.1.tgz#24b12a416a22fec2ade810539184bf138720159e" - integrity sha512-zzOLNRxzszwd+61JFuAo0fxdQfvku12aNJgnla0AQ+hHxFmfc/B7jBVuPr5Rmvu46Jze/iJrFpSOsD7afO8SDw== +multer@^1.4.1: + version "1.4.2" + resolved "https://registry.yarnpkg.com/multer/-/multer-1.4.2.tgz#2f1f4d12dbaeeba74cb37e623f234bf4d3d2057a" + integrity sha512-xY8pX7V+ybyUpbYMxtjM9KAiD9ixtg5/JkeKUTD6xilfDv0vzzOFcCp4Ljb1UU3tSOM3VTZtKo63OmzOrGi3Cg== dependencies: append-field "^1.0.0" busboy "^0.2.11" @@ -6855,10 +6884,10 @@ no-case@^2.2.0: dependencies: lower-case "^1.1.1" -node-fetch@2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.3.0.tgz#1a1d940bbfb916a1d3e0219f037e89e71f8c5fa5" - integrity sha512-MOd8pV3fxENbryESLgVIeaGKrdl+uaYhCSSVkjeOb/31/njTpcis5aWfdqgNlHIrKOLRbMnfPINPOML2CIFeXA== +node-fetch@^2.6.0: + version "2.6.0" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.0.tgz#e633456386d4aa55863f676a7ab0daa8fdecb0fd" + integrity sha512-8dG4H5ujfvFiqDmVu9fQ5bOHUC15JMjMY/Zumv26oOvvVJjM67KF8koCWIabKQ1GJIa9r2mMZscBq/TbdOcmNA== node-forge@0.7.5: version "0.7.5" @@ -7199,7 +7228,7 @@ on-finished@^2.3.0, on-finished@~2.3.0: dependencies: ee-first "1.1.1" -on-headers@~1.0.1, on-headers@~1.0.2: +on-headers@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.2.tgz#772b0ae6aaa525c399e489adfad90c403eb3c28f" integrity sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA== @@ -7238,7 +7267,7 @@ optimist@^0.6.1: minimist "~0.0.1" wordwrap "~0.0.2" -optimize-css-assets-webpack-plugin@^5.0.1: +optimize-css-assets-webpack-plugin@^5.0.3: version "5.0.3" resolved "https://registry.yarnpkg.com/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-5.0.3.tgz#e2f1d4d94ad8c0af8967ebd7cf138dcb1ef14572" integrity sha512-q9fbvCRS6EYtUKKSwI87qm2IxlyJK5b4dygW1rKUBT6mMDhdG5e5bZT63v6tnJR9F9FB/H5a0HTmtw+laUBxKA== @@ -7363,6 +7392,13 @@ p-locate@^3.0.0: dependencies: p-limit "^2.0.0" +p-locate@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" + integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== + 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" @@ -7373,6 +7409,13 @@ p-reduce@^1.0.0: resolved "https://registry.yarnpkg.com/p-reduce/-/p-reduce-1.0.0.tgz#18c2b0dd936a4690a529f8231f58a0fdb6a47dfa" integrity sha1-GMKw3ZNqRpClKfgjH1ig/bakffo= +p-retry@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/p-retry/-/p-retry-3.0.1.tgz#316b4c8893e2c8dc1cfa891f406c4b422bebf328" + integrity sha512-XE6G4+YTTkT2a0UWb2kjZe8xNwf8bIbnqpc/IS/idOBVhyves0mK5OJgeocjx7q5pvX/6m23xuzVPYT1uGM73w== + dependencies: + retry "^0.12.0" + p-try@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" @@ -7502,6 +7545,11 @@ path-exists@^3.0.0: resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= +path-exists@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" + integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== + path-is-absolute@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" @@ -7550,6 +7598,11 @@ path-type@^3.0.0: dependencies: pify "^3.0.0" +path-type@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" + integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== + pbkdf2@^3.0.3: version "3.0.17" resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.17.tgz#976c206530617b14ebb32114239f7b09336e93a6" @@ -7566,6 +7619,11 @@ performance-now@^2.1.0: resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= +picomatch@^2.0.5: + version "2.0.7" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.0.7.tgz#514169d8c7cd0bdbeecc8a2609e34a7163de69f6" + integrity sha512-oLHIdio3tZ0qH76NybpeneBhYVj0QFTfXEFTc/B3zKQspYfYYkWYgFsmzo+4kvId/bQRcNkVeguI3y+CD22BtA== + pify@^2.0.0: version "2.3.0" resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" @@ -7614,6 +7672,13 @@ pkg-dir@^3.0.0: dependencies: find-up "^3.0.0" +pkg-dir@^4.1.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" + integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== + dependencies: + find-up "^4.0.0" + pkginfo@0.3.x: version "0.3.1" resolved "https://registry.yarnpkg.com/pkginfo/-/pkginfo-0.3.1.tgz#5b29f6a81f70717142e09e765bbeab97b4f81e21" @@ -7769,14 +7834,15 @@ postcss-modules-extract-imports@^2.0.0: dependencies: postcss "^7.0.5" -postcss-modules-local-by-default@^2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-2.0.6.tgz#dd9953f6dd476b5fd1ef2d8830c8929760b56e63" - integrity sha512-oLUV5YNkeIBa0yQl7EYnxMgy4N6noxmiwZStaEJUSe2xPMcdNc8WmBQuQCx18H5psYbVxz8zoHk0RAAYZXP9gA== +postcss-modules-local-by-default@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.2.tgz#e8a6561be914aaf3c052876377524ca90dbb7915" + integrity sha512-jM/V8eqM4oJ/22j0gx4jrp63GSvDH6v86OqyTHHUvk4/k1vceipZsaymiZ5PvocqZOl5SFHiFJqjs3la0wnfIQ== dependencies: - postcss "^7.0.6" - postcss-selector-parser "^6.0.0" - postcss-value-parser "^3.3.1" + icss-utils "^4.1.1" + postcss "^7.0.16" + postcss-selector-parser "^6.0.2" + postcss-value-parser "^4.0.0" postcss-modules-scope@^2.1.0: version "2.1.0" @@ -7786,12 +7852,12 @@ postcss-modules-scope@^2.1.0: postcss "^7.0.6" postcss-selector-parser "^6.0.0" -postcss-modules-values@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-2.0.0.tgz#479b46dc0c5ca3dc7fa5270851836b9ec7152f64" - integrity sha512-Ki7JZa7ff1N3EIMlPnGTZfUMe69FFwiQPnVSXC9mnn3jozCRBYIxiZd44yJOV2AmabOo4qFf8s0dC/+lweG7+w== +postcss-modules-values@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz#5b5000d6ebae29b4255301b4a3a54574423e7f10" + integrity sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg== dependencies: - icss-replace-symbols "^1.1.0" + icss-utils "^4.0.0" postcss "^7.0.6" postcss-normalize-charset@^4.0.1: @@ -7922,7 +7988,7 @@ postcss-selector-parser@^5.0.0-rc.4: indexes-of "^1.0.1" uniq "^1.0.1" -postcss-selector-parser@^6.0.0: +postcss-selector-parser@^6.0.0, postcss-selector-parser@^6.0.2: version "6.0.2" resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz#934cf799d016c83411859e09dcecade01286ec5c" integrity sha512-36P2QR59jDTOAiIkqEprfJDsoNrvwFei3eCqKd1Y0tUsBimsq39BLp7RD+JWny3WgB1zGhJX8XVePwm9k4wdBg== @@ -7950,11 +8016,16 @@ postcss-unique-selectors@^4.0.1: postcss "^7.0.0" uniqs "^2.0.0" -postcss-value-parser@^3.0.0, postcss-value-parser@^3.3.0, postcss-value-parser@^3.3.1: +postcss-value-parser@^3.0.0, postcss-value-parser@^3.3.1: version "3.3.1" resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz#9ff822547e2893213cf1c30efa51ac5fd1ba8281" integrity sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ== +postcss-value-parser@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.0.0.tgz#99a983d365f7b2ad8d0f9b8c3094926eab4b936d" + integrity sha512-ESPktioptiSUchCKgggAkzdmkgzKfmp0EU8jXH+5kbIUB+unr0Y4CY9SRMvibuvYUBjNh1ACLbxqYNpdTQOteQ== + postcss@7.0.14: version "7.0.14" resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.14.tgz#4527ed6b1ca0d82c53ce5ec1a2041c2346bbd6e5" @@ -7964,7 +8035,7 @@ postcss@7.0.14: source-map "^0.6.1" supports-color "^6.1.0" -postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.5, postcss@^7.0.6: +postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.16, postcss@^7.0.17, postcss@^7.0.5, postcss@^7.0.6: version "7.0.17" resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.17.tgz#4da1bdff5322d4a0acaab4d87f3e782436bad31f" integrity sha512-546ZowA+KZ3OasvQZHsbuEpysvwTZNGJv9EfyCQdsIDltPSWHAeTQ5fQy/Npi2ZDtLI3zs7Ps/p6wThErhm9fQ== @@ -8075,7 +8146,7 @@ prompts@^2.0.1: kleur "^3.0.2" sisteransi "^1.0.0" -proxy-addr@~2.0.4, proxy-addr@~2.0.5: +proxy-addr@~2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.5.tgz#34cbd64a2d81f4b1fd21e76f9f06c8a45299ee34" integrity sha512-t/7RxHXPH6cJtP0pRG6smSr9QJidhB+3kXu0KgXnbGYMgzEnUxRQ4/LDdfOwZEMyIh3/xHb8PX3t+lfL9z+YVQ== @@ -8160,16 +8231,16 @@ q@^1.1.2: resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= -qs@6.5.2, qs@~6.5.2: - version "6.5.2" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" - integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== - qs@6.7.0: version "6.7.0" resolved "https://registry.yarnpkg.com/qs/-/qs-6.7.0.tgz#41dc1a015e3d581f1621776be31afb2876a9b1bc" integrity sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ== +qs@~6.5.2: + version "6.5.2" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" + integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== + query-string@^4.1.0: version "4.3.4" resolved "https://registry.yarnpkg.com/query-string/-/query-string-4.3.4.tgz#bbb693b9ca915c232515b228b1a02b609043dbeb" @@ -8208,21 +8279,11 @@ randomfill@^1.0.3: randombytes "^2.0.5" safe-buffer "^5.1.0" -range-parser@^1.2.1, range-parser@~1.2.0, range-parser@~1.2.1: +range-parser@^1.2.1, range-parser@~1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== -raw-body@2.3.3: - version "2.3.3" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.3.3.tgz#1b324ece6b5706e153855bc1148c65bb7f6ea0c3" - integrity sha512-9esiElv1BrZoI3rCDuOuKCBRbuApGGaDPQfjSflGxdy4oyzqghxu6klEkkVIvBje+FF0BX9coEv8KqW6X/7njw== - dependencies: - bytes "3.0.0" - http-errors "1.6.3" - iconv-lite "0.4.23" - unpipe "1.0.0" - raw-body@2.4.0: version "2.4.0" resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.4.0.tgz#a1ce6fb9c9bc356ca52e89256ab59059e13d0332" @@ -8233,13 +8294,13 @@ raw-body@2.4.0: iconv-lite "0.4.24" unpipe "1.0.0" -raw-loader@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/raw-loader/-/raw-loader-2.0.0.tgz#e2813d9e1e3f80d1bbade5ad082e809679e20c26" - integrity sha512-kZnO5MoIyrojfrPWqrhFNLZemIAX8edMOCp++yC5RKxzFB3m92DqKNhKlU6+FvpOhWtvyh3jOaD7J6/9tpdIKg== +raw-loader@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/raw-loader/-/raw-loader-3.1.0.tgz#5e9d399a5a222cc0de18f42c3bc5e49677532b3f" + integrity sha512-lzUVMuJ06HF4rYveaz9Tv0WRlUMxJ0Y1hgSkkgg+50iEdaI0TthyEDe08KIHb0XsF6rn8WYTqPCaGTZg3sX+qA== dependencies: loader-utils "^1.1.0" - schema-utils "^1.0.0" + schema-utils "^2.0.1" rc@^1.0.1, rc@^1.1.6, rc@^1.2.7: version "1.2.8" @@ -8666,6 +8727,16 @@ ret@~0.1.10: resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== +retry@^0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" + integrity sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs= + +reusify@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" + integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== + revalidator@0.1.x: version "0.1.8" resolved "https://registry.yarnpkg.com/revalidator/-/revalidator-0.1.8.tgz#fece61bfa0c1b52a206bd6b18198184bdd523a3b" @@ -8721,6 +8792,11 @@ run-async@^2.2.0: dependencies: is-promise "^2.1.0" +run-parallel@^1.1.9: + version "1.1.9" + resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.1.9.tgz#c9dd3a7cf9f4b2c4b6244e173a6ed866e61dd679" + integrity sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q== + run-queue@^1.0.0, run-queue@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47" @@ -8808,7 +8884,15 @@ schema-utils@^1.0.0: ajv-errors "^1.0.0" ajv-keywords "^3.1.0" -script-ext-html-webpack-plugin@^2.1.3: +schema-utils@^2.0.0, schema-utils@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.0.1.tgz#1eec2e059556af841b7f3a83b61af13d7a3f9196" + integrity sha512-HJFKJ4JixDpRur06QHwi8uu2kZbng318ahWEKgBjc0ZklcE4FDvmm2wghb448q0IRaABxIESt8vqPFvwgMB80A== + dependencies: + ajv "^6.1.0" + ajv-keywords "^3.1.0" + +script-ext-html-webpack-plugin@^2.1.4: version "2.1.4" resolved "https://registry.yarnpkg.com/script-ext-html-webpack-plugin/-/script-ext-html-webpack-plugin-2.1.4.tgz#7c309354e310bf78523e1b84ca96fd374ceb9880" integrity sha512-7MAv3paAMfh9y2Rg+yQKp9jEGC5cEcmdge4EomRqri10qoczmliYEVPVNz0/5e9QQ202e05qDll9B8zZlY9N1g== @@ -8857,25 +8941,6 @@ semver@~5.3.0: resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" integrity sha1-myzl094C0XxgEq0yaqa00M9U+U8= -send@0.16.2: - version "0.16.2" - resolved "https://registry.yarnpkg.com/send/-/send-0.16.2.tgz#6ecca1e0f8c156d141597559848df64730a6bbc1" - integrity sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw== - dependencies: - debug "2.6.9" - depd "~1.1.2" - destroy "~1.0.4" - encodeurl "~1.0.2" - escape-html "~1.0.3" - etag "~1.8.1" - fresh "0.5.2" - http-errors "~1.6.2" - mime "1.4.1" - ms "2.0.0" - on-finished "~2.3.0" - range-parser "~1.2.0" - statuses "~1.4.0" - send@0.17.1: version "0.17.1" resolved "https://registry.yarnpkg.com/send/-/send-0.17.1.tgz#c1d8b059f7900f7466dd4938bdc44e11ddb376c8" @@ -8913,16 +8978,6 @@ serve-index@^1.9.1: mime-types "~2.1.17" parseurl "~1.3.2" -serve-static@1.13.2: - version "1.13.2" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.13.2.tgz#095e8472fd5b46237db50ce486a43f4b86c6cec1" - integrity sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw== - dependencies: - encodeurl "~1.0.2" - escape-html "~1.0.3" - parseurl "~1.3.2" - send "0.16.2" - serve-static@1.14.1: version "1.14.1" resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.14.1.tgz#666e636dc4f010f7ef29970a88a674320898b2f9" @@ -9033,6 +9088,11 @@ slash@^2.0.0: resolved "https://registry.yarnpkg.com/slash/-/slash-2.0.0.tgz#de552851a1759df3a8f206535442f5ec4ddeab44" integrity sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A== +slash@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" + integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== + slice-ansi@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.1.0.tgz#cacd7693461a637a5788d92a7dd4fba068e81636" @@ -9123,7 +9183,7 @@ source-map-resolve@^0.5.0, source-map-resolve@^0.5.2: source-map-url "^0.4.0" urix "^0.1.0" -source-map-support@^0.5.6, source-map-support@~0.5.10, source-map-support@~0.5.12: +source-map-support@^0.5.6, source-map-support@~0.5.12: version "0.5.12" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.12.tgz#b4f3b10d51857a5af0138d3ce8003b201613d599" integrity sha512-4h2Pbvyy15EE02G+JOZpUCmqWJuqrs+sEkzewTm++BPi7Hvn/HwcqLAcNxYAyI0x13CpPPn+kMjl+hplXMHITQ== @@ -9259,16 +9319,11 @@ static-extend@^0.1.1: define-property "^0.2.5" object-copy "^0.1.0" -statuses@1.5.0, "statuses@>= 1.4.0 < 2", "statuses@>= 1.5.0 < 2", statuses@^1.5.0, statuses@~1.5.0: +"statuses@>= 1.4.0 < 2", "statuses@>= 1.5.0 < 2", statuses@^1.5.0, statuses@~1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= -statuses@~1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.4.0.tgz#bb73d446da2796106efcc1b601a253d6c46bd087" - integrity sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew== - stdout-stream@^1.4.0: version "1.4.1" resolved "https://registry.yarnpkg.com/stdout-stream/-/stdout-stream-1.4.1.tgz#5ac174cdd5cd726104aa0c0b2bd83815d8d535de" @@ -9540,7 +9595,7 @@ term-size@^1.2.0: dependencies: execa "^0.7.0" -terser-webpack-plugin@1.3.0, terser-webpack-plugin@^1.1.0: +terser-webpack-plugin@^1.1.0, terser-webpack-plugin@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.3.0.tgz#69aa22426299f4b5b3775cbed8cb2c5d419aa1d4" integrity sha512-W2YWmxPjjkUcOWa4pBEv4OP4er1aeQJlSo2UhtCFQCuRXEHjOFscO8VyWHj9JLlA0RzQb8Y2/Ta78XZvT54uGg== @@ -9556,16 +9611,7 @@ terser-webpack-plugin@1.3.0, terser-webpack-plugin@^1.1.0: webpack-sources "^1.3.0" worker-farm "^1.7.0" -terser@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/terser/-/terser-4.0.0.tgz#ef356f6f359a963e2cc675517f21c1c382877374" - integrity sha512-dOapGTU0hETFl1tCo4t56FN+2jffoKyER9qBGoUFyZ6y7WLoKT0bF+lAYi6B6YsILcGF3q1C2FBh8QcKSCgkgA== - dependencies: - commander "^2.19.0" - source-map "~0.6.1" - source-map-support "~0.5.10" - -terser@^4.0.0: +terser@^4.0.0, terser@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/terser/-/terser-4.1.2.tgz#b2656c8a506f7ce805a3f300a2ff48db022fa391" integrity sha512-jvNoEQSPXJdssFwqPSgWjsOrb+ELoE+ILpHPKXC83tIxOlh2U75F1KuB2luLD/3a6/7K3Vw5pDn+hvu0C4AzSw== @@ -9671,6 +9717,13 @@ to-regex-range@^2.1.0: is-number "^3.0.0" repeat-string "^1.6.1" +to-regex-range@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== + dependencies: + is-number "^7.0.0" + to-regex@^3.0.1, to-regex@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" @@ -9772,7 +9825,7 @@ type-check@~0.3.2: dependencies: prelude-ls "~1.1.2" -type-is@^1.6.4, type-is@~1.6.16, type-is@~1.6.17, type-is@~1.6.18: +type-is@^1.6.4, type-is@~1.6.17, type-is@~1.6.18: version "1.6.18" resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== @@ -9938,7 +9991,7 @@ uri-js@^4.2.2: dependencies: punycode "^2.1.0" -urijs@1.19.1, urijs@^1.19.1: +urijs@^1.19.1: version "1.19.1" resolved "https://registry.yarnpkg.com/urijs/-/urijs-1.19.1.tgz#5b0ff530c0cbde8386f6342235ba5ca6e995d25a" integrity sha512-xVrGVi94ueCJNrBSTjWqjvtgvl3cyOTThp2zaMaFNGp3F542TR6sM3f2o8RqZl+AwteClSVmoCyt0ka4RjQOQg== @@ -9948,14 +10001,14 @@ urix@^0.1.0: resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= -url-loader@1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-1.1.2.tgz#b971d191b83af693c5e3fea4064be9e1f2d7f8d8" - integrity sha512-dXHkKmw8FhPqu8asTc1puBfe3TehOCo2+RmOOev5suNCIYBcT626kxiWg1NBVkwc4rO8BGa7gP70W7VXuqHrjg== +url-loader@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-2.1.0.tgz#bcc1ecabbd197e913eca23f5e0378e24b4412961" + integrity sha512-kVrp/8VfEm5fUt+fl2E0FQyrpmOYgMEkBsv8+UDP1wFhszECq5JyGF33I7cajlVY90zRZ6MyfgKXngLvHYZX8A== dependencies: - loader-utils "^1.1.0" - mime "^2.0.3" - schema-utils "^1.0.0" + loader-utils "^1.2.3" + mime "^2.4.4" + schema-utils "^2.0.0" url-parse-lax@^1.0.0: version "1.0.0" @@ -10116,7 +10169,7 @@ webidl-conversions@^4.0.2: resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" integrity sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg== -webpack-cli@^3.3.4: +webpack-cli@^3.3.6: version "3.3.6" resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-3.3.6.tgz#2c8c399a2642133f8d736a359007a052e060032c" integrity sha512-0vEa83M7kJtxK/jUhlpZ27WHIOndz5mghWL2O53kiDoA9DIxSKnfqB92LoqEn77cT4f3H2cZm1BMEat/6AZz3A== @@ -10143,10 +10196,10 @@ webpack-dev-middleware@^3.7.0: range-parser "^1.2.1" webpack-log "^2.0.0" -webpack-dev-server@3.5.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-3.5.0.tgz#f1bca520526181e11cd6a643f3233bc10c693c29" - integrity sha512-Gr4tBz+BRliDy1Jh9YJBOuwf13CipVxf4PCH7alB/rV/heszJ/U8M7KYekzlQn8XvoGgyozw7Uef2GDFd0ZLvg== +webpack-dev-server@^3.7.2: + version "3.7.2" + resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-3.7.2.tgz#f79caa5974b7f8b63268ef5421222a8486d792f5" + integrity sha512-mjWtrKJW2T9SsjJ4/dxDC2fkFVUw8jlpemDERqV0ZJIkjjjamR2AbQlr3oz+j4JLhYCHImHnXZK5H06P2wvUew== dependencies: ansi-html "0.0.7" bonjour "^3.5.0" @@ -10162,8 +10215,9 @@ webpack-dev-server@3.5.0: internal-ip "^4.3.0" ip "^1.1.5" killable "^1.0.1" - loglevel "^1.6.2" + loglevel "^1.6.3" opn "^5.5.0" + p-retry "^3.0.1" portfinder "^1.0.20" schema-utils "^1.0.0" selfsigned "^1.10.4" @@ -10205,7 +10259,7 @@ webpack-sources@^1.0.1, webpack-sources@^1.1.0, webpack-sources@^1.3.0: source-list-map "^2.0.0" source-map "~0.6.1" -webpack@^4.34.0: +webpack@^4.36.1: version "4.36.1" resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.36.1.tgz#f546fda7a403a76faeaaa7196c50d12370ed18a9" integrity sha512-Ej01/N9W8DVyhEpeQnbUdGvOECw0L46FxS12cCOs8gSK7bhUlrbHRnWkjiXckGlHjUrmL89kDpTRIkUk6Y+fKg== @@ -10329,7 +10383,7 @@ winston@2.1.x: pkginfo "0.3.x" stack-trace "0.0.x" -wootils@^2.0.0, wootils@^2.3.0: +wootils@^2.3.0, wootils@^2.4.1, wootils@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/wootils/-/wootils-2.5.0.tgz#597813ce496e4afe3a335f182002fd6581cbc674" integrity sha512-lV8U2jXe2V73zpDvOEjqdLbvrym3USGh49oy2flVQAVREmLwotbLlMNX10IgIoICwJfs8+r2REo5uupN4safww== From e620f594ba081dae5ab0c74ac84ea8daecd9a1ab Mon Sep 17 00:00:00 2001 From: homer0 Date: Sat, 20 Jul 2019 07:03:06 -0300 Subject: [PATCH 03/24] chore(project): install projext dev version --- package.json | 2 +- yarn.lock | 222 +++++++++++++++++---------------------------------- 2 files changed, 73 insertions(+), 151 deletions(-) diff --git a/package.json b/package.json index 0c71b76..99897f1 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,7 @@ "author": "Leonardo Apiwan (@homer0) ", "license": "MIT", "dependencies": { - "projext": "^6.0.6", + "projext": "7.0.0-alpha.1", "wootils": "^2.5.0", "jimple": "^1.5.0", "fs-extra": "^8.1.0", diff --git a/yarn.lock b/yarn.lock index 863eb61..3923c05 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,16 +2,16 @@ # yarn lockfile v1 -"@babel/cli@7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/cli/-/cli-7.4.4.tgz#5454bb7112f29026a4069d8e6f0e1794e651966c" - integrity sha512-XGr5YjQSjgTa6OzQZY57FAJsdeVSAKR/u/KA5exWIz66IKtv/zXtHy+fIZcMry/EgYegwuHE7vzGnrFhjdIAsQ== +"@babel/cli@7.5.5": + version "7.5.5" + resolved "http://local.npm/@babel%2fcli/-/cli-7.5.5.tgz#bdb6d9169e93e241a08f5f7b0265195bf38ef5ec" + integrity sha512-UHI+7pHv/tk9g6WXQKYz+kmXTI77YtuY3vqC59KIqcoWEjsJJSG6rAxKaLsgj3LDyadsPrCB929gVOKM6Hui0w== dependencies: commander "^2.8.1" convert-source-map "^1.1.0" fs-readdir-recursive "^1.1.0" glob "^7.0.0" - lodash "^4.17.11" + lodash "^4.17.13" mkdirp "^0.5.1" output-file-sync "^2.0.0" slash "^2.0.0" @@ -26,26 +26,6 @@ dependencies: "@babel/highlight" "^7.0.0" -"@babel/core@7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.4.4.tgz#84055750b05fcd50f9915a826b44fa347a825250" - integrity sha512-lQgGX3FPRgbz2SKmhMtYgJvVzGZrmjaF4apZ2bLwofAKiSjxU0drPh4S/VasyYXwaTs+A1gvQ45BN8SQJzHsQQ== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/generator" "^7.4.4" - "@babel/helpers" "^7.4.4" - "@babel/parser" "^7.4.4" - "@babel/template" "^7.4.4" - "@babel/traverse" "^7.4.4" - "@babel/types" "^7.4.4" - convert-source-map "^1.1.0" - debug "^4.1.0" - json5 "^2.1.0" - lodash "^4.17.11" - resolve "^1.3.2" - semver "^5.4.1" - source-map "^0.5.0" - "@babel/core@7.5.4": version "7.5.4" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.5.4.tgz#4c32df7ad5a58e9ea27ad025c11276324e0b4ddd" @@ -86,7 +66,7 @@ semver "^5.4.1" source-map "^0.5.0" -"@babel/generator@^7.4.0", "@babel/generator@^7.4.4", "@babel/generator@^7.5.0", "@babel/generator@^7.5.5": +"@babel/generator@^7.4.0", "@babel/generator@^7.5.0", "@babel/generator@^7.5.5": version "7.5.5" resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.5.5.tgz#873a7f936a3c89491b43536d12245b626664e3cf" integrity sha512-ETI/4vyTSxTzGnU2c49XHv2zhExkv9JHLTwDAFz85kmcwuShvYG2H08FwgIguQf4JC75CBnXAUM5PqeF4fj0nQ== @@ -264,7 +244,7 @@ "@babel/traverse" "^7.1.0" "@babel/types" "^7.2.0" -"@babel/helpers@^7.4.4", "@babel/helpers@^7.5.4", "@babel/helpers@^7.5.5": +"@babel/helpers@^7.5.4", "@babel/helpers@^7.5.5": version "7.5.5" resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.5.5.tgz#63908d2a73942229d1e6685bc2a0e730dde3b75e" integrity sha512-nRq2BUhxZFnfEn/ciJuhklHvFOqjJUD5wpx+1bxUF2axL9C+v4DE/dmp5sT2dKnpOs4orZWzpAZqlCy8QqE/7g== @@ -296,12 +276,12 @@ "@babel/helper-remap-async-to-generator" "^7.1.0" "@babel/plugin-syntax-async-generators" "^7.2.0" -"@babel/plugin-proposal-class-properties@7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.4.4.tgz#93a6486eed86d53452ab9bab35e368e9461198ce" - integrity sha512-WjKTI8g8d5w1Bc9zgwSz2nfrsNQsXcCf9J9cdCvrJV6RF56yztwm4TmJC0MgJ9tvwO9gUA/mcYe89bLdGfiXFg== +"@babel/plugin-proposal-class-properties@7.5.5": + version "7.5.5" + resolved "http://local.npm/@babel%2fplugin-proposal-class-properties/-/plugin-proposal-class-properties-7.5.5.tgz#a974cfae1e37c3110e71f3c6a2e48b8e71958cd4" + integrity sha512-AF79FsnWFxjlaosgdi421vmYG6/jg79bVD0dpD44QdgobzHKuLZ6S3vl8la9qIeSwGi8i1fS0O1mfuDAAdo1/A== dependencies: - "@babel/helper-create-class-features-plugin" "^7.4.4" + "@babel/helper-create-class-features-plugin" "^7.5.5" "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-proposal-decorators@7.4.4": @@ -329,15 +309,7 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-syntax-json-strings" "^7.2.0" -"@babel/plugin-proposal-object-rest-spread@7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.4.4.tgz#1ef173fcf24b3e2df92a678f027673b55e7e3005" - integrity sha512-dMBG6cSPBbHeEBdFXeQ2QLc5gUpg4Vkaz8octD4aoW/ISO+jBOcsuxYL7bsb5WSu8RLP6boxrBIALEHgoHtO9g== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-object-rest-spread" "^7.2.0" - -"@babel/plugin-proposal-object-rest-spread@^7.4.4", "@babel/plugin-proposal-object-rest-spread@^7.5.4", "@babel/plugin-proposal-object-rest-spread@^7.5.5": +"@babel/plugin-proposal-object-rest-spread@7.5.5", "@babel/plugin-proposal-object-rest-spread@^7.5.4", "@babel/plugin-proposal-object-rest-spread@^7.5.5": version "7.5.5" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.5.5.tgz#61939744f71ba76a3ae46b5eea18a54c16d22e58" integrity sha512-F2DxJJSQ7f64FyTVl5cw/9MWn6naXGdk3Q3UhDbFEEHv+EilCPoeRD3Zh/Utx1CJz4uyKlQ4uH+bJPbEhMV7Zw== @@ -425,7 +397,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-async-to-generator@^7.4.4", "@babel/plugin-transform-async-to-generator@^7.5.0": +"@babel/plugin-transform-async-to-generator@^7.5.0": version "7.5.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.5.0.tgz#89a3848a0166623b5bc481164b5936ab947e887e" integrity sha512-mqvkzwIGkq0bEF1zLRRiTdjfomZJDV33AH3oQzHVGkI2VzEmXLpKKOBvEVaFZBJdN0XTyH38s9j/Kiqr68dggg== @@ -470,7 +442,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-destructuring@^7.4.4", "@babel/plugin-transform-destructuring@^7.5.0": +"@babel/plugin-transform-destructuring@^7.5.0": version "7.5.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.5.0.tgz#f6c09fdfe3f94516ff074fe877db7bc9ef05855a" integrity sha512-YbYgbd3TryYYLGyC7ZR+Tq8H/+bCmwoaxHfJHupom5ECstzbRLTch6gOQbhEY9Z4hiCNHEURgq06ykFv9JZ/QQ== @@ -486,7 +458,7 @@ "@babel/helper-regex" "^7.4.4" regexpu-core "^4.5.4" -"@babel/plugin-transform-duplicate-keys@^7.2.0", "@babel/plugin-transform-duplicate-keys@^7.5.0": +"@babel/plugin-transform-duplicate-keys@^7.5.0": version "7.5.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.5.0.tgz#c5dbf5106bf84cdf691222c0974c12b1df931853" integrity sha512-igcziksHizyQPlX9gfSjHkE2wmoCH3evvD2qR5w29/Dk0SMKE/eOI7f1HhBdNhR/zxJDqrgpoDTq5YSLH/XMsQ== @@ -538,7 +510,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-modules-amd@^7.2.0", "@babel/plugin-transform-modules-amd@^7.5.0": +"@babel/plugin-transform-modules-amd@^7.5.0": version "7.5.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.5.0.tgz#ef00435d46da0a5961aa728a1d2ecff063e4fb91" integrity sha512-n20UsQMKnWrltocZZm24cRURxQnWIvsABPJlw/fvoy9c6AgHZzoelAIzajDHAQrDpuKFFPPcFGd7ChsYuIUMpg== @@ -547,7 +519,7 @@ "@babel/helper-plugin-utils" "^7.0.0" babel-plugin-dynamic-import-node "^2.3.0" -"@babel/plugin-transform-modules-commonjs@^7.4.4", "@babel/plugin-transform-modules-commonjs@^7.5.0": +"@babel/plugin-transform-modules-commonjs@^7.5.0": version "7.5.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.5.0.tgz#425127e6045231360858eeaa47a71d75eded7a74" integrity sha512-xmHq0B+ytyrWJvQTc5OWAC4ii6Dhr0s22STOoydokG51JjWhyYo5mRPXoi+ZmtHQhZZwuXNN+GG5jy5UZZJxIQ== @@ -557,7 +529,7 @@ "@babel/helper-simple-access" "^7.1.0" babel-plugin-dynamic-import-node "^2.3.0" -"@babel/plugin-transform-modules-systemjs@^7.4.4", "@babel/plugin-transform-modules-systemjs@^7.5.0": +"@babel/plugin-transform-modules-systemjs@^7.5.0": version "7.5.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.5.0.tgz#e75266a13ef94202db2a0620977756f51d52d249" integrity sha512-Q2m56tyoQWmuNGxEtUyeEkm6qJYFqs4c+XyXH5RAuYxObRNz9Zgj/1g2GMnjYp2EUyEy7YTrxliGCXzecl/vJg== @@ -574,7 +546,7 @@ "@babel/helper-module-transforms" "^7.1.0" "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-named-capturing-groups-regex@^7.4.4", "@babel/plugin-transform-named-capturing-groups-regex@^7.4.5": +"@babel/plugin-transform-named-capturing-groups-regex@^7.4.5": version "7.4.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.4.5.tgz#9d269fd28a370258199b4294736813a60bbdd106" integrity sha512-z7+2IsWafTBbjNsOxU/Iv5CvTJlr5w4+HGu1HovKYTtgJ362f7kBcQglkfmlspKKZ3bgrbSGvLfNx++ZJgCWsg== @@ -612,7 +584,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-regenerator@^7.4.4", "@babel/plugin-transform-regenerator@^7.4.5": +"@babel/plugin-transform-regenerator@^7.4.5": version "7.4.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.4.5.tgz#629dc82512c55cee01341fb27bdfcb210354680f" integrity sha512-gBKRh5qAaCWntnd09S8QC7r3auLCqq5DI6O0DlfoyDjslSBVqBibrMdsqO+Uhmx3+BlOmE/Kw1HFxmGbv0N9dA== @@ -626,16 +598,6 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-runtime@7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.4.4.tgz#a50f5d16e9c3a4ac18a1a9f9803c107c380bce08" - integrity sha512-aMVojEjPszvau3NRg+TIH14ynZLvPewH4xhlCW1w6A3rkxTS1m4uwzRclYR9oS+rl/dr+kT+pzbfHuAWP/lc7Q== - dependencies: - "@babel/helper-module-imports" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - resolve "^1.8.1" - semver "^5.5.1" - "@babel/plugin-transform-runtime@7.5.0": version "7.5.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.5.0.tgz#45242c2c9281158c5f06d25beebac63e498a284e" @@ -711,68 +673,6 @@ "@babel/helper-regex" "^7.4.4" regexpu-core "^4.5.4" -"@babel/polyfill@7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/polyfill/-/polyfill-7.4.4.tgz#78801cf3dbe657844eeabf31c1cae3828051e893" - integrity sha512-WlthFLfhQQhh+A2Gn5NSFl0Huxz36x86Jn+E9OW7ibK8edKPq+KLy4apM1yDpQ8kJOVi1OVjpP4vSDLdrI04dg== - dependencies: - core-js "^2.6.5" - regenerator-runtime "^0.13.2" - -"@babel/preset-env@7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.4.4.tgz#b6f6825bfb27b3e1394ca3de4f926482722c1d6f" - integrity sha512-FU1H+ACWqZZqfw1x2G1tgtSSYSfxJLkpaUQL37CenULFARDo+h4xJoVHzRoHbK+85ViLciuI7ME4WTIhFRBBlw== - dependencies: - "@babel/helper-module-imports" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-proposal-async-generator-functions" "^7.2.0" - "@babel/plugin-proposal-json-strings" "^7.2.0" - "@babel/plugin-proposal-object-rest-spread" "^7.4.4" - "@babel/plugin-proposal-optional-catch-binding" "^7.2.0" - "@babel/plugin-proposal-unicode-property-regex" "^7.4.4" - "@babel/plugin-syntax-async-generators" "^7.2.0" - "@babel/plugin-syntax-json-strings" "^7.2.0" - "@babel/plugin-syntax-object-rest-spread" "^7.2.0" - "@babel/plugin-syntax-optional-catch-binding" "^7.2.0" - "@babel/plugin-transform-arrow-functions" "^7.2.0" - "@babel/plugin-transform-async-to-generator" "^7.4.4" - "@babel/plugin-transform-block-scoped-functions" "^7.2.0" - "@babel/plugin-transform-block-scoping" "^7.4.4" - "@babel/plugin-transform-classes" "^7.4.4" - "@babel/plugin-transform-computed-properties" "^7.2.0" - "@babel/plugin-transform-destructuring" "^7.4.4" - "@babel/plugin-transform-dotall-regex" "^7.4.4" - "@babel/plugin-transform-duplicate-keys" "^7.2.0" - "@babel/plugin-transform-exponentiation-operator" "^7.2.0" - "@babel/plugin-transform-for-of" "^7.4.4" - "@babel/plugin-transform-function-name" "^7.4.4" - "@babel/plugin-transform-literals" "^7.2.0" - "@babel/plugin-transform-member-expression-literals" "^7.2.0" - "@babel/plugin-transform-modules-amd" "^7.2.0" - "@babel/plugin-transform-modules-commonjs" "^7.4.4" - "@babel/plugin-transform-modules-systemjs" "^7.4.4" - "@babel/plugin-transform-modules-umd" "^7.2.0" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.4.4" - "@babel/plugin-transform-new-target" "^7.4.4" - "@babel/plugin-transform-object-super" "^7.2.0" - "@babel/plugin-transform-parameters" "^7.4.4" - "@babel/plugin-transform-property-literals" "^7.2.0" - "@babel/plugin-transform-regenerator" "^7.4.4" - "@babel/plugin-transform-reserved-words" "^7.2.0" - "@babel/plugin-transform-shorthand-properties" "^7.2.0" - "@babel/plugin-transform-spread" "^7.2.0" - "@babel/plugin-transform-sticky-regex" "^7.2.0" - "@babel/plugin-transform-template-literals" "^7.4.4" - "@babel/plugin-transform-typeof-symbol" "^7.2.0" - "@babel/plugin-transform-unicode-regex" "^7.4.4" - "@babel/types" "^7.4.4" - browserslist "^4.5.2" - core-js-compat "^3.0.0" - invariant "^2.2.2" - js-levenshtein "^1.1.3" - semver "^5.5.0" - "@babel/preset-env@7.5.4": version "7.5.4" resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.5.4.tgz#64bc15041a3cbb0798930319917e70fcca57713d" @@ -893,18 +793,18 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-transform-flow-strip-types" "^7.0.0" -"@babel/preset-typescript@^7.3.3": +"@babel/preset-typescript@7.3.3": version "7.3.3" - resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.3.3.tgz#88669911053fa16b2b276ea2ede2ca603b3f307a" + resolved "http://local.npm/@babel%2fpreset-typescript/-/preset-typescript-7.3.3.tgz#88669911053fa16b2b276ea2ede2ca603b3f307a" integrity sha512-mzMVuIP4lqtn4du2ynEfdO0+RYcslwrZiJHXu4MGaC1ctJiW2fyaeDrtjJGs7R/KebZ1sgowcIoWf4uRpEfKEg== dependencies: "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-transform-typescript" "^7.3.2" -"@babel/runtime@7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.4.4.tgz#dc2e34982eb236803aa27a07fea6857af1b9171d" - integrity sha512-w0+uT71b6Yi7i5SE0co4NioIpSYS6lLiXvCzWzGSKvpK5vdQtCbICHMj+gbAKAOtxiV6HsVh/MBdaF9EQ6faSg== +"@babel/runtime@7.5.5": + version "7.5.5" + resolved "http://local.npm/@babel%2fruntime/-/runtime-7.5.5.tgz#74fba56d35efbeca444091c7850ccd494fd2f132" + integrity sha512-28QvEGyQyNkB0/m2B4FU7IEZGK2NUrcMtT6BZEFALTguLk+AUT6ofsHtPk5QyjAdUkpMJ+/Em+quwz4HOt30AQ== dependencies: regenerator-runtime "^0.13.2" @@ -2092,7 +1992,7 @@ browserify-zlib@^0.2.0: dependencies: pako "~1.0.5" -browserslist@^4.0.0, browserslist@^4.5.2, browserslist@^4.6.0, browserslist@^4.6.2: +browserslist@^4.0.0, browserslist@^4.6.0, browserslist@^4.6.2: version "4.6.6" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.6.6.tgz#6e4bf467cde520bc9dbdf3747dafa03531cec453" integrity sha512-D2Nk3W9JL9Fp/gIcWei8LrERCS+eXu9AM5cfXA8WEZ84lFks+ARnZ0q/R69m2SV3Wjma83QDDPxsNKXUwdIsyA== @@ -2758,7 +2658,7 @@ copy-webpack-plugin@^5.0.3: serialize-javascript "^1.7.0" webpack-log "^2.0.0" -core-js-compat@^3.0.0, core-js-compat@^3.1.1: +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== @@ -2772,7 +2672,7 @@ core-js-pure@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== -core-js@^2.4.0, core-js@^2.6.5: +core-js@^2.4.0: version "2.6.9" resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.9.tgz#6b4b214620c834152e179323727fc19741b084f2" integrity sha512-HOpZf6eXmnl7la+cUdMnLvUxKNqLUzJvgIziQ0DiF3JwSImNphIqdGqzj6hIKyX04MmV0poclQ7+wjWvxQyR2A== @@ -3235,6 +3135,17 @@ del@^4.1.1: pify "^4.0.1" rimraf "^2.6.3" +del@^5.0.0: + version "5.0.0" + resolved "http://local.npm/del/-/del-5.0.0.tgz#4fa698b7a1ffb4e2ab3e8929ed699799654d6720" + integrity sha512-TfU3nUY0WDIhN18eq+pgpbLY9AfL5RfiE9czKaTSolc6aK7qASXfDErvYgjV1UqCR4sNXDoxO0/idPmhDUt2Sg== + 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" + delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" @@ -3439,6 +3350,16 @@ dot-prop@^4.1.0, dot-prop@^4.1.1: dependencies: is-obj "^1.0.0" +dotenv-expand@^5.1.0: + version "5.1.0" + resolved "http://local.npm/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 "http://local.npm/dotenv/-/dotenv-8.0.0.tgz#ed310c165b4e8a97bb745b0a9d99c31bda566440" + integrity sha512-30xVGqjLjiUOArT4+M5q9sYdvuR4riM6yK9wMcas9Vbp6zZa+ocC9dp6QoftuhTPhFAiLK/0C5Ni2nou/Bk8lg== + duplexer3@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" @@ -4365,7 +4286,7 @@ fs-extra@5.0.0: jsonfile "^4.0.0" universalify "^0.1.0" -fs-extra@^8.0.1, fs-extra@^8.1.0: +fs-extra@^8.1.0: version "8.1.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" integrity sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g== @@ -4574,9 +4495,9 @@ 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.1: +globby@^10.0.0, globby@^10.0.1: version "10.0.1" - resolved "https://registry.yarnpkg.com/globby/-/globby-10.0.1.tgz#4782c34cb75dd683351335c5829cc3420e606b22" + resolved "http://local.npm/globby/-/globby-10.0.1.tgz#4782c34cb75dd683351335c5829cc3420e606b22" integrity sha512-sSs4inE1FB2YQiymcmTv6NWENryABjUNPeWhOvmn4SjtKybglsyPZxFB3U1/+L1bYi0rNZDqCLlHyLYDl1Pq5A== dependencies: "@types/glob" "^7.1.1" @@ -8092,34 +8013,35 @@ progress@^2.0.0: resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== -projext@^6.0.6: - version "6.0.6" - resolved "https://registry.yarnpkg.com/projext/-/projext-6.0.6.tgz#481716a0e05ffd64ae38b16707b6cbc4bcd8d848" - integrity sha512-+sPbmU32dUW4KJIg5Y1Ug5dOcSgvrkDIbxFzcHOOsGn4nd7uA2GOeh8XCMe8ljqnANXC0mJIpErwgKttoJOwJg== +projext@7.0.0-alpha.1: + version "7.0.0-alpha.1" + resolved "http://local.npm/projext/-/projext-7.0.0-alpha.1.tgz#1a7ecf6fdbfa80c779ac3f25a63d6caf960c7603" + integrity sha512-suapKmWhYg+Rw46prRgghIiSzacAmo2eP10wbfN/ZniGLDRVAAywMt3Vcamyp7oO9TXY9G/OpjFX9N9whwBzEg== dependencies: - "@babel/cli" "7.4.4" - "@babel/core" "7.4.4" - "@babel/plugin-proposal-class-properties" "7.4.4" + "@babel/cli" "7.5.5" + "@babel/core" "7.5.5" + "@babel/plugin-proposal-class-properties" "7.5.5" "@babel/plugin-proposal-decorators" "7.4.4" - "@babel/plugin-proposal-object-rest-spread" "7.4.4" + "@babel/plugin-proposal-object-rest-spread" "7.5.5" "@babel/plugin-syntax-dynamic-import" "7.2.0" - "@babel/plugin-transform-runtime" "7.4.4" - "@babel/polyfill" "7.4.4" - "@babel/preset-env" "7.4.4" + "@babel/plugin-transform-runtime" "7.5.5" + "@babel/preset-env" "7.5.5" "@babel/preset-flow" "7.0.0" - "@babel/preset-typescript" "^7.3.3" - "@babel/runtime" "7.4.4" + "@babel/preset-typescript" "7.3.3" + "@babel/runtime" "7.5.5" commander "^2.20.0" - del "^4.1.1" + del "^5.0.0" + dotenv "^8.0.0" + dotenv-expand "^5.1.0" extend "^3.0.2" - fs-extra "^8.0.1" + fs-extra "^8.1.0" glob "^7.1.4" jimple "^1.5.0" nodemon "^1.19.1" prompt "^1.0.0" shelljs "0.8.3" watchpack "^1.6.0" - wootils "^2.3.0" + wootils "^2.5.0" promise-inflight@^1.0.1: version "1.0.1" @@ -10383,7 +10305,7 @@ winston@2.1.x: pkginfo "0.3.x" stack-trace "0.0.x" -wootils@^2.3.0, wootils@^2.4.1, wootils@^2.5.0: +wootils@^2.4.1, wootils@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/wootils/-/wootils-2.5.0.tgz#597813ce496e4afe3a335f182002fd6581cbc674" integrity sha512-lV8U2jXe2V73zpDvOEjqdLbvrym3USGh49oy2flVQAVREmLwotbLlMNX10IgIoICwJfs8+r2REo5uupN4safww== From 30442e1977feb817e9ea7f8c12225ddaabfe1414 Mon Sep 17 00:00:00 2001 From: homer0 Date: Sat, 20 Jul 2019 07:31:44 -0300 Subject: [PATCH 04/24] refactor(project): use a custom made polyfill for Babel --- package.json | 3 ++ polyfill.js | 3 ++ src/index.js | 1 + src/services/building/configuration.js | 15 ++++-- .../browserDevelopmentConfiguration.js | 5 +- src/typedef.js | 2 + tests/index.test.js | 1 + tests/services/building/configuration.test.js | 47 ++++++++++++++----- .../browserDevelopmentConfiguration.test.js | 21 ++++++--- yarn.lock | 7 ++- 10 files changed, 81 insertions(+), 24 deletions(-) create mode 100644 polyfill.js diff --git a/package.json b/package.json index 99897f1..47d8045 100644 --- a/package.json +++ b/package.json @@ -13,6 +13,9 @@ "fs-extra": "^8.1.0", "extend": "^3.0.2", + "core-js": "^3.1.4", + "regenerator-runtime": "^0.13.3", + "webpack": "^4.36.1", "webpack-cli": "^3.3.6", "webpack-dev-server": "^3.7.2", diff --git a/polyfill.js b/polyfill.js new file mode 100644 index 0000000..08c9171 --- /dev/null +++ b/polyfill.js @@ -0,0 +1,3 @@ +/* eslint-disable */ +import 'core-js/stable'; +import 'regenerator-runtime/runtime'; diff --git a/src/index.js b/src/index.js index 065d84c..e72da53 100644 --- a/src/index.js +++ b/src/index.js @@ -38,6 +38,7 @@ const loadPlugin = (app) => { 'express', 'jimpex', ], + babelPolyfill: 'polyfill.js', })); // Register the main services of the build engine. app.register(webpackConfiguration); diff --git a/src/services/building/configuration.js b/src/services/building/configuration.js index 35b1943..5a7dbbf 100644 --- a/src/services/building/configuration.js +++ b/src/services/building/configuration.js @@ -16,6 +16,8 @@ class WebpackConfiguration { * configuration for the target. * @param {WebpackConfigurations} webpackConfigurations A dictionary of configurations * for target type and build type. + * @param {WebpackPluginInfo} webpackPluginInfo To get the path to the Babel + * polyfill. */ constructor( buildVersion, @@ -23,7 +25,8 @@ class WebpackConfiguration { targets, targetsFileRules, targetConfiguration, - webpackConfigurations + webpackConfigurations, + webpackPluginInfo ) { /** * A local reference for the `buildVersion` service. @@ -55,6 +58,11 @@ class WebpackConfiguration { * @type {WebpackConfigurations} */ this.webpackConfigurations = webpackConfigurations; + /** + * A local reference for the plugin information. + * @type {WebpackPluginInfo} + */ + this.webpackPluginInfo = webpackPluginInfo; } /** * This method generates a complete webpack configuration for a target. @@ -75,7 +83,7 @@ class WebpackConfiguration { const entryFile = path.join(target.paths.source, target.entry[buildType]); const entries = [entryFile]; if (target.babel.polyfill) { - entries.unshift('@babel/polyfill'); + entries.unshift(`${this.webpackPluginInfo.name}/${this.webpackPluginInfo.babelPolyfill}`); } const copy = []; @@ -209,7 +217,8 @@ const webpackConfiguration = provider((app) => { app.get('targets'), app.get('targetsFileRules'), app.get('targetConfiguration'), - webpackConfigurations + webpackConfigurations, + app.get('webpackPluginInfo') ); }); }); diff --git a/src/services/configurations/browserDevelopmentConfiguration.js b/src/services/configurations/browserDevelopmentConfiguration.js index 949f1b6..08f14fe 100644 --- a/src/services/configurations/browserDevelopmentConfiguration.js +++ b/src/services/configurations/browserDevelopmentConfiguration.js @@ -214,8 +214,9 @@ class WebpackBrowserDevelopmentConfiguration extends ConfigurationFile { const [entryName] = Object.keys(entry); // Get the list of entries for the target. const entries = config.entry[entryName]; - // Check if the `babel-polyfill` is present, since it always needs to be first. - const polyfillIndex = entries.indexOf('@babel/polyfill'); + // Check if the Babel polyfill is present, since it always needs to be first. + const polyfillIndex = entries + .indexOf(`${this.webpackPluginInfo.name}/${this.webpackPluginInfo.babelPolyfill}`); // If the `babel-polyfill` is present... if (polyfillIndex > -1) { // ...push all the _"hot entries"_ after it. diff --git a/src/typedef.js b/src/typedef.js index 42fe425..d1988e2 100644 --- a/src/typedef.js +++ b/src/typedef.js @@ -179,6 +179,8 @@ * @property {Array} external The list of subpaths the plugin exposes and that should be * handled as external dependencies, in order to avoid bundling * them. + * @property {string} babelPolyfill The name of the file that imports the required modules to + * act as the old Babel polyfill. */ /** diff --git a/tests/index.test.js b/tests/index.test.js index d57e4de..f71d511 100644 --- a/tests/index.test.js +++ b/tests/index.test.js @@ -31,6 +31,7 @@ describe('plugin:projextWebpack', () => { 'express', 'jimpex', ], + babelPolyfill: 'polyfill.js', }); expect(app.set).toHaveBeenCalledTimes(1); expect(app.set).toHaveBeenCalledWith('webpackPluginInfo', expect.any(Function)); diff --git a/tests/services/building/configuration.test.js b/tests/services/building/configuration.test.js index 6751c0a..bba0bdf 100644 --- a/tests/services/building/configuration.test.js +++ b/tests/services/building/configuration.test.js @@ -25,6 +25,7 @@ describe('services/building:configuration', () => { const targetsFileRules = 'targetsFileRules'; const targetConfiguration = 'targetConfiguration'; const webpackConfigurations = 'webpackConfigurations'; + const webpackPluginInfo = 'webpackPluginInfo'; let sut = null; // When sut = new WebpackConfiguration( @@ -33,7 +34,8 @@ describe('services/building:configuration', () => { targets, targetsFileRules, targetConfiguration, - webpackConfigurations + webpackConfigurations, + webpackPluginInfo ); // Then expect(sut).toBeInstanceOf(WebpackConfiguration); @@ -43,6 +45,7 @@ describe('services/building:configuration', () => { expect(sut.targetsFileRules).toBe(targetsFileRules); expect(sut.targetConfiguration).toBe(targetConfiguration); expect(sut.webpackConfigurations).toBe(webpackConfigurations); + expect(sut.webpackPluginInfo).toBe(webpackPluginInfo); }); it('should throw an error when trying to build a target with an invalid type', () => { @@ -56,6 +59,7 @@ describe('services/building:configuration', () => { type: 'random-type', }; const webpackConfigurations = {}; + const webpackPluginInfo = 'webpackPluginInfo'; let sut = null; // When sut = new WebpackConfiguration( @@ -64,7 +68,8 @@ describe('services/building:configuration', () => { targets, targetsFileRules, targetConfiguration, - webpackConfigurations + webpackConfigurations, + webpackPluginInfo ); // Then expect(() => sut.getConfig(target)) @@ -85,6 +90,7 @@ describe('services/building:configuration', () => { const webpackConfigurations = { node: {}, }; + const webpackPluginInfo = 'webpackPluginInfo'; let sut = null; // When sut = new WebpackConfiguration( @@ -93,7 +99,8 @@ describe('services/building:configuration', () => { targets, targetsFileRules, targetConfiguration, - webpackConfigurations + webpackConfigurations, + webpackPluginInfo ); // Then expect(() => sut.getConfig(target, buildType)) @@ -155,6 +162,7 @@ describe('services/building:configuration', () => { [buildType]: {}, }, }; + const webpackPluginInfo = 'webpackPluginInfo'; let sut = null; let result = null; // When @@ -164,7 +172,8 @@ describe('services/building:configuration', () => { targets, targetsFileRules, targetConfiguration, - webpackConfigurations + webpackConfigurations, + webpackPluginInfo ); result = sut.getConfig(target, buildType); // Then @@ -262,6 +271,7 @@ describe('services/building:configuration', () => { [buildType]: {}, }, }; + const webpackPluginInfo = 'webpackPluginInfo'; let sut = null; let result = null; // When @@ -271,7 +281,8 @@ describe('services/building:configuration', () => { targets, targetsFileRules, targetConfiguration, - webpackConfigurations + webpackConfigurations, + webpackPluginInfo ); result = sut.getConfig(target, buildType); // Then @@ -373,6 +384,7 @@ describe('services/building:configuration', () => { [buildType]: {}, }, }; + const webpackPluginInfo = 'webpackPluginInfo'; let sut = null; let result = null; // When @@ -382,7 +394,8 @@ describe('services/building:configuration', () => { targets, targetsFileRules, targetConfiguration, - webpackConfigurations + webpackConfigurations, + webpackPluginInfo ); result = sut.getConfig(target, buildType); // Then @@ -481,6 +494,7 @@ describe('services/building:configuration', () => { [buildType]: {}, }, }; + const webpackPluginInfo = 'webpackPluginInfo'; let sut = null; let result = null; // When @@ -490,7 +504,8 @@ describe('services/building:configuration', () => { targets, targetsFileRules, targetConfiguration, - webpackConfigurations + webpackConfigurations, + webpackPluginInfo ); result = sut.getConfig(target, buildType); // Then @@ -589,6 +604,10 @@ describe('services/building:configuration', () => { [buildType]: {}, }, }; + const webpackPluginInfo = { + name: 'plugin', + babelPolyfill: 'da-polyfill.js', + }; let sut = null; let result = null; // When @@ -598,7 +617,8 @@ describe('services/building:configuration', () => { targets, targetsFileRules, targetConfiguration, - webpackConfigurations + webpackConfigurations, + webpackPluginInfo ); result = sut.getConfig(target, buildType); // Then @@ -620,7 +640,7 @@ describe('services/building:configuration', () => { buildType, entry: { [target.name]: [ - '@babel/polyfill', + `${webpackPluginInfo.name}/${webpackPluginInfo.babelPolyfill}`, path.join(target.paths.source, target.entry[buildType]), ], }, @@ -694,6 +714,7 @@ describe('services/building:configuration', () => { [buildType]: {}, }, }; + const webpackPluginInfo = 'webpackPluginInfo'; const expectedConfig = { output: { path: 'some-output-path', @@ -709,7 +730,8 @@ describe('services/building:configuration', () => { targets, targetsFileRules, targetConfiguration, - webpackConfigurations + webpackConfigurations, + webpackPluginInfo ); result = sut.getConfig(target, buildType); // Then @@ -804,6 +826,7 @@ describe('services/building:configuration', () => { [buildType]: {}, }, }; + const webpackPluginInfo = 'webpackPluginInfo'; const expectedConfig = { output: { path: 'some-output-path', @@ -819,7 +842,8 @@ describe('services/building:configuration', () => { targets, targetsFileRules, targetConfiguration, - webpackConfigurations + webpackConfigurations, + webpackPluginInfo ); result = sut.getConfig(target, buildType); // Then @@ -889,5 +913,6 @@ describe('services/building:configuration', () => { production: 'webpackBrowserProductionConfiguration', }, }); + expect(sut.webpackPluginInfo).toBe('webpackPluginInfo'); }); }); diff --git a/tests/services/configurations/browserDevelopmentConfiguration.test.js b/tests/services/configurations/browserDevelopmentConfiguration.test.js index 8841e6a..d3b9e5f 100644 --- a/tests/services/configurations/browserDevelopmentConfiguration.test.js +++ b/tests/services/configurations/browserDevelopmentConfiguration.test.js @@ -530,6 +530,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { const webpackBaseConfiguration = 'webpackBaseConfiguration'; const webpackPluginInfo = { name: 'my-plugin', + babelPolyfill: 'polyfill.js', }; const target = { name: 'targetName', @@ -558,7 +559,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { }, }; const definitions = 'definitions'; - const babelPolyfillEntry = '@babel/polyfill'; + const babelPolyfillEntry = `${webpackPluginInfo.name}/${webpackPluginInfo.babelPolyfill}`; const targetEntry = 'index.js'; const entry = { [target.name]: [ @@ -674,6 +675,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { const webpackBaseConfiguration = 'webpackBaseConfiguration'; const webpackPluginInfo = { name: 'my-plugin', + babelPolyfill: 'polyfill.js', }; const target = { name: 'targetName', @@ -703,7 +705,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { }, }; const definitions = 'definitions'; - const babelPolyfillEntry = '@babel/polyfill'; + const babelPolyfillEntry = `${webpackPluginInfo.name}/${webpackPluginInfo.babelPolyfill}`; const targetEntry = 'index.js'; const entry = { [target.name]: [ @@ -822,6 +824,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { const webpackBaseConfiguration = 'webpackBaseConfiguration'; const webpackPluginInfo = { name: 'my-plugin', + babelPolyfill: 'polyfill.js', }; const target = { name: 'targetName', @@ -852,7 +855,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { }, }; const definitions = 'definitions'; - const babelPolyfillEntry = '@babel/polyfill'; + const babelPolyfillEntry = `${webpackPluginInfo.name}/${webpackPluginInfo.babelPolyfill}`; const targetEntry = 'index.js'; const entry = { [target.name]: [ @@ -967,6 +970,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { const webpackBaseConfiguration = 'webpackBaseConfiguration'; const webpackPluginInfo = { name: 'my-plugin', + babelPolyfill: 'polyfill.js', }; const target = { name: 'targetName', @@ -998,7 +1002,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { }, }; const definitions = 'definitions'; - const babelPolyfillEntry = '@babel/polyfill'; + const babelPolyfillEntry = `${webpackPluginInfo.name}/${webpackPluginInfo.babelPolyfill}`; const targetEntry = 'index.js'; const entry = { [target.name]: [ @@ -1120,6 +1124,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { const webpackBaseConfiguration = 'webpackBaseConfiguration'; const webpackPluginInfo = { name: 'my-plugin', + babelPolyfill: 'polyfill.js', }; const target = { name: 'targetName', @@ -1152,7 +1157,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { }, }; const definitions = 'definitions'; - const babelPolyfillEntry = '@babel/polyfill'; + const babelPolyfillEntry = `${webpackPluginInfo.name}/${webpackPluginInfo.babelPolyfill}`; const targetEntry = 'index.js'; const entry = { [target.name]: [ @@ -1271,6 +1276,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { const webpackBaseConfiguration = 'webpackBaseConfiguration'; const webpackPluginInfo = { name: 'my-plugin', + babelPolyfill: 'polyfill.js', }; const target = { name: 'targetName', @@ -1303,7 +1309,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { }, }; const definitions = 'definitions'; - const babelPolyfillEntry = '@babel/polyfill'; + const babelPolyfillEntry = `${webpackPluginInfo.name}/${webpackPluginInfo.babelPolyfill}`; const targetEntry = 'index.js'; const entry = { [target.name]: [ @@ -1423,6 +1429,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { const webpackBaseConfiguration = 'webpackBaseConfiguration'; const webpackPluginInfo = { name: 'my-plugin', + babelPolyfill: 'polyfill.js', }; const target = { name: 'targetName', @@ -1455,7 +1462,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { }, }; const definitions = 'definitions'; - const babelPolyfillEntry = '@babel/polyfill'; + const babelPolyfillEntry = `${webpackPluginInfo.name}/${webpackPluginInfo.babelPolyfill}`; const targetEntry = 'index.js'; const entry = { [target.name]: [ diff --git a/yarn.lock b/yarn.lock index 3923c05..d9f9da9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2677,6 +2677,11 @@ 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 "http://local.npm/core-js/-/core-js-3.1.4.tgz#3a2837fc48e582e1ae25907afcd6cf03b0cc7a07" + integrity sha512-YNZN8lt82XIMLnLirj9MhKDFZHalwzzrL9YLt6eb0T5D0EDl4IQ90IGkua8mHbnxNrkj1d8hbdizMc0Qmg1WnQ== + core-util-is@1.0.2, core-util-is@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" @@ -8397,7 +8402,7 @@ regenerator-runtime@^0.11.0: resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg== -regenerator-runtime@^0.13.2: +regenerator-runtime@^0.13.2, regenerator-runtime@^0.13.3: version "0.13.3" resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.3.tgz#7cf6a77d8f5c6f60eb73c5fc1955b2ceb01e6bf5" integrity sha512-naKIZz2GQ8JWh///G7L3X6LaQUAMp2lvb1rvwwsURe/VXwD6VMfr+/1NuNw3ag8v2kY1aQ/go5SNn79O9JU7yw== From a35869cd6cb0207b244ec7c465c7128f0f80a820 Mon Sep 17 00:00:00 2001 From: homer0 Date: Sun, 21 Jul 2019 01:50:19 -0300 Subject: [PATCH 05/24] feat(services/building/configuration): load targets dotenv files --- src/services/building/configuration.js | 16 ++++++-- tests/services/building/configuration.test.js | 38 +++++++++++++++++-- 2 files changed, 46 insertions(+), 8 deletions(-) diff --git a/src/services/building/configuration.js b/src/services/building/configuration.js index 5a7dbbf..37a203a 100644 --- a/src/services/building/configuration.js +++ b/src/services/building/configuration.js @@ -134,10 +134,18 @@ class WebpackConfiguration { * @ignore */ _getDefinitions(target, env) { - const definitions = { - 'process.env.NODE_ENV': `'${env}'`, - [this.buildVersion.getDefinitionVariable()]: JSON.stringify(this.buildVersion.getVersion()), - }; + const targetVariables = this.targets.loadTargetDotEnvFile(target, env); + const definitions = Object.keys(targetVariables).reduce( + (current, variableName) => Object.assign({}, current, { + [`process.env.${variableName}`]: JSON.stringify(targetVariables[variableName]), + }), + {} + ); + + definitions['process.env.NODE_ENV'] = `'${env}'`; + definitions[this.buildVersion.getDefinitionVariable()] = JSON.stringify( + this.buildVersion.getVersion() + ); if ( target.is.browser && diff --git a/tests/services/building/configuration.test.js b/tests/services/building/configuration.test.js index bba0bdf..c2f16bc 100644 --- a/tests/services/building/configuration.test.js +++ b/tests/services/building/configuration.test.js @@ -126,7 +126,13 @@ describe('services/building:configuration', () => { const targetConfig = { getConfig: jest.fn(() => config), }; - const targets = 'targets'; + const envVarName = 'ROSARIO'; + const envVarValue = 'Charito'; + const targets = { + loadTargetDotEnvFile: jest.fn(() => ({ + [envVarName]: envVarValue, + })), + }; const targetRules = 'target-rule'; const targetsFileRules = { getRulesForTarget: jest.fn(() => targetRules), @@ -191,6 +197,8 @@ describe('services/building:configuration', () => { `webpack/${target.name}.${buildType}.config.js`, targetConfig ); + expect(targets.loadTargetDotEnvFile).toHaveBeenCalledTimes(1); + expect(targets.loadTargetDotEnvFile).toHaveBeenCalledWith(target, buildType); expect(targetConfig.getConfig).toHaveBeenCalledTimes(1); expect(targetConfig.getConfig).toHaveBeenCalledWith({ target, @@ -199,6 +207,7 @@ describe('services/building:configuration', () => { [target.name]: [path.join(target.paths.source, target.entry[buildType])], }, definitions: { + [`process.env.${envVarName}`]: `"${envVarValue}"`, 'process.env.NODE_ENV': `'${buildType}'`, [versionVariable]: `"${version}"`, }, @@ -234,6 +243,7 @@ describe('services/building:configuration', () => { const filesToCopy = ['copy']; const targets = { getFilesToCopy: jest.fn(() => filesToCopy), + loadTargetDotEnvFile: jest.fn(() => ({})), }; const targetRules = 'target-rule'; const targetsFileRules = { @@ -300,6 +310,8 @@ describe('services/building:configuration', () => { `webpack/${target.name}.${buildType}.config.js`, targetConfig ); + expect(targets.loadTargetDotEnvFile).toHaveBeenCalledTimes(1); + expect(targets.loadTargetDotEnvFile).toHaveBeenCalledWith(target, buildType); expect(targetConfig.getConfig).toHaveBeenCalledTimes(1); expect(targetConfig.getConfig).toHaveBeenCalledWith({ target, @@ -347,6 +359,7 @@ describe('services/building:configuration', () => { const filesToCopy = ['copy']; const targets = { getFilesToCopy: jest.fn(() => filesToCopy), + loadTargetDotEnvFile: jest.fn(() => ({})), }; const targetRules = 'target-rule'; const targetsFileRules = { @@ -411,6 +424,8 @@ describe('services/building:configuration', () => { `webpack/${target.name}.${buildType}.config.js`, targetConfig ); + expect(targets.loadTargetDotEnvFile).toHaveBeenCalledTimes(1); + expect(targets.loadTargetDotEnvFile).toHaveBeenCalledWith(target, buildType); expect(targetConfig.getConfig).toHaveBeenCalledTimes(1); expect(targetConfig.getConfig).toHaveBeenCalledWith({ target, @@ -457,6 +472,7 @@ describe('services/building:configuration', () => { const filesToCopy = ['copy']; const targets = { getFilesToCopy: jest.fn(() => filesToCopy), + loadTargetDotEnvFile: jest.fn(() => ({})), getBrowserTargetConfiguration: jest.fn(() => targetBrowserConfig), }; const targetRules = 'target-rule'; @@ -521,6 +537,8 @@ describe('services/building:configuration', () => { `webpack/${target.name}.${buildType}.config.js`, targetConfig ); + expect(targets.loadTargetDotEnvFile).toHaveBeenCalledTimes(1); + expect(targets.loadTargetDotEnvFile).toHaveBeenCalledWith(target, buildType); expect(targetConfig.getConfig).toHaveBeenCalledTimes(1); expect(targetConfig.getConfig).toHaveBeenCalledWith({ target, @@ -566,7 +584,9 @@ describe('services/building:configuration', () => { const targetConfig = { getConfig: jest.fn(() => config), }; - const targets = 'targets'; + const targets = { + loadTargetDotEnvFile: jest.fn(() => ({})), + }; const targetRules = 'target-rule'; const targetsFileRules = { getRulesForTarget: jest.fn(() => targetRules), @@ -634,6 +654,8 @@ describe('services/building:configuration', () => { `webpack/${target.name}.${buildType}.config.js`, targetConfig ); + expect(targets.loadTargetDotEnvFile).toHaveBeenCalledTimes(1); + expect(targets.loadTargetDotEnvFile).toHaveBeenCalledWith(target, buildType); expect(targetConfig.getConfig).toHaveBeenCalledTimes(1); expect(targetConfig.getConfig).toHaveBeenCalledWith({ target, @@ -677,7 +699,9 @@ describe('services/building:configuration', () => { const targetConfig = { getConfig: jest.fn(() => config), }; - const targets = 'targets'; + const targets = { + loadTargetDotEnvFile: jest.fn(() => ({})), + }; const targetRules = 'target-rule'; const targetsFileRules = { getRulesForTarget: jest.fn(() => targetRules), @@ -747,6 +771,8 @@ describe('services/building:configuration', () => { `webpack/${target.name}.${buildType}.config.js`, targetConfig ); + expect(targets.loadTargetDotEnvFile).toHaveBeenCalledTimes(1); + expect(targets.loadTargetDotEnvFile).toHaveBeenCalledWith(target, buildType); expect(targetConfig.getConfig).toHaveBeenCalledTimes(1); expect(targetConfig.getConfig).toHaveBeenCalledWith({ target, @@ -787,7 +813,9 @@ describe('services/building:configuration', () => { const targetConfig = { getConfig: jest.fn(() => config), }; - const targets = ''; + const targets = { + loadTargetDotEnvFile: jest.fn(() => ({})), + }; const targetRules = 'target-rule'; const targetsFileRules = { getRulesForTarget: jest.fn(() => targetRules), @@ -859,6 +887,8 @@ describe('services/building:configuration', () => { `webpack/${target.name}.${buildType}.config.js`, targetConfig ); + expect(targets.loadTargetDotEnvFile).toHaveBeenCalledTimes(1); + expect(targets.loadTargetDotEnvFile).toHaveBeenCalledWith(target, buildType); expect(targetConfig.getConfig).toHaveBeenCalledTimes(1); expect(targetConfig.getConfig).toHaveBeenCalledWith({ target, From 054276919e771784352820f1af226884bebfcac4 Mon Sep 17 00:00:00 2001 From: homer0 Date: Sun, 21 Jul 2019 03:07:15 -0300 Subject: [PATCH 06/24] feat(services/building/configuration): expose a list of additional files to watch --- src/services/building/configuration.js | 21 +++++++++---------- src/typedef.js | 2 ++ tests/services/building/configuration.test.js | 13 +++++++++++- 3 files changed, 24 insertions(+), 12 deletions(-) diff --git a/src/services/building/configuration.js b/src/services/building/configuration.js index 37a203a..25e7286 100644 --- a/src/services/building/configuration.js +++ b/src/services/building/configuration.js @@ -96,16 +96,25 @@ class WebpackConfiguration { output.jsChunks = this._generateChunkName(output.js); } + const definitions = this._getDefinitions(target, buildType); + const watch = []; + if (target.is.browser && target.configuration && target.configuration.enabled) { + const browserConfig = this.targets.getBrowserTargetConfiguration(target); + definitions[target.configuration.defineOn] = JSON.stringify(browserConfig.configuration); + watch.push(...browserConfig.files); + } + const params = { target, targetRules: this.targetsFileRules.getRulesForTarget(target), entry: { [target.name]: entries, }, - definitions: this._getDefinitions(target, buildType), + definitions, output, copy, buildType, + watch, }; let config = this.targetConfiguration( @@ -147,16 +156,6 @@ class WebpackConfiguration { this.buildVersion.getVersion() ); - if ( - target.is.browser && - target.configuration && - target.configuration.enabled - ) { - definitions[target.configuration.defineOn] = JSON.stringify( - this.targets.getBrowserTargetConfiguration(target) - ); - } - return definitions; } /** diff --git a/src/typedef.js b/src/typedef.js index d1988e2..6380579 100644 --- a/src/typedef.js +++ b/src/typedef.js @@ -202,6 +202,8 @@ * @property {Array} copy * A list of {@link TargetExtraFile} with the information of files that need to be copied during * the bundling process. + * @property {Array} watch + * A list of additional paths webpack should watch for in order to restart the bundle. */ /** diff --git a/tests/services/building/configuration.test.js b/tests/services/building/configuration.test.js index c2f16bc..ae421b3 100644 --- a/tests/services/building/configuration.test.js +++ b/tests/services/building/configuration.test.js @@ -216,6 +216,7 @@ describe('services/building:configuration', () => { }), targetRules, copy: [], + watch: [], }); expect(pathUtils.join).toHaveBeenCalledTimes(1); expect(pathUtils.join).toHaveBeenCalledWith(config.output.path); @@ -328,6 +329,7 @@ describe('services/building:configuration', () => { }), targetRules, copy: filesToCopy, + watch: [], }); expect(pathUtils.join).toHaveBeenCalledTimes(1); expect(pathUtils.join).toHaveBeenCalledWith(config.output.path); @@ -440,6 +442,7 @@ describe('services/building:configuration', () => { output: target.output[buildType], targetRules, copy: filesToCopy, + watch: [], }); expect(pathUtils.join).toHaveBeenCalledTimes(1); expect(pathUtils.join).toHaveBeenCalledWith(config.output.path); @@ -469,11 +472,15 @@ describe('services/building:configuration', () => { const targetBrowserConfig = { someProp: 'someValue', }; + const targetBrowserConfigFiles = ['some-config-file']; const filesToCopy = ['copy']; const targets = { getFilesToCopy: jest.fn(() => filesToCopy), loadTargetDotEnvFile: jest.fn(() => ({})), - getBrowserTargetConfiguration: jest.fn(() => targetBrowserConfig), + getBrowserTargetConfiguration: jest.fn(() => ({ + configuration: targetBrowserConfig, + files: targetBrowserConfigFiles, + })), }; const targetRules = 'target-rule'; const targetsFileRules = { @@ -556,6 +563,7 @@ describe('services/building:configuration', () => { }, targetRules, copy: filesToCopy, + watch: targetBrowserConfigFiles, }); expect(pathUtils.join).toHaveBeenCalledTimes(1); expect(pathUtils.join).toHaveBeenCalledWith(config.output.path); @@ -675,6 +683,7 @@ describe('services/building:configuration', () => { }), targetRules, copy: [], + watch: [], }); expect(pathUtils.join).toHaveBeenCalledTimes(1); expect(pathUtils.join).toHaveBeenCalledWith(config.output.path); @@ -789,6 +798,7 @@ describe('services/building:configuration', () => { }), targetRules, copy: [], + watch: [], }); expect(pathUtils.join).toHaveBeenCalledTimes(1); expect(pathUtils.join).toHaveBeenCalledWith(config.output.path); @@ -905,6 +915,7 @@ describe('services/building:configuration', () => { }), targetRules, copy: [], + watch: [], }); expect(pathUtils.join).toHaveBeenCalledTimes(1); expect(pathUtils.join).toHaveBeenCalledWith(config.output.path); From eb3e6fa437aadc2028dbf6f58af1660ba7bf8ccf Mon Sep 17 00:00:00 2001 From: homer0 Date: Sun, 21 Jul 2019 03:09:20 -0300 Subject: [PATCH 07/24] chore(project): install extra-watch-webpack-plugin --- package.json | 1 + yarn.lock | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+) diff --git a/package.json b/package.json index 47d8045..817907a 100644 --- a/package.json +++ b/package.json @@ -26,6 +26,7 @@ "terser-webpack-plugin": "^1.3.0", "optimize-css-assets-webpack-plugin": "^5.0.3", "copy-webpack-plugin": "^5.0.3", + "extra-watch-webpack-plugin": "^1.0.3", "@babel/core": "7.5.5", "node-sass": "^4.12.0", diff --git a/yarn.lock b/yarn.lock index d9f9da9..58e8444 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3998,6 +3998,16 @@ extglob@^2.0.4: snapdragon "^0.8.1" to-regex "^3.0.1" +extra-watch-webpack-plugin@^1.0.3: + version "1.0.3" + resolved "http://local.npm/extra-watch-webpack-plugin/-/extra-watch-webpack-plugin-1.0.3.tgz#774248f4ac590159bd5878d862d77afce697d7cc" + integrity sha512-ZScQdMH6hNofRRN6QMQFg+aa5vqimfBgnPXmRDhdaLpttT6hrzpY9Oyren3Gh/FySPrgsvKCNbx/NFA7XNdIsg== + dependencies: + glob "^7.1.2" + is-glob "^4.0.0" + lodash.uniq "^4.5.0" + schema-utils "^0.4.0" + extsprintf@1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" @@ -8802,6 +8812,14 @@ sax@^1.1.4, sax@^1.2.4, sax@~1.2.4: resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== +schema-utils@^0.4.0: + version "0.4.7" + resolved "http://local.npm/schema-utils/-/schema-utils-0.4.7.tgz#ba74f597d2be2ea880131746ee17d0a093c68187" + integrity sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ== + dependencies: + ajv "^6.1.0" + ajv-keywords "^3.1.0" + schema-utils@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-1.0.0.tgz#0b79a93204d7b600d4b2850d1f66c2a34951c770" From 8e6347913bdc714ace9416a92f3d922881fe6683 Mon Sep 17 00:00:00 2001 From: homer0 Date: Sun, 21 Jul 2019 03:35:09 -0300 Subject: [PATCH 08/24] refactor(services/building/configuration): rename watch to additionalWatch, it's too generic --- src/services/building/configuration.js | 6 +++--- src/typedef.js | 2 +- tests/services/building/configuration.test.js | 14 +++++++------- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/src/services/building/configuration.js b/src/services/building/configuration.js index 25e7286..d905e9c 100644 --- a/src/services/building/configuration.js +++ b/src/services/building/configuration.js @@ -97,11 +97,11 @@ class WebpackConfiguration { } const definitions = this._getDefinitions(target, buildType); - const watch = []; + const additionalWatch = []; if (target.is.browser && target.configuration && target.configuration.enabled) { const browserConfig = this.targets.getBrowserTargetConfiguration(target); definitions[target.configuration.defineOn] = JSON.stringify(browserConfig.configuration); - watch.push(...browserConfig.files); + additionalWatch.push(...browserConfig.files); } const params = { @@ -114,7 +114,7 @@ class WebpackConfiguration { output, copy, buildType, - watch, + additionalWatch, }; let config = this.targetConfiguration( diff --git a/src/typedef.js b/src/typedef.js index 6380579..6c932f8 100644 --- a/src/typedef.js +++ b/src/typedef.js @@ -202,7 +202,7 @@ * @property {Array} copy * A list of {@link TargetExtraFile} with the information of files that need to be copied during * the bundling process. - * @property {Array} watch + * @property {Array} additionalWatch * A list of additional paths webpack should watch for in order to restart the bundle. */ diff --git a/tests/services/building/configuration.test.js b/tests/services/building/configuration.test.js index ae421b3..55ee65d 100644 --- a/tests/services/building/configuration.test.js +++ b/tests/services/building/configuration.test.js @@ -216,7 +216,7 @@ describe('services/building:configuration', () => { }), targetRules, copy: [], - watch: [], + additionalWatch: [], }); expect(pathUtils.join).toHaveBeenCalledTimes(1); expect(pathUtils.join).toHaveBeenCalledWith(config.output.path); @@ -329,7 +329,7 @@ describe('services/building:configuration', () => { }), targetRules, copy: filesToCopy, - watch: [], + additionalWatch: [], }); expect(pathUtils.join).toHaveBeenCalledTimes(1); expect(pathUtils.join).toHaveBeenCalledWith(config.output.path); @@ -442,7 +442,7 @@ describe('services/building:configuration', () => { output: target.output[buildType], targetRules, copy: filesToCopy, - watch: [], + additionalWatch: [], }); expect(pathUtils.join).toHaveBeenCalledTimes(1); expect(pathUtils.join).toHaveBeenCalledWith(config.output.path); @@ -563,7 +563,7 @@ describe('services/building:configuration', () => { }, targetRules, copy: filesToCopy, - watch: targetBrowserConfigFiles, + additionalWatch: targetBrowserConfigFiles, }); expect(pathUtils.join).toHaveBeenCalledTimes(1); expect(pathUtils.join).toHaveBeenCalledWith(config.output.path); @@ -683,7 +683,7 @@ describe('services/building:configuration', () => { }), targetRules, copy: [], - watch: [], + additionalWatch: [], }); expect(pathUtils.join).toHaveBeenCalledTimes(1); expect(pathUtils.join).toHaveBeenCalledWith(config.output.path); @@ -798,7 +798,7 @@ describe('services/building:configuration', () => { }), targetRules, copy: [], - watch: [], + additionalWatch: [], }); expect(pathUtils.join).toHaveBeenCalledTimes(1); expect(pathUtils.join).toHaveBeenCalledWith(config.output.path); @@ -915,7 +915,7 @@ describe('services/building:configuration', () => { }), targetRules, copy: [], - watch: [], + additionalWatch: [], }); expect(pathUtils.join).toHaveBeenCalledTimes(1); expect(pathUtils.join).toHaveBeenCalledWith(config.output.path); From 6fa6860e380c53991d669c297cd2be250a7c3fa4 Mon Sep 17 00:00:00 2001 From: homer0 Date: Sun, 21 Jul 2019 03:36:05 -0300 Subject: [PATCH 09/24] feat(services/configurations/browser): implement the new additionalWatch parameter --- .../browserDevelopmentConfiguration.js | 8 ++++ .../browserProductionConfiguration.js | 8 ++++ .../browserDevelopmentConfiguration.test.js | 39 +++++++++++++++++++ .../browserProductionConfiguration.test.js | 27 +++++++++++++ 4 files changed, 82 insertions(+) diff --git a/src/services/configurations/browserDevelopmentConfiguration.js b/src/services/configurations/browserDevelopmentConfiguration.js index 08f14fe..3b2d337 100644 --- a/src/services/configurations/browserDevelopmentConfiguration.js +++ b/src/services/configurations/browserDevelopmentConfiguration.js @@ -4,6 +4,7 @@ const ScriptExtHtmlWebpackPlugin = require('script-ext-html-webpack-plugin'); const MiniCssExtractPlugin = require('mini-css-extract-plugin'); const OptimizeCssAssetsPlugin = require('optimize-css-assets-webpack-plugin'); const CopyWebpackPlugin = require('copy-webpack-plugin'); +const ExtraWatchWebpackPlugin = require('extra-watch-webpack-plugin'); const { NoEmitOnErrorsPlugin, DefinePlugin, @@ -94,6 +95,7 @@ class WebpackBrowserDevelopmentConfiguration extends ConfigurationFile { entry, target, output, + additionalWatch, } = params; // Define the basic stuff: entry, output and mode. const config = { @@ -143,6 +145,12 @@ class WebpackBrowserDevelopmentConfiguration extends ConfigurationFile { filename: output.css, })] ), + // If there are additionals files to watch, add the plugin for it. + ...( + additionalWatch.length ? + [new ExtraWatchWebpackPlugin({ files: additionalWatch })] : + [] + ), ]; // Define a list of extra entries that may be need depending on the target HMR configuration. const hotEntries = []; diff --git a/src/services/configurations/browserProductionConfiguration.js b/src/services/configurations/browserProductionConfiguration.js index 46001ff..c2b1a86 100644 --- a/src/services/configurations/browserProductionConfiguration.js +++ b/src/services/configurations/browserProductionConfiguration.js @@ -5,6 +5,7 @@ const MiniCssExtractPlugin = require('mini-css-extract-plugin'); const TerserPlugin = require('terser-webpack-plugin'); const OptimizeCssAssetsPlugin = require('optimize-css-assets-webpack-plugin'); const CopyWebpackPlugin = require('copy-webpack-plugin'); +const ExtraWatchWebpackPlugin = require('extra-watch-webpack-plugin'); const { DefinePlugin } = require('webpack'); const { provider } = require('jimple'); const ConfigurationFile = require('../../abstracts/configurationFile'); @@ -70,6 +71,7 @@ class WebpackBrowserProductionConfiguration extends ConfigurationFile { entry, target, output, + additionalWatch, } = params; // Define the basic stuff: entry, output and mode. const config = { @@ -138,6 +140,12 @@ class WebpackBrowserProductionConfiguration extends ConfigurationFile { filename: output.css, })] ), + // If there are additionals files to watch, add the plugin for it. + ...( + additionalWatch.length ? + [new ExtraWatchWebpackPlugin({ files: additionalWatch })] : + [] + ), ]; // Enable the watch mode if required... if (target.watch.production) { diff --git a/tests/services/configurations/browserDevelopmentConfiguration.test.js b/tests/services/configurations/browserDevelopmentConfiguration.test.js index d3b9e5f..71aac5c 100644 --- a/tests/services/configurations/browserDevelopmentConfiguration.test.js +++ b/tests/services/configurations/browserDevelopmentConfiguration.test.js @@ -11,6 +11,7 @@ jest.mock('html-webpack-plugin'); jest.mock('script-ext-html-webpack-plugin'); jest.mock('optimize-css-assets-webpack-plugin'); jest.mock('copy-webpack-plugin'); +jest.mock('extra-watch-webpack-plugin'); jest.mock('webpack'); jest.mock('opener'); jest.unmock('/src/services/configurations/browserDevelopmentConfiguration'); @@ -20,6 +21,7 @@ const HtmlWebpackPlugin = require('html-webpack-plugin'); const ScriptExtHtmlWebpackPlugin = require('script-ext-html-webpack-plugin'); const OptimizeCssAssetsPlugin = require('optimize-css-assets-webpack-plugin'); const CopyWebpackPlugin = require('copy-webpack-plugin'); +const ExtraWatchWebpackPlugin = require('extra-watch-webpack-plugin'); const { ProjextWebpackOpenDevServer } = require('/src/plugins'); const { @@ -36,6 +38,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { ScriptExtHtmlWebpackPlugin.mockReset(); OptimizeCssAssetsPlugin.mockReset(); CopyWebpackPlugin.mockReset(); + ExtraWatchWebpackPlugin.mockReset(); ProjextWebpackOpenDevServer.mockReset(); }); @@ -114,12 +117,14 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { css: 'statics/css/build.css', }; const copy = ['file-to-copy']; + const additionalWatch = ['file-to-watch']; const params = { target, definitions, entry, output, copy, + additionalWatch, }; const expectedConfig = { entry, @@ -170,6 +175,10 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); + expect(ExtraWatchWebpackPlugin).toHaveBeenCalledTimes(1); + expect(ExtraWatchWebpackPlugin).toHaveBeenCalledWith({ + files: additionalWatch, + }); expect(events.reduce).toHaveBeenCalledTimes(1); expect(events.reduce).toHaveBeenCalledWith( [ @@ -224,12 +233,14 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { css: 'statics/css/build.css', }; const copy = ['file-to-copy']; + const additionalWatch = []; const params = { target, definitions, entry, output, copy, + additionalWatch, }; const expectedConfig = { entry, @@ -277,6 +288,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); + expect(ExtraWatchWebpackPlugin).toHaveBeenCalledTimes(0); expect(events.reduce).toHaveBeenCalledTimes(1); expect(events.reduce).toHaveBeenCalledWith( [ @@ -332,12 +344,14 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { css: 'statics/css/build.css', }; const copy = ['file-to-copy']; + const additionalWatch = []; const params = { target, definitions, entry, output, copy, + additionalWatch, }; const expectedConfig = { entry: { @@ -394,6 +408,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); + expect(ExtraWatchWebpackPlugin).toHaveBeenCalledTimes(0); expect(events.reduce).toHaveBeenCalledTimes(1); expect(events.reduce).toHaveBeenCalledWith( [ @@ -448,12 +463,14 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { css: 'statics/css/build.css', }; const copy = ['file-to-copy']; + const additionalWatch = []; const params = { target, definitions, entry, output, copy, + additionalWatch, }; const expectedConfig = { entry, @@ -504,6 +521,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); + expect(ExtraWatchWebpackPlugin).toHaveBeenCalledTimes(0); expect(events.reduce).toHaveBeenCalledTimes(1); expect(events.reduce).toHaveBeenCalledWith( [ @@ -573,12 +591,14 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { css: 'statics/css/build.css', }; const copy = ['file-to-copy']; + const additionalWatch = []; const params = { target, definitions, entry, output, copy, + additionalWatch, }; const expectedURL = `http://${target.devServer.host}:${target.devServer.port}`; const expectedConfig = { @@ -644,6 +664,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); + expect(ExtraWatchWebpackPlugin).toHaveBeenCalledTimes(0); expect(events.reduce).toHaveBeenCalledTimes(1); expect(events.reduce).toHaveBeenCalledWith( [ @@ -719,12 +740,14 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { css: 'statics/css/build.css', }; const copy = ['file-to-copy']; + const additionalWatch = []; const params = { target, definitions, entry, output, copy, + additionalWatch, }; const expectedURL = `http://${target.devServer.host}:${target.devServer.port}`; const expectedConfig = { @@ -791,6 +814,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); + expect(ExtraWatchWebpackPlugin).toHaveBeenCalledTimes(0); expect(events.reduce).toHaveBeenCalledTimes(1); expect(events.reduce).toHaveBeenCalledWith( [ @@ -869,12 +893,14 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { css: 'statics/css/build.css', }; const copy = ['file-to-copy']; + const additionalWatch = []; const params = { target, definitions, entry, output, copy, + additionalWatch, }; const expectedURL = `https://${target.devServer.host}:${target.devServer.port}`; const expectedConfig = { @@ -935,6 +961,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); + expect(ExtraWatchWebpackPlugin).toHaveBeenCalledTimes(0); expect(pathUtils.join).toHaveBeenCalledTimes(1); expect(pathUtils.join).toHaveBeenCalledWith(target.devServer.ssl.cert); expect(events.reduce).toHaveBeenCalledTimes(1); @@ -1016,12 +1043,14 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { css: 'statics/css/build.css', }; const copy = ['file-to-copy']; + const additionalWatch = []; const params = { target, definitions, entry, output, copy, + additionalWatch, }; const expectedURL = `https://${target.devServer.host}:${target.devServer.port}`; const expectedConfig = { @@ -1089,6 +1118,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); + expect(ExtraWatchWebpackPlugin).toHaveBeenCalledTimes(0); expect(pathUtils.join).toHaveBeenCalledTimes(1); expect(pathUtils.join).toHaveBeenCalledWith(target.devServer.ssl.cert); expect(events.reduce).toHaveBeenCalledTimes(1); @@ -1171,12 +1201,14 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { css: 'statics/css/build.css', }; const copy = ['file-to-copy']; + const additionalWatch = []; const params = { target, definitions, entry, output, copy, + additionalWatch, }; const expectedURL = `http://${target.devServer.host}:${target.devServer.port}`; const expectedConfig = { @@ -1243,6 +1275,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); + expect(ExtraWatchWebpackPlugin).toHaveBeenCalledTimes(0); expect(events.reduce).toHaveBeenCalledTimes(1); expect(events.reduce).toHaveBeenCalledWith( [ @@ -1323,12 +1356,14 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { css: 'statics/css/build.css', }; const copy = ['file-to-copy']; + const additionalWatch = []; const params = { target, definitions, entry, output, copy, + additionalWatch, }; const expectedURL = `http://${target.devServer.host}:${target.devServer.port}`; const expectedProxiedURL = `http://${target.devServer.proxied.host}`; @@ -1396,6 +1431,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); + expect(ExtraWatchWebpackPlugin).toHaveBeenCalledTimes(0); expect(events.reduce).toHaveBeenCalledTimes(1); expect(events.reduce).toHaveBeenCalledWith( [ @@ -1476,12 +1512,14 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { css: 'statics/css/build.css', }; const copy = ['file-to-copy']; + const additionalWatch = []; const params = { target, definitions, entry, output, copy, + additionalWatch, }; const expectedURL = `http://${target.devServer.host}:${target.devServer.port}`; const expectedProxiedURL = `https://${target.devServer.proxied.host}`; @@ -1549,6 +1587,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); + expect(ExtraWatchWebpackPlugin).toHaveBeenCalledTimes(0); expect(events.reduce).toHaveBeenCalledTimes(1); expect(events.reduce).toHaveBeenCalledWith( [ diff --git a/tests/services/configurations/browserProductionConfiguration.test.js b/tests/services/configurations/browserProductionConfiguration.test.js index 4e19fc8..ce91724 100644 --- a/tests/services/configurations/browserProductionConfiguration.test.js +++ b/tests/services/configurations/browserProductionConfiguration.test.js @@ -13,6 +13,7 @@ jest.mock('compression-webpack-plugin'); jest.mock('terser-webpack-plugin'); jest.mock('optimize-css-assets-webpack-plugin'); jest.mock('copy-webpack-plugin'); +jest.mock('extra-watch-webpack-plugin'); jest.mock('webpack'); jest.unmock('/src/services/configurations/browserProductionConfiguration'); @@ -23,6 +24,7 @@ const CompressionPlugin = require('compression-webpack-plugin'); const TerserPlugin = require('terser-webpack-plugin'); const OptimizeCssAssetsPlugin = require('optimize-css-assets-webpack-plugin'); const CopyWebpackPlugin = require('copy-webpack-plugin'); +const ExtraWatchWebpackPlugin = require('extra-watch-webpack-plugin'); const { WebpackBrowserProductionConfiguration, @@ -40,6 +42,7 @@ describe('services/configurations:browserProductionConfiguration', () => { TerserPlugin.mockReset(); CompressionPlugin.mockReset(); CopyWebpackPlugin.mockReset(); + ExtraWatchWebpackPlugin.mockReset(); }); it('should be instantiated with all its dependencies', () => { @@ -110,12 +113,14 @@ describe('services/configurations:browserProductionConfiguration', () => { css: 'statics/css/build.css', }; const copy = ['file-to-copy']; + const additionalWatch = ['file-to-watch']; const params = { target, definitions, entry, output, copy, + additionalWatch, }; const expectedConfig = { entry, @@ -168,6 +173,10 @@ describe('services/configurations:browserProductionConfiguration', () => { expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); + expect(ExtraWatchWebpackPlugin).toHaveBeenCalledTimes(1); + expect(ExtraWatchWebpackPlugin).toHaveBeenCalledWith({ + files: additionalWatch, + }); expect(CompressionPlugin).toHaveBeenCalledTimes(1); expect(events.reduce).toHaveBeenCalledTimes(1); expect(events.reduce).toHaveBeenCalledWith( @@ -220,12 +229,14 @@ describe('services/configurations:browserProductionConfiguration', () => { css: 'statics/css/build.css', }; const copy = ['file-to-copy']; + const additionalWatch = []; const params = { target, definitions, entry, output, copy, + additionalWatch, }; const expectedConfig = { entry, @@ -275,6 +286,7 @@ describe('services/configurations:browserProductionConfiguration', () => { expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); + expect(ExtraWatchWebpackPlugin).toHaveBeenCalledTimes(0); expect(CompressionPlugin).toHaveBeenCalledTimes(1); expect(events.reduce).toHaveBeenCalledTimes(1); expect(events.reduce).toHaveBeenCalledWith( @@ -327,12 +339,14 @@ describe('services/configurations:browserProductionConfiguration', () => { css: 'statics/css/build.css', }; const copy = ['file-to-copy']; + const additionalWatch = []; const params = { target, definitions, entry, output, copy, + additionalWatch, }; const expectedConfig = { entry, @@ -386,6 +400,7 @@ describe('services/configurations:browserProductionConfiguration', () => { expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); + expect(ExtraWatchWebpackPlugin).toHaveBeenCalledTimes(0); expect(CompressionPlugin).toHaveBeenCalledTimes(1); expect(events.reduce).toHaveBeenCalledTimes(1); expect(events.reduce).toHaveBeenCalledWith( @@ -440,12 +455,14 @@ describe('services/configurations:browserProductionConfiguration', () => { css: 'statics/css/build.css', }; const copy = ['file-to-copy']; + const additionalWatch = []; const params = { target, definitions, entry, output, copy, + additionalWatch, }; const expectedConfig = { entry, @@ -495,6 +512,7 @@ describe('services/configurations:browserProductionConfiguration', () => { expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); + expect(ExtraWatchWebpackPlugin).toHaveBeenCalledTimes(0); expect(CompressionPlugin).toHaveBeenCalledTimes(1); expect(events.reduce).toHaveBeenCalledTimes(1); expect(events.reduce).toHaveBeenCalledWith( @@ -549,12 +567,14 @@ describe('services/configurations:browserProductionConfiguration', () => { css: 'statics/css/build.css', }; const copy = ['file-to-copy']; + const additionalWatch = []; const params = { target, definitions, entry, output, copy, + additionalWatch, }; const expectedConfig = { devtool: 'source-map', @@ -608,6 +628,7 @@ describe('services/configurations:browserProductionConfiguration', () => { expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); + expect(ExtraWatchWebpackPlugin).toHaveBeenCalledTimes(0); expect(CompressionPlugin).toHaveBeenCalledTimes(1); expect(events.reduce).toHaveBeenCalledTimes(1); expect(events.reduce).toHaveBeenCalledWith( @@ -660,12 +681,14 @@ describe('services/configurations:browserProductionConfiguration', () => { css: 'statics/css/build.css', }; const copy = ['file-to-copy']; + const additionalWatch = []; const params = { target, definitions, entry, output, copy, + additionalWatch, }; const expectedConfig = { entry, @@ -708,6 +731,7 @@ describe('services/configurations:browserProductionConfiguration', () => { expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); + expect(ExtraWatchWebpackPlugin).toHaveBeenCalledTimes(0); expect(CompressionPlugin).toHaveBeenCalledTimes(0); expect(events.reduce).toHaveBeenCalledTimes(1); expect(events.reduce).toHaveBeenCalledWith( @@ -760,12 +784,14 @@ describe('services/configurations:browserProductionConfiguration', () => { css: 'statics/css/build.css', }; const copy = ['file-to-copy']; + const additionalWatch = []; const params = { target, definitions, entry, output, copy, + additionalWatch, }; const expectedConfig = { entry, @@ -808,6 +834,7 @@ describe('services/configurations:browserProductionConfiguration', () => { expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); + expect(ExtraWatchWebpackPlugin).toHaveBeenCalledTimes(0); expect(CompressionPlugin).toHaveBeenCalledTimes(1); expect(events.reduce).toHaveBeenCalledTimes(1); expect(events.reduce).toHaveBeenCalledWith( From b1159daeb4bf277e959b14492b318356a685f1c0 Mon Sep 17 00:00:00 2001 From: homer0 Date: Sun, 21 Jul 2019 03:36:18 -0300 Subject: [PATCH 10/24] feat(services/configurations/node): implement the new additionalWatch parameter --- .../nodeDevelopmentConfiguration.js | 8 ++++++++ .../nodeProductionConfiguration.js | 8 ++++++++ .../nodeDevelopmentConfiguration.test.js | 18 ++++++++++++++++++ .../nodeProductionConfiguration.test.js | 12 ++++++++++++ 4 files changed, 46 insertions(+) diff --git a/src/services/configurations/nodeDevelopmentConfiguration.js b/src/services/configurations/nodeDevelopmentConfiguration.js index 662d566..5beb6a2 100644 --- a/src/services/configurations/nodeDevelopmentConfiguration.js +++ b/src/services/configurations/nodeDevelopmentConfiguration.js @@ -1,5 +1,6 @@ const OptimizeCssAssetsPlugin = require('optimize-css-assets-webpack-plugin'); const CopyWebpackPlugin = require('copy-webpack-plugin'); +const ExtraWatchWebpackPlugin = require('extra-watch-webpack-plugin'); const { NoEmitOnErrorsPlugin, } = require('webpack'); @@ -67,6 +68,7 @@ class WebpackNodeDevelopmentConfiguration extends ConfigurationFile { target, output, copy, + additionalWatch, } = params; // By default it doesn't watch the source files. let watch = false; @@ -78,6 +80,12 @@ class WebpackNodeDevelopmentConfiguration extends ConfigurationFile { new OptimizeCssAssetsPlugin(), // Copy the files the target specified on its settings. new CopyWebpackPlugin(copy), + // If there are additionals files to watch, add the plugin for it. + ...( + additionalWatch.length ? + [new ExtraWatchWebpackPlugin({ files: additionalWatch })] : + [] + ), ]; // If the target needs to run on development... if (target.runOnDevelopment) { diff --git a/src/services/configurations/nodeProductionConfiguration.js b/src/services/configurations/nodeProductionConfiguration.js index d16b6b1..6b18116 100644 --- a/src/services/configurations/nodeProductionConfiguration.js +++ b/src/services/configurations/nodeProductionConfiguration.js @@ -1,5 +1,6 @@ const OptimizeCssAssetsPlugin = require('optimize-css-assets-webpack-plugin'); const CopyWebpackPlugin = require('copy-webpack-plugin'); +const ExtraWatchWebpackPlugin = require('extra-watch-webpack-plugin'); const { NoEmitOnErrorsPlugin, } = require('webpack'); @@ -57,6 +58,7 @@ class WebpackNodeProductionConfiguration extends ConfigurationFile { target, output, copy, + additionalWatch, } = params; const config = { entry, @@ -73,6 +75,12 @@ class WebpackNodeProductionConfiguration extends ConfigurationFile { new OptimizeCssAssetsPlugin(), // Copy the files the target specified on its settings. new CopyWebpackPlugin(copy), + // If there are additionals files to watch, add the plugin for it. + ...( + additionalWatch.length ? + [new ExtraWatchWebpackPlugin({ files: additionalWatch })] : + [] + ), ], target: 'node', node: { diff --git a/tests/services/configurations/nodeDevelopmentConfiguration.test.js b/tests/services/configurations/nodeDevelopmentConfiguration.test.js index c3e84de..560fa5f 100644 --- a/tests/services/configurations/nodeDevelopmentConfiguration.test.js +++ b/tests/services/configurations/nodeDevelopmentConfiguration.test.js @@ -7,11 +7,13 @@ jest.mock('webpack', () => webpackMock); jest.mock('/src/abstracts/configurationFile', () => ConfigurationFileMock); jest.mock('optimize-css-assets-webpack-plugin'); jest.mock('copy-webpack-plugin'); +jest.mock('extra-watch-webpack-plugin'); jest.unmock('/src/services/configurations/nodeDevelopmentConfiguration'); require('jasmine-expect'); const OptimizeCssAssetsPlugin = require('optimize-css-assets-webpack-plugin'); const CopyWebpackPlugin = require('copy-webpack-plugin'); +const ExtraWatchWebpackPlugin = require('extra-watch-webpack-plugin'); const { ProjextWebpackBundleRunner } = require('/src/plugins'); const { @@ -26,6 +28,7 @@ describe('services/configurations:nodeDevelopmentConfiguration', () => { OptimizeCssAssetsPlugin.mockReset(); ProjextWebpackBundleRunner.mockClear(); CopyWebpackPlugin.mockReset(); + ExtraWatchWebpackPlugin.mockReset(); }); it('should be instantiated with all its dependencies', () => { @@ -90,11 +93,13 @@ describe('services/configurations:nodeDevelopmentConfiguration', () => { jsChunks: 'statics/js/build.[name].js', }; const copy = ['file-to-copy']; + const additionalWatch = ['file-to-watch']; const params = { target, entry, output, copy, + additionalWatch, }; const expectedConfig = { entry, @@ -128,6 +133,10 @@ describe('services/configurations:nodeDevelopmentConfiguration', () => { expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); + expect(ExtraWatchWebpackPlugin).toHaveBeenCalledTimes(1); + expect(ExtraWatchWebpackPlugin).toHaveBeenCalledWith({ + files: additionalWatch, + }); expect(ProjextWebpackBundleRunner).toHaveBeenCalledTimes(0); expect(events.reduce).toHaveBeenCalledTimes(1); expect(events.reduce).toHaveBeenCalledWith( @@ -172,11 +181,13 @@ describe('services/configurations:nodeDevelopmentConfiguration', () => { jsChunks: 'statics/js/build.[name].js', }; const copy = ['file-to-copy']; + const additionalWatch = []; const params = { target, entry, output, copy, + additionalWatch, }; const expectedConfig = { entry, @@ -211,6 +222,7 @@ describe('services/configurations:nodeDevelopmentConfiguration', () => { expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); + expect(ExtraWatchWebpackPlugin).toHaveBeenCalledTimes(0); expect(ProjextWebpackBundleRunner).toHaveBeenCalledTimes(0); expect(events.reduce).toHaveBeenCalledTimes(1); expect(events.reduce).toHaveBeenCalledWith( @@ -259,11 +271,13 @@ describe('services/configurations:nodeDevelopmentConfiguration', () => { jsChunks: 'statics/js/build.[name].js', }; const copy = ['file-to-copy']; + const additionalWatch = []; const params = { target, entry, output, copy, + additionalWatch, }; const expectedConfig = { entry, @@ -297,6 +311,7 @@ describe('services/configurations:nodeDevelopmentConfiguration', () => { expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); + expect(ExtraWatchWebpackPlugin).toHaveBeenCalledTimes(0); expect(ProjextWebpackBundleRunner).toHaveBeenCalledTimes(1); expect(ProjextWebpackBundleRunner).toHaveBeenCalledWith({ logger: appLogger, @@ -346,11 +361,13 @@ describe('services/configurations:nodeDevelopmentConfiguration', () => { jsChunks: 'statics/js/build.[name].js', }; const copy = ['file-to-copy']; + const additionalWatch = []; const params = { target, entry, output, copy, + additionalWatch, }; const expectedConfig = { entry, @@ -384,6 +401,7 @@ describe('services/configurations:nodeDevelopmentConfiguration', () => { expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); + expect(ExtraWatchWebpackPlugin).toHaveBeenCalledTimes(0); expect(events.reduce).toHaveBeenCalledTimes(1); expect(events.reduce).toHaveBeenCalledWith( [ diff --git a/tests/services/configurations/nodeProductionConfiguration.test.js b/tests/services/configurations/nodeProductionConfiguration.test.js index 729c223..386eb69 100644 --- a/tests/services/configurations/nodeProductionConfiguration.test.js +++ b/tests/services/configurations/nodeProductionConfiguration.test.js @@ -7,11 +7,13 @@ jest.mock('webpack', () => webpackMock); jest.mock('/src/abstracts/configurationFile', () => ConfigurationFileMock); jest.mock('optimize-css-assets-webpack-plugin'); jest.mock('copy-webpack-plugin'); +jest.mock('extra-watch-webpack-plugin'); jest.unmock('/src/services/configurations/nodeProductionConfiguration'); require('jasmine-expect'); const OptimizeCssAssetsPlugin = require('optimize-css-assets-webpack-plugin'); const CopyWebpackPlugin = require('copy-webpack-plugin'); +const ExtraWatchWebpackPlugin = require('extra-watch-webpack-plugin'); const { WebpackNodeProductionConfiguration, @@ -24,6 +26,7 @@ describe('services/configurations:nodeProductionConfiguration', () => { webpackMock.reset(); OptimizeCssAssetsPlugin.mockReset(); CopyWebpackPlugin.mockReset(); + ExtraWatchWebpackPlugin.mockReset(); }); it('should be instantiated with all its dependencies', () => { @@ -81,11 +84,13 @@ describe('services/configurations:nodeProductionConfiguration', () => { jsChunks: 'statics/js/build.[name].js', }; const copy = ['file-to-copy']; + const additionalWatch = ['file-to-watch']; const params = { target, entry, output, copy, + additionalWatch, }; const expectedConfig = { entry, @@ -118,6 +123,10 @@ describe('services/configurations:nodeProductionConfiguration', () => { expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); + expect(ExtraWatchWebpackPlugin).toHaveBeenCalledTimes(1); + expect(ExtraWatchWebpackPlugin).toHaveBeenCalledWith({ + files: additionalWatch, + }); expect(events.reduce).toHaveBeenCalledTimes(1); expect(events.reduce).toHaveBeenCalledWith( [ @@ -157,11 +166,13 @@ describe('services/configurations:nodeProductionConfiguration', () => { jsChunks: 'statics/js/build.[name].js', }; const copy = ['file-to-copy']; + const additionalWatch = []; const params = { target, entry, output, copy, + additionalWatch, }; const expectedConfig = { entry, @@ -195,6 +206,7 @@ describe('services/configurations:nodeProductionConfiguration', () => { expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); + expect(ExtraWatchWebpackPlugin).toHaveBeenCalledTimes(0); expect(events.reduce).toHaveBeenCalledTimes(1); expect(events.reduce).toHaveBeenCalledWith( [ From 16ceef454e0220a1eff34ceb72a54166dcffa761 Mon Sep 17 00:00:00 2001 From: homer0 Date: Sun, 21 Jul 2019 03:39:33 -0300 Subject: [PATCH 11/24] refactor(project): install husky, rename the hook files and delete the install script --- package.json | 9 ++- utils/hooks/install | 10 --- utils/hooks/{post-merge.local => post-merge} | 0 utils/hooks/{pre-commit.local => pre-commit} | 0 yarn.lock | 80 +++++++++++++++++++- 5 files changed, 85 insertions(+), 14 deletions(-) delete mode 100755 utils/hooks/install rename utils/hooks/{post-merge.local => post-merge} (100%) rename utils/hooks/{pre-commit.local => pre-commit} (100%) diff --git a/package.json b/package.json index 817907a..ebd9979 100644 --- a/package.json +++ b/package.json @@ -63,7 +63,8 @@ "esdoc-standard-plugin": "^1.0.0", "esdoc-node": "^1.0.4", "leasot": "^8.0.0", - "coveralls": "^3.0.5" + "coveralls": "^3.0.5", + "husky": "^3.0.1" }, "engine-strict": true, "engines": { @@ -71,6 +72,12 @@ "npm": ">=3.0.0" }, "main": "src/index.js", + "husky": { + "hooks": { + "pre-commit": "./utils/hooks/pre-commit", + "post-merge": "./utils/hooks/post-merge" + } + }, "scripts": { "hooks": "./utils/hooks/install", "test": "./utils/scripts/test", diff --git a/utils/hooks/install b/utils/hooks/install deleted file mode 100755 index 537915a..0000000 --- a/utils/hooks/install +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/sh -if [ -d ".git" ]; then - ln -sv ../../utils/hooks/pre-commit.local ./.git/hooks/pre-commit - ln -sv ../../utils/hooks/post-merge.local ./.git/hooks/post-merge - echo "Hooks installed" - exit 0 -fi - -echo ".git directory not found" -exit 1 diff --git a/utils/hooks/post-merge.local b/utils/hooks/post-merge similarity index 100% rename from utils/hooks/post-merge.local rename to utils/hooks/post-merge diff --git a/utils/hooks/pre-commit.local b/utils/hooks/pre-commit similarity index 100% rename from utils/hooks/pre-commit.local rename to utils/hooks/pre-commit diff --git a/yarn.lock b/yarn.lock index 58e8444..5917fe8 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1093,6 +1093,11 @@ resolved "https://registry.yarnpkg.com/@types/node/-/node-12.6.8.tgz#e469b4bf9d1c9832aee4907ba8a051494357c12c" integrity sha512-aX+gFgA5GHcDi89KG5keey2zf0WfZk/HAQotEamsK2kbey+8yGKcson0hbK8E+v0NArlCJQCqMP161YhV6ZXLg== +"@types/normalize-package-data@^2.4.0": + version "2.4.0" + resolved "http://local.npm/@types%2fnormalize-package-data/-/normalize-package-data-2.4.0.tgz#e486d0d97396d79beedd0a6e33f4534ff6b4973e" + integrity sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA== + "@types/q@^1.5.1": version "1.5.2" resolved "https://registry.yarnpkg.com/@types/q/-/q-1.5.2.tgz#690a1475b84f2a884fd07cd797c00f5f31356ea8" @@ -2687,7 +2692,7 @@ core-util-is@1.0.2, core-util-is@~1.0.0: resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= -cosmiconfig@^5.0.0: +cosmiconfig@^5.0.0, cosmiconfig@^5.2.1: version "5.2.1" resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.2.1.tgz#040f726809c591e77a17c0a3626ca45b4f168b1a" integrity sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA== @@ -4896,6 +4901,23 @@ https-browserify@^1.0.0: resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM= +husky@^3.0.1: + version "3.0.1" + resolved "http://local.npm/husky/-/husky-3.0.1.tgz#06152c28e129622b05fa09c494209de8cf2dfb59" + integrity sha512-PXBv+iGKw23GHUlgELRlVX9932feFL407/wHFwtsGeArp0dDM4u+/QusSQwPKxmNgjpSL+ustbOdQ2jetgAZbA== + dependencies: + chalk "^2.4.2" + cosmiconfig "^5.2.1" + execa "^1.0.0" + get-stdin "^7.0.0" + is-ci "^2.0.0" + opencollective-postinstall "^2.0.2" + pkg-dir "^4.2.0" + please-upgrade-node "^3.1.1" + read-pkg "^5.1.1" + run-node "^1.0.0" + slash "^3.0.0" + i@0.3.x: version "0.3.6" resolved "https://registry.yarnpkg.com/i/-/i-0.3.6.tgz#d96c92732076f072711b6b10fd7d4f65ad8ee23d" @@ -6163,6 +6185,11 @@ levn@^0.3.0, levn@~0.3.0: prelude-ls "~1.1.2" type-check "~0.3.2" +lines-and-columns@^1.1.6: + version "1.1.6" + resolved "http://local.npm/lines-and-columns/-/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00" + integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA= + load-json-file@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" @@ -6982,7 +7009,7 @@ nopt@~1.0.10: dependencies: abbrev "1" -normalize-package-data@^2.3.2, normalize-package-data@^2.3.4: +normalize-package-data@^2.3.2, normalize-package-data@^2.3.4, normalize-package-data@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== @@ -7183,6 +7210,11 @@ onetime@^2.0.0: dependencies: mimic-fn "^1.0.0" +opencollective-postinstall@^2.0.2: + version "2.0.2" + resolved "http://local.npm/opencollective-postinstall/-/opencollective-postinstall-2.0.2.tgz#5657f1bede69b6e33a45939b061eb53d3c6c3a89" + integrity sha512-pVOEP16TrAO2/fjej1IdOyupJY8KDUM1CvsaScRbw6oddvpQoOfGk4ywha0HKKVAD6RkW4x6Q+tNBwhf3Bgpuw== + opener@^1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/opener/-/opener-1.5.1.tgz#6d2f0e77f1a0af0032aca716c2c1fbb8e7e8abed" @@ -7427,6 +7459,16 @@ parse-json@^4.0.0: error-ex "^1.3.1" json-parse-better-errors "^1.0.1" +parse-json@^5.0.0: + version "5.0.0" + resolved "http://local.npm/parse-json/-/parse-json-5.0.0.tgz#73e5114c986d143efa3712d4ea24db9a4266f60f" + integrity sha512-OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw== + dependencies: + "@babel/code-frame" "^7.0.0" + error-ex "^1.3.1" + json-parse-better-errors "^1.0.1" + lines-and-columns "^1.1.6" + parse-passwd@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" @@ -7608,7 +7650,7 @@ pkg-dir@^3.0.0: dependencies: find-up "^3.0.0" -pkg-dir@^4.1.0: +pkg-dir@^4.1.0, pkg-dir@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== @@ -7625,6 +7667,13 @@ 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 "http://local.npm/please-upgrade-node/-/please-upgrade-node-3.1.1.tgz#ed320051dfcc5024fae696712c8288993595e8ac" + integrity sha512-KY1uHnQ2NlQHqIJQpnh/i54rKkuxCEBx+voJIS/Mvb+L2iYd2NMotwduhKTMjfC1uKoX3VXOxLjIYG66dfJTVQ== + dependencies: + semver-compare "^1.0.0" + pn@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/pn/-/pn-1.1.0.tgz#e2f4cef0e219f463c179ab37463e4e1ecdccbafb" @@ -8305,6 +8354,16 @@ read-pkg@^3.0.0: normalize-package-data "^2.3.2" path-type "^3.0.0" +read-pkg@^5.1.1: + version "5.2.0" + resolved "http://local.npm/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc" + integrity sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg== + dependencies: + "@types/normalize-package-data" "^2.4.0" + normalize-package-data "^2.5.0" + parse-json "^5.0.0" + type-fest "^0.6.0" + read@1.0.x: version "1.0.7" resolved "https://registry.yarnpkg.com/read/-/read-1.0.7.tgz#b3da19bd052431a97671d44a42634adf710b40c4" @@ -8729,6 +8788,11 @@ run-async@^2.2.0: dependencies: is-promise "^2.1.0" +run-node@^1.0.0: + version "1.0.0" + resolved "http://local.npm/run-node/-/run-node-1.0.0.tgz#46b50b946a2aa2d4947ae1d886e9856fd9cabe5e" + integrity sha512-kc120TBlQ3mih1LSzdAJXo4xn/GWS2ec0l3S+syHDXP9uRr0JAT8Qd3mdMuyjqCzeZktgP3try92cEgf9Nks8A== + run-parallel@^1.1.9: version "1.1.9" resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.1.9.tgz#c9dd3a7cf9f4b2c4b6244e173a6ed866e61dd679" @@ -8864,6 +8928,11 @@ selfsigned@^1.10.4: dependencies: node-forge "0.7.5" +semver-compare@^1.0.0: + version "1.0.0" + resolved "http://local.npm/semver-compare/-/semver-compare-1.0.0.tgz#0dee216a1c941ab37e9efb1788f6afc5ff5537fc" + integrity sha1-De4hahyUGrN+nvsXiPavxf9VN/w= + semver-diff@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/semver-diff/-/semver-diff-2.1.0.tgz#4bbb8437c8d37e4b0cf1a68fd726ec6d645d6d36" @@ -9770,6 +9839,11 @@ type-check@~0.3.2: dependencies: prelude-ls "~1.1.2" +type-fest@^0.6.0: + version "0.6.0" + resolved "http://local.npm/type-fest/-/type-fest-0.6.0.tgz#8d2a2370d3df886eb5c90ada1c5bf6188acf838b" + integrity sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg== + type-is@^1.6.4, type-is@~1.6.17, type-is@~1.6.18: version "1.6.18" resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" From 5a7a2e2b7049731f7a64aa6c9011c87108d9845f Mon Sep 17 00:00:00 2001 From: homer0 Date: Sun, 21 Jul 2019 03:40:22 -0300 Subject: [PATCH 12/24] refactor(hooks): avoid forcing the use of Yarn --- utils/hooks/post-merge | 6 +++++- utils/hooks/pre-commit | 9 +++++++-- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/utils/hooks/post-merge b/utils/hooks/post-merge index c44e55a..e04dcd7 100755 --- a/utils/hooks/post-merge +++ b/utils/hooks/post-merge @@ -1,3 +1,7 @@ #!/bin/bash -ex -yarn +if hash yarn 2>/dev/null; then + yarn +else + npm install +fi diff --git a/utils/hooks/pre-commit b/utils/hooks/pre-commit index 57210f3..ae2db68 100755 --- a/utils/hooks/pre-commit +++ b/utils/hooks/pre-commit @@ -1,4 +1,9 @@ #!/bin/bash -e -yarn run lint -yarn test +if hash yarn 2>/dev/null; then + yarn run lint + yarn test +else + npm run lint + npm test +fi From 9501e6c9910659d7ba50e5ed0145053ee735465f Mon Sep 17 00:00:00 2001 From: homer0 Date: Sun, 21 Jul 2019 03:44:59 -0300 Subject: [PATCH 13/24] chore(project): install projext dev version --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index ebd9979..66a4fb6 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,7 @@ "author": "Leonardo Apiwan (@homer0) ", "license": "MIT", "dependencies": { - "projext": "7.0.0-alpha.1", + "projext": "7.0.0-alpha.2", "wootils": "^2.5.0", "jimple": "^1.5.0", "fs-extra": "^8.1.0", diff --git a/yarn.lock b/yarn.lock index 5917fe8..dfe65fe 100644 --- a/yarn.lock +++ b/yarn.lock @@ -8077,10 +8077,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-alpha.1: - version "7.0.0-alpha.1" - resolved "http://local.npm/projext/-/projext-7.0.0-alpha.1.tgz#1a7ecf6fdbfa80c779ac3f25a63d6caf960c7603" - integrity sha512-suapKmWhYg+Rw46prRgghIiSzacAmo2eP10wbfN/ZniGLDRVAAywMt3Vcamyp7oO9TXY9G/OpjFX9N9whwBzEg== +projext@7.0.0-alpha.2: + version "7.0.0-alpha.2" + resolved "http://local.npm/projext/-/projext-7.0.0-alpha.2.tgz#fb4b61bda238dbc6b6df0da2b751889a40d395e1" + integrity sha512-+4IejyoSpjxInZSXJB0t3Bbub+X9HDj5UsmImBOZC3glkEHdwoEvERt80qyqI21Ci7JmgQdrKct6Waa2lTVguA== dependencies: "@babel/cli" "7.5.5" "@babel/core" "7.5.5" From 80bc73ac9ec6994206ccf1f1564d694ab730ee55 Mon Sep 17 00:00:00 2001 From: homer0 Date: Sun, 21 Jul 2019 03:55:57 -0300 Subject: [PATCH 14/24] docs(project): remove hooks information from the README --- README.md | 8 -------- 1 file changed, 8 deletions(-) diff --git a/README.md b/README.md index 956fd02..981d2b2 100644 --- a/README.md +++ b/README.md @@ -409,18 +409,10 @@ This is called after generating the configuration for a browser target productio ## Development -Before doing anything, install the repository hooks: - -```bash -# You can either use npm or yarn, it doesn't matter -yarn run hooks -``` - ### NPM/Yarn Tasks | Task | Description | |-------------------------|-------------------------------------| -| `yarn run hooks` | Install the GIT repository hooks. | | `yarn test` | Run the project unit tests. | | `yarn run lint` | Lint the modified files. | | `yarn run lint:full` | Lint the project code. | From d70aafa13536d383f01d6c73f352cc796656fe00 Mon Sep 17 00:00:00 2001 From: homer0 Date: Sun, 21 Jul 2019 04:29:36 -0300 Subject: [PATCH 15/24] chore(project): remove hooks install script --- package.json | 1 - 1 file changed, 1 deletion(-) diff --git a/package.json b/package.json index 66a4fb6..d29dd28 100644 --- a/package.json +++ b/package.json @@ -79,7 +79,6 @@ } }, "scripts": { - "hooks": "./utils/hooks/install", "test": "./utils/scripts/test", "lint": "./utils/scripts/lint", "lint:full": "./utils/scripts/lint-full", From b13a4a84e371aa99a0ea612007c64ee42a0dfd86 Mon Sep 17 00:00:00 2001 From: homer0 Date: Sun, 21 Jul 2019 08:15:36 -0300 Subject: [PATCH 16/24] fix(services/configurations/rulesConfiguration): use the css-loader new options --- src/services/configurations/rulesConfiguration.js | 8 ++++---- tests/services/configurations/rulesConfiguration.test.js | 5 +++-- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/src/services/configurations/rulesConfiguration.js b/src/services/configurations/rulesConfiguration.js index 0718506..cfc66fc 100644 --- a/src/services/configurations/rulesConfiguration.js +++ b/src/services/configurations/rulesConfiguration.js @@ -160,10 +160,10 @@ class WebpackRulesConfiguration extends ConfigurationFile { }; // If the target uses CSS modules... if (target.css.modules) { - // ...enable them on the CSS loader configuration. - cssLoaderConfig.modules = true; - // Add the modules name format. - cssLoaderConfig.localIdentName = '[name]__[local]___[hash:base64:5]'; + // ...enable them on the CSS loader configuration and add the name format. + cssLoaderConfig.modules = { + localIdentName: '[name]__[local]___[hash:base64:5]', + }; } let eventName = 'webpack-scss-rules-configuration-for-node'; diff --git a/tests/services/configurations/rulesConfiguration.test.js b/tests/services/configurations/rulesConfiguration.test.js index 03fe9ec..22a9948 100644 --- a/tests/services/configurations/rulesConfiguration.test.js +++ b/tests/services/configurations/rulesConfiguration.test.js @@ -107,8 +107,9 @@ describe('services/configurations:rulesConfiguration', () => { loader: 'css-loader', options: { importLoaders: 2, - modules: true, - localIdentName: '[name]__[local]___[hash:base64:5]', + modules: { + localIdentName: '[name]__[local]___[hash:base64:5]', + }, }, }, 'resolve-url-loader', From a7a98153e98d03afccd4187d7065006c3e3b10b5 Mon Sep 17 00:00:00 2001 From: homer0 Date: Mon, 22 Jul 2019 06:52:19 -0300 Subject: [PATCH 17/24] feat(plugins): add plugin to reload definitions when the bundle changes --- src/plugins/index.js | 2 + src/plugins/runtimeDefinitions/index.js | 116 ++++++++++++++++++ .../plugins/runtimeDefinitions/index.test.js | 95 ++++++++++++++ 3 files changed, 213 insertions(+) create mode 100644 src/plugins/runtimeDefinitions/index.js create mode 100644 tests/plugins/runtimeDefinitions/index.test.js diff --git a/src/plugins/index.js b/src/plugins/index.js index 47a45b6..9e6d078 100644 --- a/src/plugins/index.js +++ b/src/plugins/index.js @@ -1,7 +1,9 @@ const ProjextWebpackBundleRunner = require('./bundleRunner'); const ProjextWebpackOpenDevServer = require('./openDevServer'); +const ProjextWebpackRuntimeDefinitions = require('./runtimeDefinitions'); module.exports = { ProjextWebpackBundleRunner, ProjextWebpackOpenDevServer, + ProjextWebpackRuntimeDefinitions, }; diff --git a/src/plugins/runtimeDefinitions/index.js b/src/plugins/runtimeDefinitions/index.js new file mode 100644 index 0000000..549deaa --- /dev/null +++ b/src/plugins/runtimeDefinitions/index.js @@ -0,0 +1,116 @@ +const ObjectUtils = require('wootils/shared/objectUtils'); +const { DefinePlugin } = require('webpack'); +/** + * This is a webpack plugin that works with `webpack.DefinePlugin` in order to reload all + * definitions when the bundle changes. + */ +class ProjextWebpackRuntimeDefinitions { + /** + * @param {Function():Object} definitionsFn When this function is called, + * it should return the object + * with the definitions. + * @param {ProjextWebpackRuntimeDefinitionsOptions} [options={}] The options to customize the + * plugin instance. + */ + constructor(definitionsFn, options = {}) { + /** + * The function that will generate the definitions. + * @type {Function():Object} + * @access protected + * @ignore + */ + this._definitionsFn = definitionsFn; + /** + * The options to customize the plugin instance. + * @type {ProjextWebpackRuntimeDefinitionsOptions} + * @access protected + * @ignore + */ + this._options = ObjectUtils.merge( + { + name: 'projext-webpack-plugin-runtime-definitions', + }, + options + ); + /** + * This is where the plugin will "refresh" the definitions when the bundle changes. + * @type {Object} + * @access protected + * @ignore + */ + this._values = {}; + } + /** + * Get the options that customize the plugin instance. + * @return {ProjextWebpackRuntimeDefinitionsOptions} + */ + getOptions() { + return this._options; + } + /** + * This is called by webpack when the plugin is being processed. The method will create a new + * instance of `webpack.DefinePlugin` and set all the values as "runtime values", so they'll + * get evaluated every time the bundle is generated. + * The method will also tap into the `compile` hook, so this plugin can refresh the values (by + * calling the `definitionFn`) when the bundle is about to be generated. + * @param {Object} compiler The compiler information provided by webpack. + */ + apply(compiler) { + const plugin = new DefinePlugin(this._getDefinePluginSettings()); + plugin.apply(compiler); + compiler.hooks.compile.tap( + this._options.name, + this._onCompilationStarts.bind(this) + ); + } + /** + * Reloads the saved values on the instance by calling the `definitionsFn`. + * @access protected + * @ignore + */ + _reloadValues() { + this._values = this._definitionsFn(); + return this._values; + } + /** + * Generates the settings for `webpack.DefinePlugin`. It basically creates a "runtime value" for + * each of the definitions keys and sets a function that will call this instance. + * @return {Object} + * @access protected + * @ignore + */ + _getDefinePluginSettings() { + const keys = Object.keys(this._reloadValues()); + return keys.reduce( + (settings, key) => Object.assign({}, settings, { + [key]: DefinePlugin.runtimeValue( + () => this._getValue(key), + true + ), + }), + {} + ); + } + /** + * Get a single value from a definition already loaded. + * @param {string} key The definition key. + * @return {string} + * @access protected + * @ignore + */ + _getValue(key) { + return this._values[key]; + } + /** + * This is called by webpack when the bundle compilation starts. The method just reloads the + * definition values on the instance so they'll be available when `webpack.DefinePlugin` tries + * to access them. + * @access protected + * @ignore + */ + _onCompilationStarts() { + this._reloadValues(); + } +} + +module.exports = ProjextWebpackRuntimeDefinitions; diff --git a/tests/plugins/runtimeDefinitions/index.test.js b/tests/plugins/runtimeDefinitions/index.test.js new file mode 100644 index 0000000..a8049b7 --- /dev/null +++ b/tests/plugins/runtimeDefinitions/index.test.js @@ -0,0 +1,95 @@ +const webpackMock = require('/tests/mocks/webpack.mock'); + +jest.unmock('/src/plugins/runtimeDefinitions'); +jest.mock('webpack', () => webpackMock); + +const ProjextWebpackRuntimeDefinitions = require('/src/plugins/runtimeDefinitions'); + +describe('plugins:runtimeDefinitions', () => { + beforeEach(() => { + webpackMock.reset(); + }); + + it('should be instantiated', () => { + // Given + let sut = null; + let result = null; + // When + sut = new ProjextWebpackRuntimeDefinitions(() => {}); + result = sut.getOptions(); + // Then + expect(sut).toBeInstanceOf(ProjextWebpackRuntimeDefinitions); + expect(result).toEqual({ + name: 'projext-webpack-plugin-runtime-definitions', + }); + }); + + it('should be instantiated with custom option', () => { + // Given + const options = { + name: 'custom', + }; + let sut = null; + let result = null; + // When + sut = new ProjextWebpackRuntimeDefinitions(() => {}, options); + result = sut.getOptions(); + // Then + expect(sut).toBeInstanceOf(ProjextWebpackRuntimeDefinitions); + expect(result).toEqual(options); + }); + + it('should create the DefinePlugin and hook to the compilation', () => { + // Given + webpackMock.DefinePluginRuntimeValueMock.mockImplementationOnce((fn) => fn()); + const definitionVarName = 'ROSARIO'; + const definitionVarValue = 'Charito!'; + const definitionFn = jest.fn(() => ({ + [definitionVarName]: definitionVarValue, + })); + const compiler = { + hooks: { + compile: { + tap: jest.fn(), + }, + }, + }; + let sut = null; + // When + sut = new ProjextWebpackRuntimeDefinitions(definitionFn); + sut.apply(compiler); + // Then + expect(definitionFn).toHaveBeenCalledTimes(1); + expect(webpackMock.DefinePluginMock).toHaveBeenCalledTimes(1); + expect(webpackMock.DefinePluginMock).toHaveBeenCalledWith({ + [definitionVarName]: definitionVarValue, + }); + expect(compiler.hooks.compile.tap).toHaveBeenCalledTimes(1); + expect(compiler.hooks.compile.tap).toHaveBeenCalledWith( + sut.getOptions().name, + expect.any(Function) + ); + }); + + it('should refresh the definitions when the bundle changes', () => { + // Given + webpackMock.DefinePluginRuntimeValueMock.mockImplementationOnce((fn) => fn()); + const definitionFn = jest.fn(() => ({})); + const compiler = { + hooks: { + compile: { + tap: jest.fn(), + }, + }, + }; + let sut = null; + let onCompile = null; + // When + sut = new ProjextWebpackRuntimeDefinitions(definitionFn); + sut.apply(compiler); + [[, onCompile]] = compiler.hooks.compile.tap.mock.calls; + onCompile(); + // Then + expect(definitionFn).toHaveBeenCalledTimes(2); + }); +}); From 9128eb42923c0b6acfd0c54b3ddfe469829b9af1 Mon Sep 17 00:00:00 2001 From: homer0 Date: Mon, 22 Jul 2019 07:04:08 -0300 Subject: [PATCH 18/24] refactor(services/building/configuration): make 'definitions' a function --- src/services/building/configuration.js | 74 ++++++++++++--- src/typedef.js | 11 ++- tests/mocks/webpack.mock.js | 13 +++ tests/services/building/configuration.test.js | 93 +++++++++---------- 4 files changed, 123 insertions(+), 68 deletions(-) diff --git a/src/services/building/configuration.js b/src/services/building/configuration.js index d905e9c..ae37f36 100644 --- a/src/services/building/configuration.js +++ b/src/services/building/configuration.js @@ -96,13 +96,8 @@ class WebpackConfiguration { output.jsChunks = this._generateChunkName(output.js); } - const definitions = this._getDefinitions(target, buildType); - const additionalWatch = []; - if (target.is.browser && target.configuration && target.configuration.enabled) { - const browserConfig = this.targets.getBrowserTargetConfiguration(target); - definitions[target.configuration.defineOn] = JSON.stringify(browserConfig.configuration); - additionalWatch.push(...browserConfig.files); - } + const definitions = this._getDefinitionsGenerator(target, buildType); + const additionalWatch = this._getBrowserTargetConfigurationDefinitions(target).files; const params = { target, @@ -134,16 +129,29 @@ class WebpackConfiguration { return config; } /** - * Get a dictionary of definitions that will be replaced on the generated bundle. This is done - * using the `webpack.DefinePlugin` plugin. - * @param {Target} target The target information. - * @param {string} env The `NODE_ENV` to define. + * Generates a function that when called will return a dictionary with definitions that will be + * replaced on the bundle. + * @param {Target} target The target information. + * @param {string} buildType The intended build type: `production` or `development`. + * @return {Function():Object} + * @access protected + * @ignore + */ + _getDefinitionsGenerator(target, buildType) { + return () => this._getTargetDefinitions(target, buildType); + } + /** + * Generates a dictionary with definitions that will be replaced on the bundle. These + * definitions are things like `process.env.NODE_ENV`, the bundle version, a browser target + * configuration, etc. + * @param {Target} target The target information. + * @param {string} buildType The intended build type: `production` or `development`. * @return {Object} * @access protected * @ignore */ - _getDefinitions(target, env) { - const targetVariables = this.targets.loadTargetDotEnvFile(target, env); + _getTargetDefinitions(target, buildType) { + const targetVariables = this.targets.loadTargetDotEnvFile(target, buildType); const definitions = Object.keys(targetVariables).reduce( (current, variableName) => Object.assign({}, current, { [`process.env.${variableName}`]: JSON.stringify(targetVariables[variableName]), @@ -151,12 +159,48 @@ class WebpackConfiguration { {} ); - definitions['process.env.NODE_ENV'] = `'${env}'`; + definitions['process.env.NODE_ENV'] = `'${buildType}'`; definitions[this.buildVersion.getDefinitionVariable()] = JSON.stringify( this.buildVersion.getVersion() ); - return definitions; + return Object.assign( + {}, + definitions, + this._getBrowserTargetConfigurationDefinitions(target).definitions + ); + } + /** + * This is a wrapper on top of {@link Targets#getBrowserTargetConfiguration} so no matter the + * type of target it recevies, or if the feature is disabled, it will always return the same + * signature. + * It also takes care of formatting the configuration on a "definitions object" so it can be + * added to the rest of the targets definitions. + * @param {Target} target The target information. + * @return {Object} + * @property {Object} definitions A dictionary with + * @property {Array} files The list of files involved on the configuration creation. + * @access protected + * @ignore + */ + _getBrowserTargetConfigurationDefinitions(target) { + let result; + if (target.is.browser && target.configuration && target.configuration.enabled) { + const parsed = this.targets.getBrowserTargetConfiguration(target); + result = { + definitions: { + [target.configuration.defineOn]: JSON.stringify(parsed.configuration), + }, + files: parsed.files, + }; + } else { + result = { + definitions: {}, + files: [], + }; + } + + return result; } /** * In case the target is a library, this method will be called in order to get the extra output diff --git a/src/typedef.js b/src/typedef.js index 6c932f8..e447a44 100644 --- a/src/typedef.js +++ b/src/typedef.js @@ -195,8 +195,8 @@ * @property {WebpackConfigurationTargetOutput} output * A dictionary with the filenames formats and paths of the different files the bundle can * generate. - * @property {Object} definitions - * A dictionary of defined variables that will be replaced on the bundled code. + * @property {Function():Object} definitions + * A function that generates a dictionary of variables that will be replaced on the bundled code. * @property {string} buildType * The intended built type: `development` or `production`. * @property {Array} copy @@ -279,3 +279,10 @@ * Its default value is `projext-webpack-plugin-open-dev-server`. * @property {?Logger} logger A custom logger to output the plugin's information messages. */ + +/** + * @typedef {Object} ProjextWebpackRuntimeDefinitionsOptions + * @property {?string} name The _"instance name"_, used to register the listeners on the + * webpack event hooks. Its default value is + * `projext-webpack-plugin-runtime-definitions`. + */ diff --git a/tests/mocks/webpack.mock.js b/tests/mocks/webpack.mock.js index 0459150..29ee8a5 100644 --- a/tests/mocks/webpack.mock.js +++ b/tests/mocks/webpack.mock.js @@ -1,6 +1,8 @@ const mocks = { noEmitOnErrorsPlugin: jest.fn(), definePlugin: jest.fn(), + definePluginApply: jest.fn(), + definePluginRuntimeValue: jest.fn(), hotModuleReplacementPlugin: jest.fn(), namedModulesPlugin: jest.fn(), }; @@ -13,10 +15,19 @@ class NoEmitOnErrorsPluginMock { } class DefinePluginMock { + static runtimeValue(...args) { + return mocks.definePluginRuntimeValue(...args); + } + constructor(...args) { this.constructorMock = mocks.definePlugin; + this.applyMock = mocks.definePluginApply; this.constructorMock(...args); } + + apply(...args) { + this.applyMock(...args); + } } class HotModuleReplacementPluginMock { @@ -50,6 +61,8 @@ module.exports.NoEmitOnErrorsPlugin = NoEmitOnErrorsPluginMock; module.exports.NoEmitOnErrorsPluginMock = mocks.noEmitOnErrorsPlugin; module.exports.DefinePlugin = DefinePluginMock; module.exports.DefinePluginMock = mocks.definePlugin; +module.exports.DefinePluginApplyMock = mocks.definePluginApply; +module.exports.DefinePluginRuntimeValueMock = mocks.definePluginRuntimeValue; module.exports.HotModuleReplacementPlugin = HotModuleReplacementPluginMock; module.exports.HotModuleReplacementPluginMock = mocks.hotModuleReplacementPlugin; module.exports.NamedModulesPlugin = NamedModulesPluginMock; diff --git a/tests/services/building/configuration.test.js b/tests/services/building/configuration.test.js index 55ee65d..19e93b0 100644 --- a/tests/services/building/configuration.test.js +++ b/tests/services/building/configuration.test.js @@ -171,6 +171,8 @@ describe('services/building:configuration', () => { const webpackPluginInfo = 'webpackPluginInfo'; let sut = null; let result = null; + let definitionsGenerator = null; + let generatedDefinitions = null; // When sut = new WebpackConfiguration( buildVersion, @@ -182,8 +184,15 @@ describe('services/building:configuration', () => { webpackPluginInfo ); result = sut.getConfig(target, buildType); + [[{ definitions: definitionsGenerator }]] = targetConfig.getConfig.mock.calls; + generatedDefinitions = definitionsGenerator(); // Then expect(result).toEqual(config); + expect(generatedDefinitions).toEqual({ + [`process.env.${envVarName}`]: `"${envVarValue}"`, + 'process.env.NODE_ENV': `'${buildType}'`, + [versionVariable]: `"${version}"`, + }); expect(buildVersion.getDefinitionVariable).toHaveBeenCalledTimes(1); expect(buildVersion.getVersion).toHaveBeenCalledTimes(1); expect(targetsFileRules.getRulesForTarget).toHaveBeenCalledTimes(1); @@ -206,11 +215,7 @@ describe('services/building:configuration', () => { entry: { [target.name]: [path.join(target.paths.source, target.entry[buildType])], }, - definitions: { - [`process.env.${envVarName}`]: `"${envVarValue}"`, - 'process.env.NODE_ENV': `'${buildType}'`, - [versionVariable]: `"${version}"`, - }, + definitions: expect.any(Function), output: Object.assign({}, target.output[buildType], { jsChunks: target.output[buildType].js.replace(/\.js$/, '.[name].js'), }), @@ -298,8 +303,8 @@ describe('services/building:configuration', () => { result = sut.getConfig(target, buildType); // Then expect(result).toEqual(config); - expect(buildVersion.getDefinitionVariable).toHaveBeenCalledTimes(1); - expect(buildVersion.getVersion).toHaveBeenCalledTimes(1); + expect(buildVersion.getDefinitionVariable).toHaveBeenCalledTimes(0); + expect(buildVersion.getVersion).toHaveBeenCalledTimes(0); expect(targetsFileRules.getRulesForTarget).toHaveBeenCalledTimes(1); expect(targetsFileRules.getRulesForTarget).toHaveBeenCalledWith(target); expect(targetConfiguration).toHaveBeenCalledTimes(['global', 'byBuildType'].length); @@ -311,8 +316,7 @@ describe('services/building:configuration', () => { `webpack/${target.name}.${buildType}.config.js`, targetConfig ); - expect(targets.loadTargetDotEnvFile).toHaveBeenCalledTimes(1); - expect(targets.loadTargetDotEnvFile).toHaveBeenCalledWith(target, buildType); + expect(targets.loadTargetDotEnvFile).toHaveBeenCalledTimes(0); expect(targetConfig.getConfig).toHaveBeenCalledTimes(1); expect(targetConfig.getConfig).toHaveBeenCalledWith({ target, @@ -320,10 +324,7 @@ describe('services/building:configuration', () => { entry: { [target.name]: [path.join(target.paths.source, target.entry[buildType])], }, - definitions: { - 'process.env.NODE_ENV': `'${buildType}'`, - [versionVariable]: `"${version}"`, - }, + definitions: expect.any(Function), output: Object.assign({}, target.output[buildType], { jsChunks: target.output[buildType].js.replace(/\.js$/, '.[name].js'), }), @@ -415,8 +416,8 @@ describe('services/building:configuration', () => { result = sut.getConfig(target, buildType); // Then expect(result).toEqual(config); - expect(buildVersion.getDefinitionVariable).toHaveBeenCalledTimes(1); - expect(buildVersion.getVersion).toHaveBeenCalledTimes(1); + expect(buildVersion.getDefinitionVariable).toHaveBeenCalledTimes(0); + expect(buildVersion.getVersion).toHaveBeenCalledTimes(0); expect(targetConfiguration).toHaveBeenCalledTimes(['global', 'byBuildType'].length); expect(targetConfiguration).toHaveBeenCalledWith( `webpack/${target.name}.config.js`, @@ -426,8 +427,7 @@ describe('services/building:configuration', () => { `webpack/${target.name}.${buildType}.config.js`, targetConfig ); - expect(targets.loadTargetDotEnvFile).toHaveBeenCalledTimes(1); - expect(targets.loadTargetDotEnvFile).toHaveBeenCalledWith(target, buildType); + expect(targets.loadTargetDotEnvFile).toHaveBeenCalledTimes(0); expect(targetConfig.getConfig).toHaveBeenCalledTimes(1); expect(targetConfig.getConfig).toHaveBeenCalledWith({ target, @@ -435,10 +435,7 @@ describe('services/building:configuration', () => { entry: { [target.name]: [path.join(target.paths.source, target.entry[buildType])], }, - definitions: { - 'process.env.NODE_ENV': `'${buildType}'`, - [versionVariable]: `"${version}"`, - }, + definitions: expect.any(Function), output: target.output[buildType], targetRules, copy: filesToCopy, @@ -520,6 +517,8 @@ describe('services/building:configuration', () => { const webpackPluginInfo = 'webpackPluginInfo'; let sut = null; let result = null; + let definitionsGenerator = null; + let generatedDefinitions = null; // When sut = new WebpackConfiguration( buildVersion, @@ -531,8 +530,15 @@ describe('services/building:configuration', () => { webpackPluginInfo ); result = sut.getConfig(target, buildType); + [[{ definitions: definitionsGenerator }]] = targetConfig.getConfig.mock.calls; + generatedDefinitions = definitionsGenerator(); // Then expect(result).toEqual(config); + expect(generatedDefinitions).toEqual({ + 'process.env.NODE_ENV': `'${buildType}'`, + [versionVariable]: `"${version}"`, + [target.configuration.defineOn]: JSON.stringify(targetBrowserConfig), + }); expect(buildVersion.getDefinitionVariable).toHaveBeenCalledTimes(1); expect(buildVersion.getVersion).toHaveBeenCalledTimes(1); expect(targetConfiguration).toHaveBeenCalledTimes(['global', 'byBuildType'].length); @@ -556,11 +562,7 @@ describe('services/building:configuration', () => { output: Object.assign({}, target.output[buildType], { jsChunks: target.output[buildType].js.replace(/\.js$/, '.[name].js'), }), - definitions: { - 'process.env.NODE_ENV': `'${buildType}'`, - [versionVariable]: `"${version}"`, - [target.configuration.defineOn]: JSON.stringify(targetBrowserConfig), - }, + definitions: expect.any(Function), targetRules, copy: filesToCopy, additionalWatch: targetBrowserConfigFiles, @@ -569,7 +571,8 @@ describe('services/building:configuration', () => { expect(pathUtils.join).toHaveBeenCalledWith(config.output.path); expect(targets.getFilesToCopy).toHaveBeenCalledTimes(1); expect(targets.getFilesToCopy).toHaveBeenCalledWith(target, buildType); - expect(targets.getBrowserTargetConfiguration).toHaveBeenCalledTimes(1); + expect(targets.getBrowserTargetConfiguration).toHaveBeenCalledTimes(2); + expect(targets.getBrowserTargetConfiguration).toHaveBeenCalledWith(target); expect(targets.getBrowserTargetConfiguration).toHaveBeenCalledWith(target); }); @@ -651,8 +654,8 @@ describe('services/building:configuration', () => { result = sut.getConfig(target, buildType); // Then expect(result).toEqual(config); - expect(buildVersion.getDefinitionVariable).toHaveBeenCalledTimes(1); - expect(buildVersion.getVersion).toHaveBeenCalledTimes(1); + expect(buildVersion.getDefinitionVariable).toHaveBeenCalledTimes(0); + expect(buildVersion.getVersion).toHaveBeenCalledTimes(0); expect(targetConfiguration).toHaveBeenCalledTimes(['global', 'byBuildType'].length); expect(targetConfiguration).toHaveBeenCalledWith( `webpack/${target.name}.config.js`, @@ -662,8 +665,7 @@ describe('services/building:configuration', () => { `webpack/${target.name}.${buildType}.config.js`, targetConfig ); - expect(targets.loadTargetDotEnvFile).toHaveBeenCalledTimes(1); - expect(targets.loadTargetDotEnvFile).toHaveBeenCalledWith(target, buildType); + expect(targets.loadTargetDotEnvFile).toHaveBeenCalledTimes(0); expect(targetConfig.getConfig).toHaveBeenCalledTimes(1); expect(targetConfig.getConfig).toHaveBeenCalledWith({ target, @@ -674,10 +676,7 @@ describe('services/building:configuration', () => { path.join(target.paths.source, target.entry[buildType]), ], }, - definitions: { - 'process.env.NODE_ENV': `'${buildType}'`, - [versionVariable]: `"${version}"`, - }, + definitions: expect.any(Function), output: Object.assign({}, target.output[buildType], { jsChunks: target.output[buildType].js.replace(/\.js$/, '.[name].js'), }), @@ -769,8 +768,8 @@ describe('services/building:configuration', () => { result = sut.getConfig(target, buildType); // Then expect(result).toEqual(expectedConfig); - expect(buildVersion.getDefinitionVariable).toHaveBeenCalledTimes(1); - expect(buildVersion.getVersion).toHaveBeenCalledTimes(1); + expect(buildVersion.getDefinitionVariable).toHaveBeenCalledTimes(0); + expect(buildVersion.getVersion).toHaveBeenCalledTimes(0); expect(targetConfiguration).toHaveBeenCalledTimes(['global', 'byBuildType'].length); expect(targetConfiguration).toHaveBeenCalledWith( `webpack/${target.name}.config.js`, @@ -780,8 +779,7 @@ describe('services/building:configuration', () => { `webpack/${target.name}.${buildType}.config.js`, targetConfig ); - expect(targets.loadTargetDotEnvFile).toHaveBeenCalledTimes(1); - expect(targets.loadTargetDotEnvFile).toHaveBeenCalledWith(target, buildType); + expect(targets.loadTargetDotEnvFile).toHaveBeenCalledTimes(0); expect(targetConfig.getConfig).toHaveBeenCalledTimes(1); expect(targetConfig.getConfig).toHaveBeenCalledWith({ target, @@ -789,10 +787,7 @@ describe('services/building:configuration', () => { entry: { [target.name]: [path.join(target.paths.source, target.entry[buildType])], }, - definitions: { - 'process.env.NODE_ENV': `'${buildType}'`, - [versionVariable]: `"${version}"`, - }, + definitions: expect.any(Function), output: Object.assign({}, target.output[buildType], { jsChunks: target.output[buildType].js.replace(/\.js$/, '.[name].js'), }), @@ -886,8 +881,8 @@ describe('services/building:configuration', () => { result = sut.getConfig(target, buildType); // Then expect(result).toEqual(expectedConfig); - expect(buildVersion.getDefinitionVariable).toHaveBeenCalledTimes(1); - expect(buildVersion.getVersion).toHaveBeenCalledTimes(1); + expect(buildVersion.getDefinitionVariable).toHaveBeenCalledTimes(0); + expect(buildVersion.getVersion).toHaveBeenCalledTimes(0); expect(targetConfiguration).toHaveBeenCalledTimes(['global', 'byBuildType'].length); expect(targetConfiguration).toHaveBeenCalledWith( `webpack/${target.name}.config.js`, @@ -897,8 +892,7 @@ describe('services/building:configuration', () => { `webpack/${target.name}.${buildType}.config.js`, targetConfig ); - expect(targets.loadTargetDotEnvFile).toHaveBeenCalledTimes(1); - expect(targets.loadTargetDotEnvFile).toHaveBeenCalledWith(target, buildType); + expect(targets.loadTargetDotEnvFile).toHaveBeenCalledTimes(0); expect(targetConfig.getConfig).toHaveBeenCalledTimes(1); expect(targetConfig.getConfig).toHaveBeenCalledWith({ target, @@ -906,10 +900,7 @@ describe('services/building:configuration', () => { entry: { [target.name]: [path.join(target.paths.source, target.entry[buildType])], }, - definitions: { - 'process.env.NODE_ENV': `'${buildType}'`, - [versionVariable]: `"${version}"`, - }, + definitions: expect.any(Function), output: Object.assign({}, target.output[buildType], { jsChunks: target.output[buildType].js.replace(/\.js$/, '.[name].js'), }), From 6f5b1d3c3aed9bcd0505b58e8fb940b5e2d0381e Mon Sep 17 00:00:00 2001 From: homer0 Date: Mon, 22 Jul 2019 07:09:09 -0300 Subject: [PATCH 19/24] refactor(services/configurations/browser): use the new plugin for definitions --- .../browserDevelopmentConfiguration.js | 8 +-- .../browserProductionConfiguration.js | 4 +- .../browserDevelopmentConfiguration.test.js | 50 ++++++++++--------- .../browserProductionConfiguration.test.js | 30 +++++------ 4 files changed, 50 insertions(+), 42 deletions(-) diff --git a/src/services/configurations/browserDevelopmentConfiguration.js b/src/services/configurations/browserDevelopmentConfiguration.js index 3b2d337..c0e7d97 100644 --- a/src/services/configurations/browserDevelopmentConfiguration.js +++ b/src/services/configurations/browserDevelopmentConfiguration.js @@ -7,13 +7,15 @@ const CopyWebpackPlugin = require('copy-webpack-plugin'); const ExtraWatchWebpackPlugin = require('extra-watch-webpack-plugin'); const { NoEmitOnErrorsPlugin, - DefinePlugin, HotModuleReplacementPlugin, NamedModulesPlugin, } = require('webpack'); const { provider } = require('jimple'); const ConfigurationFile = require('../../abstracts/configurationFile'); -const { ProjextWebpackOpenDevServer } = require('../../plugins'); +const { + ProjextWebpackOpenDevServer, + ProjextWebpackRuntimeDefinitions, +} = require('../../plugins'); /** * Creates the specifics of a Webpack configuration for a browser target development build. * @extends {ConfigurationFile} @@ -129,7 +131,7 @@ class WebpackBrowserDevelopmentConfiguration extends ConfigurationFile { // To avoid pushing assets with errors. new NoEmitOnErrorsPlugin(), // To add the _'browser env variables'_. - new DefinePlugin(definitions), + new ProjextWebpackRuntimeDefinitions(definitions), // To optimize the SCSS and remove repeated declarations. new OptimizeCssAssetsPlugin(), // Copy the files the target specified on its settings. diff --git a/src/services/configurations/browserProductionConfiguration.js b/src/services/configurations/browserProductionConfiguration.js index c2b1a86..9581f80 100644 --- a/src/services/configurations/browserProductionConfiguration.js +++ b/src/services/configurations/browserProductionConfiguration.js @@ -6,9 +6,9 @@ const TerserPlugin = require('terser-webpack-plugin'); const OptimizeCssAssetsPlugin = require('optimize-css-assets-webpack-plugin'); const CopyWebpackPlugin = require('copy-webpack-plugin'); const ExtraWatchWebpackPlugin = require('extra-watch-webpack-plugin'); -const { DefinePlugin } = require('webpack'); const { provider } = require('jimple'); const ConfigurationFile = require('../../abstracts/configurationFile'); +const { ProjextWebpackRuntimeDefinitions } = require('../../plugins'); /** * Creates the specifics of a Webpack configuration for a browser target production build. * @extends {ConfigurationFile} @@ -122,7 +122,7 @@ class WebpackBrowserProductionConfiguration extends ConfigurationFile { ] ), // To add the _'browser env variables'_. - new DefinePlugin(definitions), + new ProjextWebpackRuntimeDefinitions(definitions), // To optimize the SCSS and remove repeated declarations. new OptimizeCssAssetsPlugin(), // To compress the emitted assets using gzip, if the target is not a library. diff --git a/tests/services/configurations/browserDevelopmentConfiguration.test.js b/tests/services/configurations/browserDevelopmentConfiguration.test.js index 71aac5c..81e5604 100644 --- a/tests/services/configurations/browserDevelopmentConfiguration.test.js +++ b/tests/services/configurations/browserDevelopmentConfiguration.test.js @@ -22,7 +22,10 @@ const ScriptExtHtmlWebpackPlugin = require('script-ext-html-webpack-plugin'); const OptimizeCssAssetsPlugin = require('optimize-css-assets-webpack-plugin'); const CopyWebpackPlugin = require('copy-webpack-plugin'); const ExtraWatchWebpackPlugin = require('extra-watch-webpack-plugin'); -const { ProjextWebpackOpenDevServer } = require('/src/plugins'); +const { + ProjextWebpackOpenDevServer, + ProjextWebpackRuntimeDefinitions, +} = require('/src/plugins'); const { WebpackBrowserDevelopmentConfiguration, @@ -40,6 +43,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { CopyWebpackPlugin.mockReset(); ExtraWatchWebpackPlugin.mockReset(); ProjextWebpackOpenDevServer.mockReset(); + ProjextWebpackRuntimeDefinitions.mockReset(); }); it('should be instantiated with all its dependencies', () => { @@ -170,8 +174,8 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { expect(webpackMock.HotModuleReplacementPluginMock).toHaveBeenCalledTimes(0); expect(webpackMock.NamedModulesPluginMock).toHaveBeenCalledTimes(0); expect(webpackMock.NoEmitOnErrorsPluginMock).toHaveBeenCalledTimes(1); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledTimes(1); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); @@ -283,8 +287,8 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { expect(webpackMock.HotModuleReplacementPluginMock).toHaveBeenCalledTimes(0); expect(webpackMock.NamedModulesPluginMock).toHaveBeenCalledTimes(0); expect(webpackMock.NoEmitOnErrorsPluginMock).toHaveBeenCalledTimes(1); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledTimes(1); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); @@ -403,8 +407,8 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { expect(webpackMock.HotModuleReplacementPluginMock).toHaveBeenCalledTimes(1); expect(webpackMock.NamedModulesPluginMock).toHaveBeenCalledTimes(1); expect(webpackMock.NoEmitOnErrorsPluginMock).toHaveBeenCalledTimes(1); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledTimes(1); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); @@ -516,8 +520,8 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { defaultAttribute: 'async', }); expect(webpackMock.NoEmitOnErrorsPluginMock).toHaveBeenCalledTimes(1); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledTimes(1); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); @@ -659,8 +663,8 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { expect(webpackMock.HotModuleReplacementPluginMock).toHaveBeenCalledTimes(1); expect(webpackMock.NamedModulesPluginMock).toHaveBeenCalledTimes(1); expect(webpackMock.NoEmitOnErrorsPluginMock).toHaveBeenCalledTimes(1); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledTimes(1); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); @@ -809,8 +813,8 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { expect(webpackMock.HotModuleReplacementPluginMock).toHaveBeenCalledTimes(1); expect(webpackMock.NamedModulesPluginMock).toHaveBeenCalledTimes(1); expect(webpackMock.NoEmitOnErrorsPluginMock).toHaveBeenCalledTimes(1); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledTimes(1); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); @@ -956,8 +960,8 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { defaultAttribute: 'async', }); expect(webpackMock.NoEmitOnErrorsPluginMock).toHaveBeenCalledTimes(1); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledTimes(1); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); @@ -1113,8 +1117,8 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { expect(webpackMock.HotModuleReplacementPluginMock).toHaveBeenCalledTimes(1); expect(webpackMock.NamedModulesPluginMock).toHaveBeenCalledTimes(1); expect(webpackMock.NoEmitOnErrorsPluginMock).toHaveBeenCalledTimes(1); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledTimes(1); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); @@ -1270,8 +1274,8 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { expect(webpackMock.HotModuleReplacementPluginMock).toHaveBeenCalledTimes(1); expect(webpackMock.NamedModulesPluginMock).toHaveBeenCalledTimes(1); expect(webpackMock.NoEmitOnErrorsPluginMock).toHaveBeenCalledTimes(1); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledTimes(1); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); @@ -1426,8 +1430,8 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { expect(webpackMock.HotModuleReplacementPluginMock).toHaveBeenCalledTimes(1); expect(webpackMock.NamedModulesPluginMock).toHaveBeenCalledTimes(1); expect(webpackMock.NoEmitOnErrorsPluginMock).toHaveBeenCalledTimes(1); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledTimes(1); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); @@ -1582,8 +1586,8 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { expect(webpackMock.HotModuleReplacementPluginMock).toHaveBeenCalledTimes(1); expect(webpackMock.NamedModulesPluginMock).toHaveBeenCalledTimes(1); expect(webpackMock.NoEmitOnErrorsPluginMock).toHaveBeenCalledTimes(1); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledTimes(1); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); diff --git a/tests/services/configurations/browserProductionConfiguration.test.js b/tests/services/configurations/browserProductionConfiguration.test.js index ce91724..fc13184 100644 --- a/tests/services/configurations/browserProductionConfiguration.test.js +++ b/tests/services/configurations/browserProductionConfiguration.test.js @@ -25,6 +25,7 @@ const TerserPlugin = require('terser-webpack-plugin'); const OptimizeCssAssetsPlugin = require('optimize-css-assets-webpack-plugin'); const CopyWebpackPlugin = require('copy-webpack-plugin'); const ExtraWatchWebpackPlugin = require('extra-watch-webpack-plugin'); +const { ProjextWebpackRuntimeDefinitions } = require('/src/plugins'); const { WebpackBrowserProductionConfiguration, @@ -43,6 +44,7 @@ describe('services/configurations:browserProductionConfiguration', () => { CompressionPlugin.mockReset(); CopyWebpackPlugin.mockReset(); ExtraWatchWebpackPlugin.mockReset(); + ProjextWebpackRuntimeDefinitions.mockReset(); }); it('should be instantiated with all its dependencies', () => { @@ -164,8 +166,8 @@ describe('services/configurations:browserProductionConfiguration', () => { expect(ScriptExtHtmlWebpackPlugin).toHaveBeenCalledWith({ defaultAttribute: 'async', }); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledTimes(1); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); expect(TerserPlugin).toHaveBeenCalledTimes(1); expect(TerserPlugin).toHaveBeenCalledWith({ sourceMap: false, @@ -280,8 +282,8 @@ describe('services/configurations:browserProductionConfiguration', () => { expect(ScriptExtHtmlWebpackPlugin).toHaveBeenCalledWith({ defaultAttribute: 'async', }); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledTimes(1); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); expect(TerserPlugin).toHaveBeenCalledTimes(0); expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); @@ -391,8 +393,8 @@ describe('services/configurations:browserProductionConfiguration', () => { expect(ScriptExtHtmlWebpackPlugin).toHaveBeenCalledWith({ defaultAttribute: 'async', }); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledTimes(1); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); expect(TerserPlugin).toHaveBeenCalledTimes(1); expect(TerserPlugin).toHaveBeenCalledWith({ sourceMap: false, @@ -503,8 +505,8 @@ describe('services/configurations:browserProductionConfiguration', () => { expect(ScriptExtHtmlWebpackPlugin).toHaveBeenCalledWith({ defaultAttribute: 'async', }); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledTimes(1); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); expect(TerserPlugin).toHaveBeenCalledTimes(1); expect(TerserPlugin).toHaveBeenCalledWith({ sourceMap: false, @@ -619,8 +621,8 @@ describe('services/configurations:browserProductionConfiguration', () => { expect(ScriptExtHtmlWebpackPlugin).toHaveBeenCalledWith({ defaultAttribute: 'async', }); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledTimes(1); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); expect(TerserPlugin).toHaveBeenCalledTimes(1); expect(TerserPlugin).toHaveBeenCalledWith({ sourceMap: true, @@ -722,8 +724,8 @@ describe('services/configurations:browserProductionConfiguration', () => { }); expect(HtmlWebpackPlugin).toHaveBeenCalledTimes(0); expect(ScriptExtHtmlWebpackPlugin).toHaveBeenCalledTimes(0); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledTimes(1); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); expect(TerserPlugin).toHaveBeenCalledTimes(1); expect(TerserPlugin).toHaveBeenCalledWith({ sourceMap: false, @@ -825,8 +827,8 @@ describe('services/configurations:browserProductionConfiguration', () => { }); expect(HtmlWebpackPlugin).toHaveBeenCalledTimes(0); expect(ScriptExtHtmlWebpackPlugin).toHaveBeenCalledTimes(0); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledTimes(1); - expect(webpackMock.DefinePluginMock).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); expect(TerserPlugin).toHaveBeenCalledTimes(1); expect(TerserPlugin).toHaveBeenCalledWith({ sourceMap: false, From 743905f3878b055171a8413e2226a999f00a38c7 Mon Sep 17 00:00:00 2001 From: homer0 Date: Mon, 22 Jul 2019 11:58:46 -0300 Subject: [PATCH 20/24] refactor(plugins/runtimeDefinitions): require a list of files to avoid setting all files as non-cachable --- src/plugins/runtimeDefinitions/index.js | 25 +++++- .../browserDevelopmentConfiguration.js | 15 +++- .../browserProductionConfiguration.js | 9 ++- .../plugins/runtimeDefinitions/index.test.js | 26 +++++- .../browserDevelopmentConfiguration.test.js | 81 ++++++++++++++----- .../browserProductionConfiguration.test.js | 56 +++++++++---- 6 files changed, 165 insertions(+), 47 deletions(-) diff --git a/src/plugins/runtimeDefinitions/index.js b/src/plugins/runtimeDefinitions/index.js index 549deaa..f485a69 100644 --- a/src/plugins/runtimeDefinitions/index.js +++ b/src/plugins/runtimeDefinitions/index.js @@ -6,13 +6,34 @@ const { DefinePlugin } = require('webpack'); */ class ProjextWebpackRuntimeDefinitions { /** + * @param {Array} files The list of files that need to + * change in order to reload + * the definitions. * @param {Function():Object} definitionsFn When this function is called, * it should return the object * with the definitions. * @param {ProjextWebpackRuntimeDefinitionsOptions} [options={}] The options to customize the * plugin instance. + * @throws {Error} If `files` is not an Array. + * @throws {Error} If `files` is empty. + * @throws {Error} If `definitionsFn` is not a function. */ - constructor(definitionsFn, options = {}) { + constructor(files, definitionsFn, options = {}) { + if (!Array.isArray(files) || !files.length) { + throw new Error('You need to provide a valid files list'); + } + + if (typeof definitionsFn !== 'function') { + throw new Error('You need to provide a valid definitions function'); + } + + /** + * The list of files that need to change in order to reload the definitions. + * @type {Array} + * @access protected + * @ignore + */ + this._files = files; /** * The function that will generate the definitions. * @type {Function():Object} @@ -85,7 +106,7 @@ class ProjextWebpackRuntimeDefinitions { (settings, key) => Object.assign({}, settings, { [key]: DefinePlugin.runtimeValue( () => this._getValue(key), - true + this._files ), }), {} diff --git a/src/services/configurations/browserDevelopmentConfiguration.js b/src/services/configurations/browserDevelopmentConfiguration.js index c0e7d97..e092225 100644 --- a/src/services/configurations/browserDevelopmentConfiguration.js +++ b/src/services/configurations/browserDevelopmentConfiguration.js @@ -1,4 +1,5 @@ -const extend = require('extend'); +const path = require('path'); +const ObjectUtils = require('wootils/shared/objectUtils'); const HtmlWebpackPlugin = require('html-webpack-plugin'); const ScriptExtHtmlWebpackPlugin = require('script-ext-html-webpack-plugin'); const MiniCssExtractPlugin = require('mini-css-extract-plugin'); @@ -101,7 +102,7 @@ class WebpackBrowserDevelopmentConfiguration extends ConfigurationFile { } = params; // Define the basic stuff: entry, output and mode. const config = { - entry: extend(true, {}, entry), + entry: ObjectUtils.copy(entry), output: { path: `./${target.folders.build}`, filename: output.js, @@ -131,7 +132,13 @@ class WebpackBrowserDevelopmentConfiguration extends ConfigurationFile { // To avoid pushing assets with errors. new NoEmitOnErrorsPlugin(), // To add the _'browser env variables'_. - new ProjextWebpackRuntimeDefinitions(definitions), + new ProjextWebpackRuntimeDefinitions( + Object.keys(entry).reduce( + (current, key) => [...current, ...entry[key].filter((file) => path.isAbsolute(file))], + [] + ), + definitions + ), // To optimize the SCSS and remove repeated declarations. new OptimizeCssAssetsPlugin(), // Copy the files the target specified on its settings. @@ -257,7 +264,7 @@ class WebpackBrowserDevelopmentConfiguration extends ConfigurationFile { */ _normalizeTargetDevServerSettings(target) { // Get a new copy of the config to work with. - const config = extend(true, {}, target.devServer); + const config = ObjectUtils.copy(target.devServer); /** * Set a flag to know if at least one SSL file was sent. * This flag is also used when reading the `proxied` settings to determine the default diff --git a/src/services/configurations/browserProductionConfiguration.js b/src/services/configurations/browserProductionConfiguration.js index 9581f80..ffb91b0 100644 --- a/src/services/configurations/browserProductionConfiguration.js +++ b/src/services/configurations/browserProductionConfiguration.js @@ -1,3 +1,4 @@ +const path = require('path'); const HtmlWebpackPlugin = require('html-webpack-plugin'); const ScriptExtHtmlWebpackPlugin = require('script-ext-html-webpack-plugin'); const CompressionPlugin = require('compression-webpack-plugin'); @@ -122,7 +123,13 @@ class WebpackBrowserProductionConfiguration extends ConfigurationFile { ] ), // To add the _'browser env variables'_. - new ProjextWebpackRuntimeDefinitions(definitions), + new ProjextWebpackRuntimeDefinitions( + Object.keys(entry).reduce( + (current, key) => [...current, ...entry[key].filter((file) => path.isAbsolute(file))], + [] + ), + definitions + ), // To optimize the SCSS and remove repeated declarations. new OptimizeCssAssetsPlugin(), // To compress the emitted assets using gzip, if the target is not a library. diff --git a/tests/plugins/runtimeDefinitions/index.test.js b/tests/plugins/runtimeDefinitions/index.test.js index a8049b7..55834c5 100644 --- a/tests/plugins/runtimeDefinitions/index.test.js +++ b/tests/plugins/runtimeDefinitions/index.test.js @@ -15,7 +15,7 @@ describe('plugins:runtimeDefinitions', () => { let sut = null; let result = null; // When - sut = new ProjextWebpackRuntimeDefinitions(() => {}); + sut = new ProjextWebpackRuntimeDefinitions(['file'], () => {}); result = sut.getOptions(); // Then expect(sut).toBeInstanceOf(ProjextWebpackRuntimeDefinitions); @@ -24,6 +24,18 @@ describe('plugins:runtimeDefinitions', () => { }); }); + it('should throw error when instantiated without a files list', () => { + // Given/When/Then + expect(() => new ProjextWebpackRuntimeDefinitions()) + .toThrow(/You need to provide a valid files list/i); + }); + + it('should throw error when instantiated without a definitions function', () => { + // Given/When/Then + expect(() => new ProjextWebpackRuntimeDefinitions(['file'])) + .toThrow(/You need to provide a valid definitions function/i); + }); + it('should be instantiated with custom option', () => { // Given const options = { @@ -32,7 +44,7 @@ describe('plugins:runtimeDefinitions', () => { let sut = null; let result = null; // When - sut = new ProjextWebpackRuntimeDefinitions(() => {}, options); + sut = new ProjextWebpackRuntimeDefinitions(['file'], () => {}, options); result = sut.getOptions(); // Then expect(sut).toBeInstanceOf(ProjextWebpackRuntimeDefinitions); @@ -42,6 +54,7 @@ describe('plugins:runtimeDefinitions', () => { it('should create the DefinePlugin and hook to the compilation', () => { // Given webpackMock.DefinePluginRuntimeValueMock.mockImplementationOnce((fn) => fn()); + const files = ['file']; const definitionVarName = 'ROSARIO'; const definitionVarValue = 'Charito!'; const definitionFn = jest.fn(() => ({ @@ -56,10 +69,15 @@ describe('plugins:runtimeDefinitions', () => { }; let sut = null; // When - sut = new ProjextWebpackRuntimeDefinitions(definitionFn); + sut = new ProjextWebpackRuntimeDefinitions(files, definitionFn); sut.apply(compiler); // Then expect(definitionFn).toHaveBeenCalledTimes(1); + expect(webpackMock.DefinePluginRuntimeValueMock).toHaveBeenCalledTimes(1); + expect(webpackMock.DefinePluginRuntimeValueMock).toHaveBeenCalledWith( + expect.any(Function), + files + ); expect(webpackMock.DefinePluginMock).toHaveBeenCalledTimes(1); expect(webpackMock.DefinePluginMock).toHaveBeenCalledWith({ [definitionVarName]: definitionVarValue, @@ -85,7 +103,7 @@ describe('plugins:runtimeDefinitions', () => { let sut = null; let onCompile = null; // When - sut = new ProjextWebpackRuntimeDefinitions(definitionFn); + sut = new ProjextWebpackRuntimeDefinitions(['file'], definitionFn); sut.apply(compiler); [[, onCompile]] = compiler.hooks.compile.tap.mock.calls; onCompile(); diff --git a/tests/services/configurations/browserDevelopmentConfiguration.test.js b/tests/services/configurations/browserDevelopmentConfiguration.test.js index 81e5604..72461bc 100644 --- a/tests/services/configurations/browserDevelopmentConfiguration.test.js +++ b/tests/services/configurations/browserDevelopmentConfiguration.test.js @@ -112,8 +112,9 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { }, }; const definitions = 'definitions'; + const entryFile = '/index.js'; const entry = { - [target.name]: ['index.js'], + [target.name]: [entryFile], }; const output = { js: 'statics/js/build.js', @@ -175,7 +176,10 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { expect(webpackMock.NamedModulesPluginMock).toHaveBeenCalledTimes(0); expect(webpackMock.NoEmitOnErrorsPluginMock).toHaveBeenCalledTimes(1); expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); - expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith( + [entryFile], + definitions + ); expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); @@ -228,8 +232,9 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { }, }; const definitions = 'definitions'; + const entryFile = '/index.js'; const entry = { - [target.name]: ['index.js'], + [target.name]: [entryFile], }; const output = { js: 'statics/js/build.js', @@ -288,7 +293,10 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { expect(webpackMock.NamedModulesPluginMock).toHaveBeenCalledTimes(0); expect(webpackMock.NoEmitOnErrorsPluginMock).toHaveBeenCalledTimes(1); expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); - expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith( + [entryFile], + definitions + ); expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); @@ -339,8 +347,9 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { }, }; const definitions = 'definitions'; + const entryFile = '/index.js'; const entry = { - [target.name]: ['index.js'], + [target.name]: [entryFile], }; const output = { js: 'statics/js/build.js', @@ -408,7 +417,10 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { expect(webpackMock.NamedModulesPluginMock).toHaveBeenCalledTimes(1); expect(webpackMock.NoEmitOnErrorsPluginMock).toHaveBeenCalledTimes(1); expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); - expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith( + [entryFile], + definitions + ); expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); @@ -458,8 +470,9 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { }, }; const definitions = 'definitions'; + const entryFile = '/index.js'; const entry = { - [target.name]: ['index.js'], + [target.name]: [entryFile], }; const output = { js: 'statics/js/build.js', @@ -521,7 +534,10 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { }); expect(webpackMock.NoEmitOnErrorsPluginMock).toHaveBeenCalledTimes(1); expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); - expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith( + [entryFile], + definitions + ); expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); @@ -582,7 +598,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { }; const definitions = 'definitions'; const babelPolyfillEntry = `${webpackPluginInfo.name}/${webpackPluginInfo.babelPolyfill}`; - const targetEntry = 'index.js'; + const targetEntry = '/index.js'; const entry = { [target.name]: [ babelPolyfillEntry, @@ -664,7 +680,10 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { expect(webpackMock.NamedModulesPluginMock).toHaveBeenCalledTimes(1); expect(webpackMock.NoEmitOnErrorsPluginMock).toHaveBeenCalledTimes(1); expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); - expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith( + [targetEntry], + definitions + ); expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); @@ -731,7 +750,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { }; const definitions = 'definitions'; const babelPolyfillEntry = `${webpackPluginInfo.name}/${webpackPluginInfo.babelPolyfill}`; - const targetEntry = 'index.js'; + const targetEntry = '/index.js'; const entry = { [target.name]: [ babelPolyfillEntry, @@ -814,7 +833,10 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { expect(webpackMock.NamedModulesPluginMock).toHaveBeenCalledTimes(1); expect(webpackMock.NoEmitOnErrorsPluginMock).toHaveBeenCalledTimes(1); expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); - expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith( + [targetEntry], + definitions + ); expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); @@ -884,7 +906,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { }; const definitions = 'definitions'; const babelPolyfillEntry = `${webpackPluginInfo.name}/${webpackPluginInfo.babelPolyfill}`; - const targetEntry = 'index.js'; + const targetEntry = '/index.js'; const entry = { [target.name]: [ babelPolyfillEntry, @@ -961,7 +983,10 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { }); expect(webpackMock.NoEmitOnErrorsPluginMock).toHaveBeenCalledTimes(1); expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); - expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith( + [targetEntry], + definitions + ); expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); @@ -1034,7 +1059,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { }; const definitions = 'definitions'; const babelPolyfillEntry = `${webpackPluginInfo.name}/${webpackPluginInfo.babelPolyfill}`; - const targetEntry = 'index.js'; + const targetEntry = '/index.js'; const entry = { [target.name]: [ babelPolyfillEntry, @@ -1118,7 +1143,10 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { expect(webpackMock.NamedModulesPluginMock).toHaveBeenCalledTimes(1); expect(webpackMock.NoEmitOnErrorsPluginMock).toHaveBeenCalledTimes(1); expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); - expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith( + [targetEntry], + definitions + ); expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); @@ -1192,7 +1220,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { }; const definitions = 'definitions'; const babelPolyfillEntry = `${webpackPluginInfo.name}/${webpackPluginInfo.babelPolyfill}`; - const targetEntry = 'index.js'; + const targetEntry = '/index.js'; const entry = { [target.name]: [ babelPolyfillEntry, @@ -1275,7 +1303,10 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { expect(webpackMock.NamedModulesPluginMock).toHaveBeenCalledTimes(1); expect(webpackMock.NoEmitOnErrorsPluginMock).toHaveBeenCalledTimes(1); expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); - expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith( + [targetEntry], + definitions + ); expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); @@ -1347,7 +1378,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { }; const definitions = 'definitions'; const babelPolyfillEntry = `${webpackPluginInfo.name}/${webpackPluginInfo.babelPolyfill}`; - const targetEntry = 'index.js'; + const targetEntry = '/index.js'; const entry = { [target.name]: [ babelPolyfillEntry, @@ -1431,7 +1462,10 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { expect(webpackMock.NamedModulesPluginMock).toHaveBeenCalledTimes(1); expect(webpackMock.NoEmitOnErrorsPluginMock).toHaveBeenCalledTimes(1); expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); - expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith( + [targetEntry], + definitions + ); expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); @@ -1503,7 +1537,7 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { }; const definitions = 'definitions'; const babelPolyfillEntry = `${webpackPluginInfo.name}/${webpackPluginInfo.babelPolyfill}`; - const targetEntry = 'index.js'; + const targetEntry = '/index.js'; const entry = { [target.name]: [ babelPolyfillEntry, @@ -1587,7 +1621,10 @@ describe('services/configurations:browserDevelopmentConfiguration', () => { expect(webpackMock.NamedModulesPluginMock).toHaveBeenCalledTimes(1); expect(webpackMock.NoEmitOnErrorsPluginMock).toHaveBeenCalledTimes(1); expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); - expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith( + [targetEntry], + definitions + ); expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledWith(copy); diff --git a/tests/services/configurations/browserProductionConfiguration.test.js b/tests/services/configurations/browserProductionConfiguration.test.js index fc13184..412dfb6 100644 --- a/tests/services/configurations/browserProductionConfiguration.test.js +++ b/tests/services/configurations/browserProductionConfiguration.test.js @@ -106,8 +106,9 @@ describe('services/configurations:browserProductionConfiguration', () => { }, }; const definitions = 'definitions'; + const entryFile = '/index.js'; const entry = { - [target.name]: ['index.js'], + [target.name]: [entryFile], }; const output = { js: 'statics/js/build.js', @@ -167,7 +168,10 @@ describe('services/configurations:browserProductionConfiguration', () => { defaultAttribute: 'async', }); expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); - expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith( + [entryFile], + definitions + ); expect(TerserPlugin).toHaveBeenCalledTimes(1); expect(TerserPlugin).toHaveBeenCalledWith({ sourceMap: false, @@ -222,8 +226,9 @@ describe('services/configurations:browserProductionConfiguration', () => { }, }; const definitions = 'definitions'; + const entryFile = '/index.js'; const entry = { - [target.name]: ['index.js'], + [target.name]: [entryFile], }; const output = { js: 'statics/js/build.js', @@ -283,7 +288,10 @@ describe('services/configurations:browserProductionConfiguration', () => { defaultAttribute: 'async', }); expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); - expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith( + [entryFile], + definitions + ); expect(TerserPlugin).toHaveBeenCalledTimes(0); expect(OptimizeCssAssetsPlugin).toHaveBeenCalledTimes(1); expect(CopyWebpackPlugin).toHaveBeenCalledTimes(1); @@ -332,8 +340,9 @@ describe('services/configurations:browserProductionConfiguration', () => { }, }; const definitions = 'definitions'; + const entryFile = '/index.js'; const entry = { - [target.name]: ['index.js'], + [target.name]: [entryFile], }; const output = { js: 'statics/js/build.js', @@ -394,7 +403,10 @@ describe('services/configurations:browserProductionConfiguration', () => { defaultAttribute: 'async', }); expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); - expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith( + [entryFile], + definitions + ); expect(TerserPlugin).toHaveBeenCalledTimes(1); expect(TerserPlugin).toHaveBeenCalledWith({ sourceMap: false, @@ -448,8 +460,9 @@ describe('services/configurations:browserProductionConfiguration', () => { }, }; const definitions = 'definitions'; + const entryFile = '/index.js'; const entry = { - [target.name]: ['index.js'], + [target.name]: [entryFile], }; const output = { js: 'statics/js/build.js', @@ -506,7 +519,10 @@ describe('services/configurations:browserProductionConfiguration', () => { defaultAttribute: 'async', }); expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); - expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith( + [entryFile], + definitions + ); expect(TerserPlugin).toHaveBeenCalledTimes(1); expect(TerserPlugin).toHaveBeenCalledWith({ sourceMap: false, @@ -560,8 +576,9 @@ describe('services/configurations:browserProductionConfiguration', () => { }, }; const definitions = 'definitions'; + const entryFile = '/index.js'; const entry = { - [target.name]: ['index.js'], + [target.name]: [entryFile], }; const output = { js: 'statics/js/build.js', @@ -622,7 +639,10 @@ describe('services/configurations:browserProductionConfiguration', () => { defaultAttribute: 'async', }); expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); - expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith( + [entryFile], + definitions + ); expect(TerserPlugin).toHaveBeenCalledTimes(1); expect(TerserPlugin).toHaveBeenCalledWith({ sourceMap: true, @@ -674,8 +694,9 @@ describe('services/configurations:browserProductionConfiguration', () => { }, }; const definitions = 'definitions'; + const entryFile = '/index.js'; const entry = { - [target.name]: ['index.js'], + [target.name]: [entryFile], }; const output = { js: 'statics/js/build.js', @@ -725,7 +746,10 @@ describe('services/configurations:browserProductionConfiguration', () => { expect(HtmlWebpackPlugin).toHaveBeenCalledTimes(0); expect(ScriptExtHtmlWebpackPlugin).toHaveBeenCalledTimes(0); expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); - expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith( + [entryFile], + definitions + ); expect(TerserPlugin).toHaveBeenCalledTimes(1); expect(TerserPlugin).toHaveBeenCalledWith({ sourceMap: false, @@ -777,8 +801,9 @@ describe('services/configurations:browserProductionConfiguration', () => { }, }; const definitions = 'definitions'; + const entryFile = '/index.js'; const entry = { - [target.name]: ['index.js'], + [target.name]: [entryFile], }; const output = { js: 'statics/js/build.js', @@ -828,7 +853,10 @@ describe('services/configurations:browserProductionConfiguration', () => { expect(HtmlWebpackPlugin).toHaveBeenCalledTimes(0); expect(ScriptExtHtmlWebpackPlugin).toHaveBeenCalledTimes(0); expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledTimes(1); - expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith(definitions); + expect(ProjextWebpackRuntimeDefinitions).toHaveBeenCalledWith( + [entryFile], + definitions + ); expect(TerserPlugin).toHaveBeenCalledTimes(1); expect(TerserPlugin).toHaveBeenCalledWith({ sourceMap: false, From f8a043ee4a0353448ef92d28a25de3bc0c3e738a Mon Sep 17 00:00:00 2001 From: homer0 Date: Sat, 20 Jul 2019 07:01:09 -0300 Subject: [PATCH 21/24] chore(project): update dependencies and add @babel/plugin-transform-runtime for the tests --- package.json | 49 +-- yarn.lock | 843 +++++++++++++++++++++++++++------------------------ 2 files changed, 474 insertions(+), 418 deletions(-) diff --git a/package.json b/package.json index 8d62b56..0c71b76 100644 --- a/package.json +++ b/package.json @@ -8,57 +8,58 @@ "license": "MIT", "dependencies": { "projext": "^6.0.6", - "wootils": "^2.3.0", + "wootils": "^2.5.0", "jimple": "^1.5.0", - "fs-extra": "^8.0.1", + "fs-extra": "^8.1.0", "extend": "^3.0.2", - "webpack": "^4.34.0", - "webpack-cli": "^3.3.4", - "webpack-dev-server": "3.5.0", - "mini-css-extract-plugin": "0.7.0", + "webpack": "^4.36.1", + "webpack-cli": "^3.3.6", + "webpack-dev-server": "^3.7.2", + "mini-css-extract-plugin": "0.8.0", "html-webpack-plugin": "^3.2.0", - "script-ext-html-webpack-plugin": "^2.1.3", - "compression-webpack-plugin": "2.0.0", - "terser-webpack-plugin": "1.3.0", - "optimize-css-assets-webpack-plugin": "^5.0.1", + "script-ext-html-webpack-plugin": "^2.1.4", + "compression-webpack-plugin": "^3.0.0", + "terser-webpack-plugin": "^1.3.0", + "optimize-css-assets-webpack-plugin": "^5.0.3", "copy-webpack-plugin": "^5.0.3", - "@babel/core": "7.4.4", + "@babel/core": "7.5.5", "node-sass": "^4.12.0", "babel-loader": "^8.0.6", - "css-loader": "2.1.1", + "css-loader": "^3.1.0", "sass-loader": "^7.1.0", "style-loader": "0.23.1", - "raw-loader": "2.0.0", - "file-loader": "3.0.1", - "url-loader": "1.1.2", + "raw-loader": "^3.1.0", + "file-loader": "^4.1.0", + "url-loader": "^2.1.0", "resolve-url-loader": "^3.1.0", "source-map-loader": "0.2.4", "webpack-dev-middleware": "^3.7.0", "webpack-hot-middleware": "^2.25.0", - "terser": "4.0.0", + "terser": "^4.1.2", "opener": "^1.5.1" }, "devDependencies": { "eslint": "^5.16.0", - "eslint-config-airbnb-base": "^13.1.0", - "eslint-plugin-import": "^2.17.3", + "eslint-config-airbnb-base": "^13.2.0", + "eslint-plugin-import": "^2.18.2", "eslint-plugin-node": "^9.1.0", - "@babel/preset-env": "7.4.4", - "jest-ex": "^6.0.1", + "@babel/preset-env": "7.5.5", + "@babel/plugin-transform-runtime": "7.5.5", + "jest-ex": "^6.1.1", "jest-cli": "^24.8.0", - "jasmine-expect": "^4.0.1", - "jimpex": "^3.0.0", + "jasmine-expect": "^4.0.2", + "jimpex": "^4.0.1", "esdoc": "^1.1.0", "esdoc-standard-plugin": "^1.0.0", "esdoc-node": "^1.0.4", - "leasot": "^7.4.0", - "coveralls": "^3.0.4" + "leasot": "^8.0.0", + "coveralls": "^3.0.5" }, "engine-strict": true, "engines": { diff --git a/yarn.lock b/yarn.lock index 7cda917..e7ab52f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -66,7 +66,7 @@ semver "^5.4.1" source-map "^0.5.0" -"@babel/core@^7.1.0": +"@babel/core@7.5.5", "@babel/core@^7.1.0": version "7.5.5" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.5.5.tgz#17b2686ef0d6bc58f963dddd68ab669755582c30" integrity sha512-i4qoSr2KTtce0DmkuuQBV4AuQgGPUcPXMr9L5MyYAtk06z068lQ10a4O009fe5OB/DfNV+h+qqT7ddNV8UnRjg== @@ -337,7 +337,7 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-syntax-object-rest-spread" "^7.2.0" -"@babel/plugin-proposal-object-rest-spread@^7.4.4", "@babel/plugin-proposal-object-rest-spread@^7.5.4": +"@babel/plugin-proposal-object-rest-spread@^7.4.4", "@babel/plugin-proposal-object-rest-spread@^7.5.4", "@babel/plugin-proposal-object-rest-spread@^7.5.5": version "7.5.5" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.5.5.tgz#61939744f71ba76a3ae46b5eea18a54c16d22e58" integrity sha512-F2DxJJSQ7f64FyTVl5cw/9MWn6naXGdk3Q3UhDbFEEHv+EilCPoeRD3Zh/Utx1CJz4uyKlQ4uH+bJPbEhMV7Zw== @@ -441,7 +441,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-block-scoping@^7.4.4": +"@babel/plugin-transform-block-scoping@^7.4.4", "@babel/plugin-transform-block-scoping@^7.5.5": version "7.5.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.5.5.tgz#a35f395e5402822f10d2119f6f8e045e3639a2ce" integrity sha512-82A3CLRRdYubkG85lKwhZB0WZoHxLGsJdux/cOVaJCJpvYFl1LVzAIFyRsa7CvXqW8rBM4Zf3Bfn8PHt5DP0Sg== @@ -449,7 +449,7 @@ "@babel/helper-plugin-utils" "^7.0.0" lodash "^4.17.13" -"@babel/plugin-transform-classes@^7.4.4": +"@babel/plugin-transform-classes@^7.4.4", "@babel/plugin-transform-classes@^7.5.5": version "7.5.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.5.5.tgz#d094299d9bd680a14a2a0edae38305ad60fb4de9" integrity sha512-U2htCNK/6e9K7jGyJ++1p5XRU+LJjrwtoiVn9SzRlDT2KubcZ11OOwy3s24TjHxPgxNwonCYP7U2K51uVYCMDg== @@ -588,7 +588,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-object-super@^7.2.0": +"@babel/plugin-transform-object-super@^7.2.0", "@babel/plugin-transform-object-super@^7.5.5": version "7.5.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.5.5.tgz#c70021df834073c65eb613b8679cc4a381d1a9f9" integrity sha512-un1zJQAhSosGFBduPgN/YFNvWVpRuHKU7IHBglLoLZsGmruJPOo6pbInneflUdmq7YvSVqhpPs5zdBvLnteltQ== @@ -646,6 +646,16 @@ resolve "^1.8.1" semver "^5.5.1" +"@babel/plugin-transform-runtime@7.5.5": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.5.5.tgz#a6331afbfc59189d2135b2e09474457a8e3d28bc" + integrity sha512-6Xmeidsun5rkwnGfMOp6/z9nSzWpHFNVr2Jx7kwoq4mVatQfQx5S56drBgEHF+XQbKOdIaOiMIINvp/kAwMN+w== + dependencies: + "@babel/helper-module-imports" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" + resolve "^1.8.1" + semver "^5.5.1" + "@babel/plugin-transform-shorthand-properties@^7.2.0": version "7.2.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.2.0.tgz#6333aee2f8d6ee7e28615457298934a3b46198f0" @@ -819,6 +829,62 @@ js-levenshtein "^1.1.3" semver "^5.5.0" +"@babel/preset-env@7.5.5": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.5.5.tgz#bc470b53acaa48df4b8db24a570d6da1fef53c9a" + integrity sha512-GMZQka/+INwsMz1A5UEql8tG015h5j/qjptpKY2gJ7giy8ohzU710YciJB5rcKsWGWHiW3RUnHib0E5/m3Tp3A== + dependencies: + "@babel/helper-module-imports" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-proposal-async-generator-functions" "^7.2.0" + "@babel/plugin-proposal-dynamic-import" "^7.5.0" + "@babel/plugin-proposal-json-strings" "^7.2.0" + "@babel/plugin-proposal-object-rest-spread" "^7.5.5" + "@babel/plugin-proposal-optional-catch-binding" "^7.2.0" + "@babel/plugin-proposal-unicode-property-regex" "^7.4.4" + "@babel/plugin-syntax-async-generators" "^7.2.0" + "@babel/plugin-syntax-dynamic-import" "^7.2.0" + "@babel/plugin-syntax-json-strings" "^7.2.0" + "@babel/plugin-syntax-object-rest-spread" "^7.2.0" + "@babel/plugin-syntax-optional-catch-binding" "^7.2.0" + "@babel/plugin-transform-arrow-functions" "^7.2.0" + "@babel/plugin-transform-async-to-generator" "^7.5.0" + "@babel/plugin-transform-block-scoped-functions" "^7.2.0" + "@babel/plugin-transform-block-scoping" "^7.5.5" + "@babel/plugin-transform-classes" "^7.5.5" + "@babel/plugin-transform-computed-properties" "^7.2.0" + "@babel/plugin-transform-destructuring" "^7.5.0" + "@babel/plugin-transform-dotall-regex" "^7.4.4" + "@babel/plugin-transform-duplicate-keys" "^7.5.0" + "@babel/plugin-transform-exponentiation-operator" "^7.2.0" + "@babel/plugin-transform-for-of" "^7.4.4" + "@babel/plugin-transform-function-name" "^7.4.4" + "@babel/plugin-transform-literals" "^7.2.0" + "@babel/plugin-transform-member-expression-literals" "^7.2.0" + "@babel/plugin-transform-modules-amd" "^7.5.0" + "@babel/plugin-transform-modules-commonjs" "^7.5.0" + "@babel/plugin-transform-modules-systemjs" "^7.5.0" + "@babel/plugin-transform-modules-umd" "^7.2.0" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.4.5" + "@babel/plugin-transform-new-target" "^7.4.4" + "@babel/plugin-transform-object-super" "^7.5.5" + "@babel/plugin-transform-parameters" "^7.4.4" + "@babel/plugin-transform-property-literals" "^7.2.0" + "@babel/plugin-transform-regenerator" "^7.4.5" + "@babel/plugin-transform-reserved-words" "^7.2.0" + "@babel/plugin-transform-shorthand-properties" "^7.2.0" + "@babel/plugin-transform-spread" "^7.2.0" + "@babel/plugin-transform-sticky-regex" "^7.2.0" + "@babel/plugin-transform-template-literals" "^7.4.4" + "@babel/plugin-transform-typeof-symbol" "^7.2.0" + "@babel/plugin-transform-unicode-regex" "^7.4.4" + "@babel/types" "^7.5.5" + browserslist "^4.6.0" + core-js-compat "^3.1.1" + invariant "^2.2.2" + js-levenshtein "^1.1.3" + semver "^5.5.0" + "@babel/preset-flow@7.0.0": version "7.0.0" resolved "https://registry.yarnpkg.com/@babel/preset-flow/-/preset-flow-7.0.0.tgz#afd764835d9535ec63d8c7d4caf1c06457263da2" @@ -1029,18 +1095,26 @@ "@types/istanbul-reports" "^1.1.1" "@types/yargs" "^12.0.9" -"@mrmlnc/readdir-enhanced@^2.2.1": - version "2.2.1" - resolved "https://registry.yarnpkg.com/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz#524af240d1a360527b730475ecfa1344aa540dde" - integrity sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g== +"@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" + integrity sha512-NT/skIZjgotDSiXs0WqYhgcuBKhUMgfekCmCGtkUAiLqZdOnrdjmZr9wRl3ll64J9NF79uZ4fk16Dx0yMc/Xbg== dependencies: - call-me-maybe "^1.0.1" - glob-to-regexp "^0.3.0" + "@nodelib/fs.stat" "2.0.1" + run-parallel "^1.1.9" -"@nodelib/fs.stat@^1.1.2": - version "1.1.3" - resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz#2b5a3ab3f918cca48a8c754c08168e3f03eba61b" - integrity sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw== +"@nodelib/fs.stat@2.0.1", "@nodelib/fs.stat@^2.0.1": + version "2.0.1" + resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.1.tgz#814f71b1167390cfcb6a6b3d9cdeb0951a192c14" + integrity sha512-+RqhBlLn6YRBGOIoVYthsG0J9dfpO79eJyN7BYBkZJtfqrBwf2KK+rD/M/yjZR6WBmIhAgOV7S60eCgaSWtbFw== + +"@nodelib/fs.walk@^1.2.1": + version "1.2.2" + resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.2.tgz#6a6450c5e17012abd81450eb74949a4d970d2807" + integrity sha512-J/DR3+W12uCzAJkw7niXDcqcKBg6+5G5Q/ZpThpGNzAUz70eOR6RV4XnnSN01qHZiVl0eavoxJsBypQoKsV2QQ== + dependencies: + "@nodelib/fs.scandir" "2.1.1" + fastq "^1.6.0" "@types/babel__core@^7.1.0": version "7.1.2" @@ -1349,9 +1423,9 @@ acorn@^5.5.3: integrity sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw== acorn@^6.0.1, acorn@^6.0.7, acorn@^6.2.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.2.0.tgz#67f0da2fc339d6cfb5d6fb244fd449f33cd8bbe3" - integrity sha512-8oe72N3WPMjA+2zVG71Ia0nXZ8DpQH+QyyHO+p06jT8eg8FGG3FbcUIi8KziHlAfheJQZeoqbvq1mQSQHXKYLw== + version "6.2.1" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.2.1.tgz#3ed8422d6dec09e6121cc7a843ca86a330a86b51" + integrity sha512-JD0xT5FCRDNyjDda3Lrg/IxFscp9q4tiYtxE1/nOzlKCk7hIRuYjhq1kCNkbPjMRMZuFq20HNQn1I9k8Oj0E+Q== add-matchers@0.6.2: version "0.6.2" @@ -1529,13 +1603,18 @@ array-includes@^3.0.3: define-properties "^1.1.2" es-abstract "^1.7.0" -array-union@^1.0.1, array-union@^1.0.2: +array-union@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" integrity sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk= dependencies: array-uniq "^1.0.1" +array-union@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" + integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== + array-uniq@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" @@ -1624,7 +1703,7 @@ async@^2.5.0: dependencies: lodash "^4.17.14" -async@^3.0.1: +async@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/async/-/async-3.1.0.tgz#42b3b12ae1b74927b5217d8c0016baaf62463772" integrity sha512-4vx/aaY6j/j3Lw3fbCHNWP0pPaTCew3F6F3hYyl/tHs/ndmV1q7NW9T5yuJ2XAGwdQrP+6Wu20x06U4APo/iQQ== @@ -1732,10 +1811,11 @@ babel-plugin-dynamic-import-node@^2.3.0: object.assign "^4.1.0" babel-plugin-istanbul@^5.1.0: - version "5.1.4" - resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-5.1.4.tgz#841d16b9a58eeb407a0ddce622ba02fe87a752ba" - integrity sha512-dySz4VJMH+dpndj0wjJ8JPs/7i1TdSPb1nRrn56/92pKOF9VKC1FMFJmMXjzlGGusnCAqujP6PBCiKq0sVA+YQ== + version "5.2.0" + resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-5.2.0.tgz#df4ade83d897a92df069c4d9a25cf2671293c854" + integrity sha512-5LphC0USA8t4i1zCtjbbNb6jJj/9+X6P37Qfirc/70EQ34xKlMW+a1RHGwxGI+SwWpNwZ27HqvzAobeqaXwiZw== dependencies: + "@babel/helper-plugin-utils" "^7.0.0" find-up "^3.0.0" istanbul-lib-instrument "^3.3.0" test-exclude "^5.2.3" @@ -1860,23 +1940,7 @@ bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0: resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.8.tgz#2cde09eb5ee341f484746bb0309b3253b1b1442f" integrity sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA== -body-parser@1.18.3: - version "1.18.3" - resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.18.3.tgz#5b292198ffdd553b3a0f20ded0592b956955c8b4" - integrity sha1-WykhmP/dVTs6DyDe0FkrlWlVyLQ= - dependencies: - bytes "3.0.0" - content-type "~1.0.4" - debug "2.6.9" - depd "~1.1.2" - http-errors "~1.6.3" - iconv-lite "0.4.23" - on-finished "~2.3.0" - qs "6.5.2" - raw-body "2.3.3" - type-is "~1.6.16" - -body-parser@1.19.0: +body-parser@1.19.0, body-parser@^1.19.0: version "1.19.0" resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.19.0.tgz#96b2709e57c9c4e09a6fd66a8fd979844f69f08a" integrity sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw== @@ -1946,6 +2010,13 @@ braces@^2.3.1, braces@^2.3.2: split-string "^3.0.2" to-regex "^3.0.1" +braces@^3.0.1: + version "3.0.2" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" + integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== + dependencies: + fill-range "^7.0.1" + brorand@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" @@ -2085,7 +2156,7 @@ bytes@3.1.0: resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.0.tgz#f6cf7933a360e0588fa9fde85651cdc7f805d1f6" integrity sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg== -cacache@^11.2.0, cacache@^11.3.2: +cacache@^11.2.0, cacache@^11.3.2, cacache@^11.3.3: version "11.3.3" resolved "https://registry.yarnpkg.com/cacache/-/cacache-11.3.3.tgz#8bd29df8c6a718a6ebd2d010da4d7972ae3bbadc" integrity sha512-p8WcneCytvzPxhDvYp31PD039vi77I12W+/KfR9S8AZbaiARFBCpsPJS+9uhWfeBfeAtW7o/4vt3MUqLkbY6nA== @@ -2120,11 +2191,6 @@ cache-base@^1.0.1: union-value "^1.0.0" unset-value "^1.0.0" -call-me-maybe@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.1.tgz#26d208ea89e37b5cbde60250a15f031c16a4d66b" - integrity sha1-JtII6onje1y95gJQoV8DHBak1ms= - caller-callsite@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/caller-callsite/-/caller-callsite-2.0.0.tgz#847e0fce0a223750a9a027c54b33731ad3154134" @@ -2185,7 +2251,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.2.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== @@ -2201,9 +2267,9 @@ caniuse-api@^3.0.0: lodash.uniq "^4.5.0" caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000984: - version "1.0.30000984" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000984.tgz#dc96c3c469e9bcfc6ad5bdd24c77ec918ea76fe0" - integrity sha512-n5tKOjMaZ1fksIpQbjERuqCyfgec/m9pferkFQbLmWtqLUdmt12hNhjSwsmPdqeiG2NkITOQhr1VYIwWSAceiA== + 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== capture-exit@^2.0.0: version "2.0.0" @@ -2506,7 +2572,7 @@ commander@2.17.x: resolved "https://registry.yarnpkg.com/commander/-/commander-2.17.1.tgz#bd77ab7de6de94205ceacc72f1716d29f20a77bf" integrity sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg== -commander@^2.19.0, commander@^2.20.0, commander@^2.8.1, commander@~2.20.0: +commander@^2.20.0, commander@^2.8.1, commander@~2.20.0: version "2.20.0" resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.0.tgz#d58bb2b5c1ee8f87b0d340027e9e94e222c5a422" integrity sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ== @@ -2533,38 +2599,25 @@ compose-function@3.0.3: dependencies: arity-n "^1.0.4" -compressible@~2.0.14, compressible@~2.0.16: +compressible@~2.0.16: version "2.0.17" resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.17.tgz#6e8c108a16ad58384a977f3a482ca20bff2f38c1" integrity sha512-BGHeLCK1GV7j1bSmQQAi26X+GgWcTjLr/0tzSvMCl3LH1w1IJ4PFSPoV5316b30cneTziC+B1a+3OjoSUcQYmw== dependencies: mime-db ">= 1.40.0 < 2" -compression-webpack-plugin@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/compression-webpack-plugin/-/compression-webpack-plugin-2.0.0.tgz#46476350c1eb27f783dccc79ac2f709baa2cffbc" - integrity sha512-bDgd7oTUZC8EkRx8j0sjyCfeiO+e5sFcfgaFcjVhfQf5lLya7oY2BczxcJ7IUuVjz5m6fy8IECFmVFew3xLk8Q== +compression-webpack-plugin@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/compression-webpack-plugin/-/compression-webpack-plugin-3.0.0.tgz#097d2e4d95c3a14cb5c8ed20899009ab5b9bbca0" + integrity sha512-ls+oKw4eRbvaSv/hj9NmctihhBcR26j76JxV0bLRLcWhrUBdQFgd06z/Kgg7exyQvtWWP484wZxs0gIUX3NO0Q== dependencies: cacache "^11.2.0" - find-cache-dir "^2.0.0" + find-cache-dir "^3.0.0" neo-async "^2.5.0" schema-utils "^1.0.0" serialize-javascript "^1.4.0" webpack-sources "^1.0.1" -compression@1.7.3: - version "1.7.3" - resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.3.tgz#27e0e176aaf260f7f2c2813c3e440adb9f1993db" - integrity sha512-HSjyBG5N1Nnz7tF2+O7A9XUhyjru71/fwgNb7oIsEVHR0WShfs2tIS/EySLgiTe98aOK18YDlMXpzjCXY/n9mg== - dependencies: - accepts "~1.3.5" - bytes "3.0.0" - compressible "~2.0.14" - debug "2.6.9" - on-headers "~1.0.1" - safe-buffer "5.1.2" - vary "~1.1.2" - compression@^1.7.4: version "1.7.4" resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.4.tgz#95523eff170ca57c29a0ca41e6fe131f41e5bb8f" @@ -2637,11 +2690,6 @@ contains-path@^0.1.0: resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a" integrity sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo= -content-disposition@0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.2.tgz#0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4" - integrity sha1-DPaLud318r55YcOoUXjLhdunjLQ= - content-disposition@0.5.3: version "0.5.3" resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.3.tgz#e130caf7e7279087c5616c2007d0485698984fbd" @@ -2671,11 +2719,6 @@ cookie-signature@1.0.6: resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" integrity sha1-4wOogrNCzD7oylE6eZmXNNqzriw= -cookie@0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb" - integrity sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s= - cookie@0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.0.tgz#beb437e7022b3b6d49019d088665303ebe9c14ba" @@ -2699,11 +2742,11 @@ copy-descriptor@^0.1.0: integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= copy-webpack-plugin@^5.0.3: - version "5.0.3" - resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-5.0.3.tgz#2179e3c8fd69f13afe74da338896f1f01a875b5c" - integrity sha512-PlZRs9CUMnAVylZq+vg2Juew662jWtwOXOqH4lbQD9ZFhRG9R7tVStOgHt21CBGVq7k5yIJaz8TXDLSjV+Lj8Q== + version "5.0.4" + resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-5.0.4.tgz#c78126f604e24f194c6ec2f43a64e232b5d43655" + integrity sha512-YBuYGpSzoCHSSDGyHy6VJ7SHojKp6WHT4D7ItcQFNAYx2hrwkMe56e97xfVR0/ovDuMTrMffXUiltvQljtAGeg== dependencies: - cacache "^11.3.2" + cacache "^11.3.3" find-cache-dir "^2.1.0" glob-parent "^3.1.0" globby "^7.1.1" @@ -2750,7 +2793,7 @@ cosmiconfig@^5.0.0: js-yaml "^3.13.1" parse-json "^4.0.0" -coveralls@^3.0.4: +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== @@ -2863,22 +2906,23 @@ css-declaration-sorter@^4.0.1: postcss "^7.0.1" timsort "^0.3.0" -css-loader@2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-2.1.1.tgz#d8254f72e412bb2238bb44dd674ffbef497333ea" - integrity sha512-OcKJU/lt232vl1P9EEDamhoO9iKY3tIjY5GU+XDLblAykTdgs6Ux9P1hTHve8nFKy5KPpOXOsVI/hIwi3841+w== +css-loader@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-3.1.0.tgz#6f008b993b8ce812e6bab57f3cbfdc7a7cf28685" + integrity sha512-MuL8WsF/KSrHCBCYaozBKlx+r7vIfUaDTEreo7wR7Vv3J6N0z6fqWjRk3e/6wjneitXN1r/Y9FTK1psYNOBdJQ== dependencies: - camelcase "^5.2.0" - icss-utils "^4.1.0" + camelcase "^5.3.1" + cssesc "^3.0.0" + icss-utils "^4.1.1" loader-utils "^1.2.3" normalize-path "^3.0.0" - postcss "^7.0.14" + postcss "^7.0.17" postcss-modules-extract-imports "^2.0.0" - postcss-modules-local-by-default "^2.0.6" + postcss-modules-local-by-default "^3.0.2" postcss-modules-scope "^2.1.0" - postcss-modules-values "^2.0.0" - postcss-value-parser "^3.3.0" - schema-utils "^1.0.0" + postcss-modules-values "^3.0.0" + postcss-value-parser "^4.0.0" + schema-utils "^2.0.0" css-select-base-adapter@^0.1.1: version "0.1.1" @@ -3278,13 +3322,20 @@ diffie-hellman@^5.0.0: miller-rabin "^4.0.0" randombytes "^2.0.0" -dir-glob@^2.0.0, dir-glob@^2.2.2: +dir-glob@^2.0.0: version "2.2.2" resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.2.2.tgz#fa09f0694153c8918b18ba0deafae94769fc50c4" integrity sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw== dependencies: path-type "^3.0.0" +dir-glob@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" + integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== + dependencies: + path-type "^4.0.0" + dns-equal@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/dns-equal/-/dns-equal-1.0.0.tgz#b39e7f1da6eb0a75ba9c17324b34753c47e0654d" @@ -3418,9 +3469,9 @@ ee-first@1.1.1: integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= electron-to-chromium@^1.3.191: - version "1.3.196" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.196.tgz#1a7885855880fa3ae7a8908c442757e561eec82b" - integrity sha512-NFGRHzY0x8yIUFnAthKxaOKe5q+c8jjvyQM2pMq2+59QORz8AN5+qXPJBwX05kz2uEtyraX2XxB0LPT+7EE6vw== + version "1.3.207" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.207.tgz#b19ce94d61187d72411ebb83dfe287366a785102" + integrity sha512-RIgAnfqbjZNECBLjslfy4cIYvcPl3GAXmnENrcoo0TZ8fGkyEEAealAbO7MoevW4xYUPe+e68cWAj6eP0DmMHw== elliptic@^6.0.0: version "6.5.0" @@ -3678,7 +3729,7 @@ esdoc@^1.1.0: minimist "1.2.0" taffydb "2.7.3" -eslint-config-airbnb-base@^13.1.0: +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== @@ -3711,7 +3762,7 @@ eslint-plugin-es@^1.4.0: eslint-utils "^1.3.0" regexpp "^2.0.1" -eslint-plugin-import@^2.17.3: +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" integrity sha512-5ohpsHAiUBRNaBWAF08izwUGlbrJoJJ+W9/TBwsGoR1MnlgfwMIKrFeSjWbt6moabiXW9xNvtFz+97KHRfI4HQ== @@ -3841,9 +3892,9 @@ estraverse@^4.0.0, estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0: integrity sha1-De4/7TH81GlhjOc0IJn8GvoL2xM= esutils@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" - integrity sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs= + version "2.0.3" + resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" + integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== etag@~1.8.1: version "1.8.1" @@ -3943,42 +3994,6 @@ expect@^24.8.0: jest-message-util "^24.8.0" jest-regex-util "^24.3.0" -express@4.16.4: - version "4.16.4" - resolved "https://registry.yarnpkg.com/express/-/express-4.16.4.tgz#fddef61926109e24c515ea97fd2f1bdbf62df12e" - integrity sha512-j12Uuyb4FMrd/qQAm6uCHAkPtO8FDTRJZBDd5D2KOL2eLaz1yUNdUB/NOIyq0iU4q4cFarsUCrnFDPBcnksuOg== - dependencies: - accepts "~1.3.5" - array-flatten "1.1.1" - body-parser "1.18.3" - content-disposition "0.5.2" - content-type "~1.0.4" - cookie "0.3.1" - cookie-signature "1.0.6" - debug "2.6.9" - depd "~1.1.2" - encodeurl "~1.0.2" - escape-html "~1.0.3" - etag "~1.8.1" - finalhandler "1.1.1" - fresh "0.5.2" - merge-descriptors "1.0.1" - methods "~1.1.2" - on-finished "~2.3.0" - parseurl "~1.3.2" - path-to-regexp "0.1.7" - proxy-addr "~2.0.4" - qs "6.5.2" - range-parser "~1.2.0" - safe-buffer "5.1.2" - send "0.16.2" - serve-static "1.13.2" - setprototypeof "1.1.0" - statuses "~1.4.0" - type-is "~1.6.16" - utils-merge "1.0.1" - vary "~1.1.2" - express@^4.17.1: version "4.17.1" resolved "https://registry.yarnpkg.com/express/-/express-4.17.1.tgz#4491fc38605cf51f8629d39c2b5d026f98a4c134" @@ -4030,7 +4045,7 @@ extend-shallow@^3.0.0, extend-shallow@^3.0.2: assign-symbols "^1.0.0" is-extendable "^1.0.1" -extend@3.0.2, extend@^3.0.2, extend@~3.0.2: +extend@^3.0.2, extend@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== @@ -4078,17 +4093,17 @@ fast-deep-equal@^2.0.1: resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49" integrity sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk= -fast-glob@^2.2.6: - version "2.2.7" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-2.2.7.tgz#6953857c3afa475fff92ee6015d52da70a4cd39d" - integrity sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw== +fast-glob@^3.0.3: + version "3.0.4" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.0.4.tgz#d484a41005cb6faeb399b951fd1bd70ddaebb602" + integrity sha512-wkIbV6qg37xTJwqSsdnIphL1e+LaGz4AIQqr00mIubMaEhv1/HEmJ0uuCGZRNRUkZZmOB5mJKO0ZUTVq+SxMQg== dependencies: - "@mrmlnc/readdir-enhanced" "^2.2.1" - "@nodelib/fs.stat" "^1.1.2" - glob-parent "^3.1.0" - is-glob "^4.0.0" + "@nodelib/fs.stat" "^2.0.1" + "@nodelib/fs.walk" "^1.2.1" + glob-parent "^5.0.0" + is-glob "^4.0.1" merge2 "^1.2.3" - micromatch "^3.1.10" + micromatch "^4.0.2" fast-json-stable-stringify@^2.0.0: version "2.0.0" @@ -4105,6 +4120,13 @@ fastparse@^1.1.1: resolved "https://registry.yarnpkg.com/fastparse/-/fastparse-1.1.2.tgz#91728c5a5942eced8531283c79441ee4122c35a9" integrity sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ== +fastq@^1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.6.0.tgz#4ec8a38f4ac25f21492673adb7eae9cfef47d1c2" + integrity sha512-jmxqQ3Z/nXoeyDmWAzF9kH1aGZSis6e/SbfPmJpUnyZ0ogr6iscHQaml4wsEepEWSdtmpy+eVXmCRIMpxaXqOA== + dependencies: + reusify "^1.0.0" + faye-websocket@^0.10.0: version "0.10.0" resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4" @@ -4145,13 +4167,13 @@ file-entry-cache@^5.0.1: dependencies: flat-cache "^2.0.1" -file-loader@3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-3.0.1.tgz#f8e0ba0b599918b51adfe45d66d1e771ad560faa" - integrity sha512-4sNIOXgtH/9WZq4NvlfU3Opn5ynUsqBwSLyM+I7UOwdGigTBYfVVQEwe/msZNX/j4pCJTIM14Fsw66Svo1oVrw== +file-loader@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-4.1.0.tgz#3a763391bc9502da7c59612fe348e38fc1980336" + integrity sha512-ajDk1nlByoalZAGR4b0H6oD+EGlWnyW1qbSxzaUc7RFiqmn+RbXQQRbTc72jsiUIlVusJ4Et58ltds8ZwTfnAw== dependencies: - loader-utils "^1.0.2" - schema-utils "^1.0.0" + loader-utils "^1.2.3" + schema-utils "^2.0.0" fill-range@^4.0.0: version "4.0.0" @@ -4163,18 +4185,12 @@ fill-range@^4.0.0: repeat-string "^1.6.1" to-regex-range "^2.1.0" -finalhandler@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.1.tgz#eebf4ed840079c83f4249038c9d703008301b105" - integrity sha512-Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg== +fill-range@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" + integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== dependencies: - debug "2.6.9" - encodeurl "~1.0.2" - escape-html "~1.0.3" - on-finished "~2.3.0" - parseurl "~1.3.2" - statuses "~1.4.0" - unpipe "~1.0.0" + to-regex-range "^5.0.1" finalhandler@~1.1.2: version "1.1.2" @@ -4198,6 +4214,15 @@ find-cache-dir@^2.0.0, find-cache-dir@^2.1.0: make-dir "^2.0.0" pkg-dir "^3.0.0" +find-cache-dir@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.0.0.tgz#cd4b7dd97b7185b7e17dbfe2d6e4115ee3eeb8fc" + integrity sha512-t7ulV1fmbxh5G9l/492O1p5+EBbr3uwpt6odhFTMc+nWyhmbloe+ja9BZ8pIBtqFWhOmCWVjx+pTW4zDkFoclw== + dependencies: + commondir "^1.0.1" + make-dir "^3.0.0" + pkg-dir "^4.1.0" + find-up@^1.0.0: version "1.1.2" resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" @@ -4220,6 +4245,14 @@ find-up@^3.0.0: dependencies: locate-path "^3.0.0" +find-up@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" + integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== + dependencies: + locate-path "^5.0.0" + path-exists "^4.0.0" + findup-sync@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-3.0.0.tgz#17b108f9ee512dfb7a5c7f3c8b27ea9e1a9c08d1" @@ -4333,15 +4366,6 @@ fs-extra@5.0.0: jsonfile "^4.0.0" universalify "^0.1.0" -fs-extra@7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-7.0.1.tgz#4f189c44aa123b895f722804f55ea23eadc348e9" - integrity sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw== - dependencies: - graceful-fs "^4.1.2" - jsonfile "^4.0.0" - universalify "^0.1.0" - fs-extra@^8.0.1, fs-extra@^8.1.0: version "8.1.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" @@ -4479,10 +4503,12 @@ glob-parent@^3.1.0: is-glob "^3.1.0" path-dirname "^1.0.0" -glob-to-regexp@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz#8c5a1494d2066c570cc3bfe4496175acc4d502ab" - integrity sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs= +glob-parent@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.0.0.tgz#1dc99f0f39b006d3e92c2c284068382f0c20e954" + integrity sha512-Z2RwiujPRGluePM6j699ktJYxmPpJKCfpGA13jz2hmFZC7gKetzrWvg5KN3+OsIFmydGyZ1AVwERCq1w/ZZwRg== + dependencies: + is-glob "^4.0.1" glob@7.1.4, glob@^7.0.0, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@~7.1.1: version "7.1.4" @@ -4549,6 +4575,20 @@ 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.1: + version "10.0.1" + resolved "https://registry.yarnpkg.com/globby/-/globby-10.0.1.tgz#4782c34cb75dd683351335c5829cc3420e606b22" + integrity sha512-sSs4inE1FB2YQiymcmTv6NWENryABjUNPeWhOvmn4SjtKybglsyPZxFB3U1/+L1bYi0rNZDqCLlHyLYDl1Pq5A== + dependencies: + "@types/glob" "^7.1.1" + array-union "^2.1.0" + dir-glob "^3.0.1" + fast-glob "^3.0.3" + glob "^7.1.3" + ignore "^5.1.1" + merge2 "^1.2.3" + slash "^3.0.0" + globby@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c" @@ -4572,20 +4612,6 @@ globby@^7.1.1: pify "^3.0.0" slash "^1.0.0" -globby@^9.2.0: - version "9.2.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-9.2.0.tgz#fd029a706c703d29bdd170f4b6db3a3f7a7cb63d" - integrity sha512-ollPHROa5mcxDEkwg6bPt3QbEf4pDQSNtd6JPL1YvOvAo/7/0VAm9TccUeoTmarjPw4pfUthSCqcyfNB1I3ZSg== - dependencies: - "@types/glob" "^7.1.1" - array-union "^1.0.2" - dir-glob "^2.2.2" - fast-glob "^2.2.6" - glob "^7.1.3" - ignore "^4.0.3" - pify "^4.0.1" - slash "^2.0.0" - globule@^1.0.0: version "1.2.1" resolved "https://registry.yarnpkg.com/globule/-/globule-1.2.1.tgz#5dffb1b191f22d20797a9369b49eab4e9839696d" @@ -4865,16 +4891,6 @@ http-deceiver@^1.2.7: resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" integrity sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc= -http-errors@1.6.3, http-errors@~1.6.2, http-errors@~1.6.3: - version "1.6.3" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d" - integrity sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0= - dependencies: - depd "~1.1.2" - inherits "2.0.3" - setprototypeof "1.1.0" - statuses ">= 1.4.0 < 2" - http-errors@1.7.2: version "1.7.2" resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.2.tgz#4f5029cf13239f31036e5b2e55292bcfbcc85c8f" @@ -4886,6 +4902,16 @@ http-errors@1.7.2: statuses ">= 1.5.0 < 2" toidentifier "1.0.0" +http-errors@~1.6.2: + version "1.6.3" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d" + integrity sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0= + dependencies: + depd "~1.1.2" + inherits "2.0.3" + setprototypeof "1.1.0" + statuses ">= 1.4.0 < 2" + http-errors@~1.7.2: version "1.7.3" resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.3.tgz#6c619e4f9c60308c38519498c14fbb10aacebb06" @@ -4948,13 +4974,6 @@ ice-cap@0.0.4: cheerio "0.20.0" color-logger "0.0.3" -iconv-lite@0.4.23: - version "0.4.23" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.23.tgz#297871f63be507adcfbfca715d0cd0eed84e9a63" - integrity sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA== - dependencies: - safer-buffer ">= 2.1.2 < 3" - iconv-lite@0.4.24, iconv-lite@^0.4.24, iconv-lite@^0.4.4: version "0.4.24" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" @@ -4962,12 +4981,7 @@ iconv-lite@0.4.24, iconv-lite@^0.4.24, iconv-lite@^0.4.4: dependencies: safer-buffer ">= 2.1.2 < 3" -icss-replace-symbols@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz#06ea6f83679a7749e386cfe1fe812ae5db223ded" - integrity sha1-Bupvg2ead0njhs/h/oEq5dsiPe0= - -icss-utils@^4.1.0: +icss-utils@^4.0.0, icss-utils@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-4.1.1.tgz#21170b53789ee27447c2f47dd683081403f9a467" integrity sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA== @@ -5001,7 +5015,7 @@ ignore@^3.3.5: resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.10.tgz#0a97fb876986e8081c631160f8f9f389157f0043" integrity sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug== -ignore@^4.0.3, ignore@^4.0.6: +ignore@^4.0.6: version "4.0.6" resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== @@ -5348,6 +5362,11 @@ is-number@^3.0.0: dependencies: kind-of "^3.0.2" +is-number@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== + is-obj@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" @@ -5534,10 +5553,10 @@ istanbul-reports@^2.1.1: dependencies: handlebars "^4.1.2" -jasmine-expect@^4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/jasmine-expect/-/jasmine-expect-4.0.2.tgz#a35bc1dd9e03504cfd73a5b0282ce73d103fc5c5" - integrity sha512-VpHLwpBE1chVIhiJ7kJHBbdsm2GVvBli5bem4pGqkbiuvIW2mxghPNhYrKyoHBQKVmlq+xLUTGlrWMC/Ovn+2g== +jasmine-expect@^4.0.2: + version "4.0.3" + resolved "https://registry.yarnpkg.com/jasmine-expect/-/jasmine-expect-4.0.3.tgz#7cd2f35f909c2bb270d1f4d1042cdff72d47cc66" + integrity sha512-ucHOO6qpY6/vwgxoRVzyYywIRuvGEmI1uk69INjdZ84h2dUHIXHf8A5jUkM1kQHy9lHP1jqq9/S5VAkYUsFYCg== dependencies: add-matchers "0.6.2" @@ -5643,7 +5662,7 @@ jest-environment-node@^24.8.0: jest-mock "^24.8.0" jest-util "^24.8.0" -jest-ex@^6.0.1: +jest-ex@^6.1.1: version "6.1.1" resolved "https://registry.yarnpkg.com/jest-ex/-/jest-ex-6.1.1.tgz#3ce1b9d216ef5d224eeca78da2aba46831354f24" integrity sha512-ZICeQwfxAMaFS15qQYD0zLZXi76KMVtHe2d1m8R5HQIJ3EaqH+lBLcjgnscxFq2dtNLNobpnZm32fM8eVDtHYQ== @@ -5898,25 +5917,24 @@ jest-worker@^24.6.0: merge-stream "^1.0.1" supports-color "^6.1.0" -jimpex@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/jimpex/-/jimpex-3.0.0.tgz#1bc803389c53282c0e97590ea1b13b2af3ce4af3" - integrity sha512-eOAXUlosxy952oA9BNobxH0EzQIX+k0kr+3OQOwqQvZ+H5oh1d0iZbhfIruOZq+ynlhMCKnt0vyot7IJ+Ku5bw== - dependencies: - body-parser "1.18.3" - compression "1.7.3" - express "4.16.4" - extend "3.0.2" - fs-extra "7.0.1" - jimple "1.5.0" - mime "2.4.0" - multer "1.4.1" - node-fetch "2.3.0" - statuses "1.5.0" - urijs "1.19.1" - wootils "^2.0.0" - -jimple@1.5.0, jimple@^1.5.0: +jimpex@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/jimpex/-/jimpex-4.0.1.tgz#0737367f98936556a2767a40f8682355a916646d" + integrity sha512-/LaadzJMIiXHI4NaYXXQ4k87DgJPN6JPtPo4klrVo3F15gMXSMChFG9z2a/+2d6iwaYHcXAI50Reo3nbaJoWmQ== + dependencies: + body-parser "^1.19.0" + compression "^1.7.4" + express "^4.17.1" + fs-extra "^8.1.0" + jimple "^1.5.0" + mime "^2.4.4" + multer "^1.4.1" + node-fetch "^2.6.0" + statuses "^1.5.0" + urijs "^1.19.1" + wootils "^2.4.1" + +jimple@^1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/jimple/-/jimple-1.5.0.tgz#a964bf4862bb2b488ce3830266a4dd8e8ef1213b" integrity sha512-lV8T+LMLvq4qYomJvXtIoL+rwT3tQ2fjq6Bv+vgO0zEtfIw6oXlOmSbHusq5TgR5IKP2avouqWVpGFjbsWlR2Q== @@ -6175,19 +6193,19 @@ lcov-parse@^0.0.10: resolved "https://registry.yarnpkg.com/lcov-parse/-/lcov-parse-0.0.10.tgz#1b0b8ff9ac9c7889250582b70b71315d9da6d9a3" integrity sha1-GwuP+ayceIklBYK3C3ExXZ2m2aM= -leasot@^7.4.0: - version "7.5.0" - resolved "https://registry.yarnpkg.com/leasot/-/leasot-7.5.0.tgz#40d31b94bc7378da71837416f41745bb7532e13b" - integrity sha512-/vFxfV8u6X8BlJzav4ykNSGZDGoGdMYhyad56baCxk1lKIVld4O3z17EeCIKMqErX7ipwO7+H3kFHgjD5AGCHg== +leasot@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/leasot/-/leasot-8.0.0.tgz#04bd7889fbfe04e32c0a9c8e89e3d1ef67ed0470" + integrity sha512-ZZ+oBnXJwhPuembFST1ztqaq0aPFRci0TotuHBxP7CKsUDFAT/injak4+PwdN+uI55gKvge2ydFV8cwhvY6WOw== dependencies: - async "^3.0.1" + async "^3.1.0" chalk "^2.4.2" commander "^2.20.0" eol "^0.9.1" get-stdin "^7.0.0" - globby "^9.2.0" + globby "^10.0.1" json2xml "^0.1.3" - lodash "^4.17.11" + lodash "^4.17.15" log-symbols "^3.0.0" strip-ansi "^5.2.0" text-table "^0.2.0" @@ -6281,6 +6299,13 @@ locate-path@^3.0.0: p-locate "^3.0.0" path-exists "^3.0.0" +locate-path@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" + integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== + dependencies: + p-locate "^4.1.0" + lodash.assignin@^4.0.9: version "4.2.0" resolved "https://registry.yarnpkg.com/lodash.assignin/-/lodash.assignin-4.2.0.tgz#ba8df5fb841eb0a3e8044232b0e263a8dc6a28a2" @@ -6361,7 +6386,7 @@ lodash.uniq@^4.5.0: resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= -lodash@^4.0.0, lodash@^4.1.0, lodash@^4.15.0, lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.13, lodash@^4.17.14, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.2.0, lodash@~4.17.10: +lodash@^4.0.0, lodash@^4.1.0, lodash@^4.15.0, lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.13, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.2.0, lodash@~4.17.10: version "4.17.15" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== @@ -6378,7 +6403,7 @@ log-symbols@^3.0.0: dependencies: chalk "^2.4.2" -loglevel@^1.6.2: +loglevel@^1.6.3: version "1.6.3" resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.6.3.tgz#77f2eb64be55a404c9fd04ad16d57c1d6d6b1280" integrity sha512-LoEDv5pgpvWgPF4kNYuIp0qqSJVWak/dML0RY74xlzMZiT9w77teNAwKYKWBTYjlokMirg+o3jBwp+vlLrcfAA== @@ -6438,6 +6463,13 @@ make-dir@^2.0.0, make-dir@^2.1.0: pify "^4.0.1" semver "^5.6.0" +make-dir@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.0.0.tgz#1b5f39f6b9270ed33f9f054c5c0f84304989f801" + integrity sha512-grNJDhb8b1Jm1qeqW5R/O63wUo4UXo2v2HMic6YT9i/HBlF93S8jkMgH7yugvY9ABDShH4VZMn8I+U8+fCNegw== + dependencies: + semver "^6.0.0" + makeerror@1.0.x: version "1.0.11" resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c" @@ -6577,6 +6609,14 @@ micromatch@^3.0.4, micromatch@^3.1.10, micromatch@^3.1.4, micromatch@^3.1.8: snapdragon "^0.8.1" to-regex "^3.0.2" +micromatch@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.2.tgz#4fcb0999bf9fbc2fcbdd212f6d629b9a56c39259" + integrity sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q== + dependencies: + braces "^3.0.1" + picomatch "^2.0.5" + miller-rabin@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" @@ -6597,22 +6637,12 @@ mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.19, mime-types@~2.1.24: dependencies: mime-db "1.40.0" -mime@1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.1.tgz#121f9ebc49e3766f311a76e1fa1c8003c4b03aa6" - integrity sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ== - mime@1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== -mime@2.4.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/mime/-/mime-2.4.0.tgz#e051fd881358585f3279df333fe694da0bcffdd6" - integrity sha512-ikBcWwyqXQSHKtciCcctu9YfPbFYZ4+gbHEmE0Q8jzcTYQg5dHCr3g2wwAZjPoJfQVXZq6KXAjpXOTf5/cjT7w== - -mime@^2.0.3, mime@^2.4.2: +mime@^2.4.2, mime@^2.4.4: version "2.4.4" resolved "https://registry.yarnpkg.com/mime/-/mime-2.4.4.tgz#bd7b91135fc6b01cde3e9bae33d659b63d8857e5" integrity sha512-LRxmNwziLPT828z+4YkNzloCFC2YM4wrB99k+AV5ZbEyfGNWfG8SO1FUXLmLDBSo89NrJZ4DIWeLjy1CHGhMGA== @@ -6627,10 +6657,10 @@ mimic-fn@^2.0.0: resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== -mini-css-extract-plugin@0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-0.7.0.tgz#5ba8290fbb4179a43dd27cca444ba150bee743a0" - integrity sha512-RQIw6+7utTYn8DBGsf/LpRgZCJMpZt+kuawJ/fju0KiOL6nAaTBNmCJwS7HtwSCXfS47gCkmtBFS7HdsquhdxQ== +mini-css-extract-plugin@0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-0.8.0.tgz#81d41ec4fe58c713a96ad7c723cdb2d0bd4d70e1" + integrity sha512-MNpRGbNA52q6U92i0qbVpQNsgk7LExy41MdAlG84FeytfDOtRIf/mCHdEgG8rpTKOaNKiqUnZdlptF469hxqOw== dependencies: loader-utils "^1.1.0" normalize-url "1.9.1" @@ -6750,10 +6780,10 @@ ms@^2.1.1: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== -multer@1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/multer/-/multer-1.4.1.tgz#24b12a416a22fec2ade810539184bf138720159e" - integrity sha512-zzOLNRxzszwd+61JFuAo0fxdQfvku12aNJgnla0AQ+hHxFmfc/B7jBVuPr5Rmvu46Jze/iJrFpSOsD7afO8SDw== +multer@^1.4.1: + version "1.4.2" + resolved "https://registry.yarnpkg.com/multer/-/multer-1.4.2.tgz#2f1f4d12dbaeeba74cb37e623f234bf4d3d2057a" + integrity sha512-xY8pX7V+ybyUpbYMxtjM9KAiD9ixtg5/JkeKUTD6xilfDv0vzzOFcCp4Ljb1UU3tSOM3VTZtKo63OmzOrGi3Cg== dependencies: append-field "^1.0.0" busboy "^0.2.11" @@ -6855,10 +6885,10 @@ no-case@^2.2.0: dependencies: lower-case "^1.1.1" -node-fetch@2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.3.0.tgz#1a1d940bbfb916a1d3e0219f037e89e71f8c5fa5" - integrity sha512-MOd8pV3fxENbryESLgVIeaGKrdl+uaYhCSSVkjeOb/31/njTpcis5aWfdqgNlHIrKOLRbMnfPINPOML2CIFeXA== +node-fetch@^2.6.0: + version "2.6.0" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.0.tgz#e633456386d4aa55863f676a7ab0daa8fdecb0fd" + integrity sha512-8dG4H5ujfvFiqDmVu9fQ5bOHUC15JMjMY/Zumv26oOvvVJjM67KF8koCWIabKQ1GJIa9r2mMZscBq/TbdOcmNA== node-forge@0.7.5: version "0.7.5" @@ -6950,9 +6980,9 @@ node-pre-gyp@^0.12.0: tar "^4" node-releases@^1.1.25: - version "1.1.25" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.25.tgz#0c2d7dbc7fed30fbe02a9ee3007b8c90bf0133d3" - integrity sha512-fI5BXuk83lKEoZDdH3gRhtsNgh05/wZacuXkgbiYkceE7+QIMXOg98n9ZV7mz27B+kFHnqHcUpscZZlGRSmTpQ== + version "1.1.26" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.26.tgz#f30563edc5c7dc20cf524cc8652ffa7be0762937" + integrity sha512-fZPsuhhUHMTlfkhDLGtfY80DSJTjOcx+qD1j5pqPkuhUHVS7xHZIg9EE4DHK8O3f0zTxXHX5VIkDG8pu98/wfQ== dependencies: semver "^5.3.0" @@ -7199,7 +7229,7 @@ on-finished@^2.3.0, on-finished@~2.3.0: dependencies: ee-first "1.1.1" -on-headers@~1.0.1, on-headers@~1.0.2: +on-headers@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.2.tgz#772b0ae6aaa525c399e489adfad90c403eb3c28f" integrity sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA== @@ -7238,7 +7268,7 @@ optimist@^0.6.1: minimist "~0.0.1" wordwrap "~0.0.2" -optimize-css-assets-webpack-plugin@^5.0.1: +optimize-css-assets-webpack-plugin@^5.0.3: version "5.0.3" resolved "https://registry.yarnpkg.com/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-5.0.3.tgz#e2f1d4d94ad8c0af8967ebd7cf138dcb1ef14572" integrity sha512-q9fbvCRS6EYtUKKSwI87qm2IxlyJK5b4dygW1rKUBT6mMDhdG5e5bZT63v6tnJR9F9FB/H5a0HTmtw+laUBxKA== @@ -7363,6 +7393,13 @@ p-locate@^3.0.0: dependencies: p-limit "^2.0.0" +p-locate@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" + integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== + 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" @@ -7373,6 +7410,13 @@ p-reduce@^1.0.0: resolved "https://registry.yarnpkg.com/p-reduce/-/p-reduce-1.0.0.tgz#18c2b0dd936a4690a529f8231f58a0fdb6a47dfa" integrity sha1-GMKw3ZNqRpClKfgjH1ig/bakffo= +p-retry@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/p-retry/-/p-retry-3.0.1.tgz#316b4c8893e2c8dc1cfa891f406c4b422bebf328" + integrity sha512-XE6G4+YTTkT2a0UWb2kjZe8xNwf8bIbnqpc/IS/idOBVhyves0mK5OJgeocjx7q5pvX/6m23xuzVPYT1uGM73w== + dependencies: + retry "^0.12.0" + p-try@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" @@ -7502,6 +7546,11 @@ path-exists@^3.0.0: resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= +path-exists@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" + integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== + path-is-absolute@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" @@ -7550,6 +7599,11 @@ path-type@^3.0.0: dependencies: pify "^3.0.0" +path-type@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" + integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== + pbkdf2@^3.0.3: version "3.0.17" resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.17.tgz#976c206530617b14ebb32114239f7b09336e93a6" @@ -7566,6 +7620,11 @@ performance-now@^2.1.0: resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= +picomatch@^2.0.5: + version "2.0.7" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.0.7.tgz#514169d8c7cd0bdbeecc8a2609e34a7163de69f6" + integrity sha512-oLHIdio3tZ0qH76NybpeneBhYVj0QFTfXEFTc/B3zKQspYfYYkWYgFsmzo+4kvId/bQRcNkVeguI3y+CD22BtA== + pify@^2.0.0: version "2.3.0" resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" @@ -7614,6 +7673,13 @@ pkg-dir@^3.0.0: dependencies: find-up "^3.0.0" +pkg-dir@^4.1.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" + integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== + dependencies: + find-up "^4.0.0" + pkginfo@0.3.x: version "0.3.1" resolved "https://registry.yarnpkg.com/pkginfo/-/pkginfo-0.3.1.tgz#5b29f6a81f70717142e09e765bbeab97b4f81e21" @@ -7769,14 +7835,15 @@ postcss-modules-extract-imports@^2.0.0: dependencies: postcss "^7.0.5" -postcss-modules-local-by-default@^2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-2.0.6.tgz#dd9953f6dd476b5fd1ef2d8830c8929760b56e63" - integrity sha512-oLUV5YNkeIBa0yQl7EYnxMgy4N6noxmiwZStaEJUSe2xPMcdNc8WmBQuQCx18H5psYbVxz8zoHk0RAAYZXP9gA== +postcss-modules-local-by-default@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.2.tgz#e8a6561be914aaf3c052876377524ca90dbb7915" + integrity sha512-jM/V8eqM4oJ/22j0gx4jrp63GSvDH6v86OqyTHHUvk4/k1vceipZsaymiZ5PvocqZOl5SFHiFJqjs3la0wnfIQ== dependencies: - postcss "^7.0.6" - postcss-selector-parser "^6.0.0" - postcss-value-parser "^3.3.1" + icss-utils "^4.1.1" + postcss "^7.0.16" + postcss-selector-parser "^6.0.2" + postcss-value-parser "^4.0.0" postcss-modules-scope@^2.1.0: version "2.1.0" @@ -7786,12 +7853,12 @@ postcss-modules-scope@^2.1.0: postcss "^7.0.6" postcss-selector-parser "^6.0.0" -postcss-modules-values@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-2.0.0.tgz#479b46dc0c5ca3dc7fa5270851836b9ec7152f64" - integrity sha512-Ki7JZa7ff1N3EIMlPnGTZfUMe69FFwiQPnVSXC9mnn3jozCRBYIxiZd44yJOV2AmabOo4qFf8s0dC/+lweG7+w== +postcss-modules-values@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz#5b5000d6ebae29b4255301b4a3a54574423e7f10" + integrity sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg== dependencies: - icss-replace-symbols "^1.1.0" + icss-utils "^4.0.0" postcss "^7.0.6" postcss-normalize-charset@^4.0.1: @@ -7922,7 +7989,7 @@ postcss-selector-parser@^5.0.0-rc.4: indexes-of "^1.0.1" uniq "^1.0.1" -postcss-selector-parser@^6.0.0: +postcss-selector-parser@^6.0.0, postcss-selector-parser@^6.0.2: version "6.0.2" resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz#934cf799d016c83411859e09dcecade01286ec5c" integrity sha512-36P2QR59jDTOAiIkqEprfJDsoNrvwFei3eCqKd1Y0tUsBimsq39BLp7RD+JWny3WgB1zGhJX8XVePwm9k4wdBg== @@ -7950,11 +8017,16 @@ postcss-unique-selectors@^4.0.1: postcss "^7.0.0" uniqs "^2.0.0" -postcss-value-parser@^3.0.0, postcss-value-parser@^3.3.0, postcss-value-parser@^3.3.1: +postcss-value-parser@^3.0.0, postcss-value-parser@^3.3.1: version "3.3.1" resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz#9ff822547e2893213cf1c30efa51ac5fd1ba8281" integrity sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ== +postcss-value-parser@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.0.0.tgz#99a983d365f7b2ad8d0f9b8c3094926eab4b936d" + integrity sha512-ESPktioptiSUchCKgggAkzdmkgzKfmp0EU8jXH+5kbIUB+unr0Y4CY9SRMvibuvYUBjNh1ACLbxqYNpdTQOteQ== + postcss@7.0.14: version "7.0.14" resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.14.tgz#4527ed6b1ca0d82c53ce5ec1a2041c2346bbd6e5" @@ -7964,7 +8036,7 @@ postcss@7.0.14: source-map "^0.6.1" supports-color "^6.1.0" -postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.5, postcss@^7.0.6: +postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.16, postcss@^7.0.17, postcss@^7.0.5, postcss@^7.0.6: version "7.0.17" resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.17.tgz#4da1bdff5322d4a0acaab4d87f3e782436bad31f" integrity sha512-546ZowA+KZ3OasvQZHsbuEpysvwTZNGJv9EfyCQdsIDltPSWHAeTQ5fQy/Npi2ZDtLI3zs7Ps/p6wThErhm9fQ== @@ -8075,7 +8147,7 @@ prompts@^2.0.1: kleur "^3.0.2" sisteransi "^1.0.0" -proxy-addr@~2.0.4, proxy-addr@~2.0.5: +proxy-addr@~2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.5.tgz#34cbd64a2d81f4b1fd21e76f9f06c8a45299ee34" integrity sha512-t/7RxHXPH6cJtP0pRG6smSr9QJidhB+3kXu0KgXnbGYMgzEnUxRQ4/LDdfOwZEMyIh3/xHb8PX3t+lfL9z+YVQ== @@ -8160,16 +8232,16 @@ q@^1.1.2: resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= -qs@6.5.2, qs@~6.5.2: - version "6.5.2" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" - integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== - qs@6.7.0: version "6.7.0" resolved "https://registry.yarnpkg.com/qs/-/qs-6.7.0.tgz#41dc1a015e3d581f1621776be31afb2876a9b1bc" integrity sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ== +qs@~6.5.2: + version "6.5.2" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" + integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== + query-string@^4.1.0: version "4.3.4" resolved "https://registry.yarnpkg.com/query-string/-/query-string-4.3.4.tgz#bbb693b9ca915c232515b228b1a02b609043dbeb" @@ -8208,21 +8280,11 @@ randomfill@^1.0.3: randombytes "^2.0.5" safe-buffer "^5.1.0" -range-parser@^1.2.1, range-parser@~1.2.0, range-parser@~1.2.1: +range-parser@^1.2.1, range-parser@~1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== -raw-body@2.3.3: - version "2.3.3" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.3.3.tgz#1b324ece6b5706e153855bc1148c65bb7f6ea0c3" - integrity sha512-9esiElv1BrZoI3rCDuOuKCBRbuApGGaDPQfjSflGxdy4oyzqghxu6klEkkVIvBje+FF0BX9coEv8KqW6X/7njw== - dependencies: - bytes "3.0.0" - http-errors "1.6.3" - iconv-lite "0.4.23" - unpipe "1.0.0" - raw-body@2.4.0: version "2.4.0" resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.4.0.tgz#a1ce6fb9c9bc356ca52e89256ab59059e13d0332" @@ -8233,13 +8295,13 @@ raw-body@2.4.0: iconv-lite "0.4.24" unpipe "1.0.0" -raw-loader@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/raw-loader/-/raw-loader-2.0.0.tgz#e2813d9e1e3f80d1bbade5ad082e809679e20c26" - integrity sha512-kZnO5MoIyrojfrPWqrhFNLZemIAX8edMOCp++yC5RKxzFB3m92DqKNhKlU6+FvpOhWtvyh3jOaD7J6/9tpdIKg== +raw-loader@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/raw-loader/-/raw-loader-3.1.0.tgz#5e9d399a5a222cc0de18f42c3bc5e49677532b3f" + integrity sha512-lzUVMuJ06HF4rYveaz9Tv0WRlUMxJ0Y1hgSkkgg+50iEdaI0TthyEDe08KIHb0XsF6rn8WYTqPCaGTZg3sX+qA== dependencies: loader-utils "^1.1.0" - schema-utils "^1.0.0" + schema-utils "^2.0.1" rc@^1.0.1, rc@^1.1.6, rc@^1.2.7: version "1.2.8" @@ -8666,6 +8728,16 @@ ret@~0.1.10: resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== +retry@^0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" + integrity sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs= + +reusify@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" + integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== + revalidator@0.1.x: version "0.1.8" resolved "https://registry.yarnpkg.com/revalidator/-/revalidator-0.1.8.tgz#fece61bfa0c1b52a206bd6b18198184bdd523a3b" @@ -8721,6 +8793,11 @@ run-async@^2.2.0: dependencies: is-promise "^2.1.0" +run-parallel@^1.1.9: + version "1.1.9" + resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.1.9.tgz#c9dd3a7cf9f4b2c4b6244e173a6ed866e61dd679" + integrity sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q== + run-queue@^1.0.0, run-queue@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47" @@ -8808,7 +8885,15 @@ schema-utils@^1.0.0: ajv-errors "^1.0.0" ajv-keywords "^3.1.0" -script-ext-html-webpack-plugin@^2.1.3: +schema-utils@^2.0.0, schema-utils@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.0.1.tgz#1eec2e059556af841b7f3a83b61af13d7a3f9196" + integrity sha512-HJFKJ4JixDpRur06QHwi8uu2kZbng318ahWEKgBjc0ZklcE4FDvmm2wghb448q0IRaABxIESt8vqPFvwgMB80A== + dependencies: + ajv "^6.1.0" + ajv-keywords "^3.1.0" + +script-ext-html-webpack-plugin@^2.1.4: version "2.1.4" resolved "https://registry.yarnpkg.com/script-ext-html-webpack-plugin/-/script-ext-html-webpack-plugin-2.1.4.tgz#7c309354e310bf78523e1b84ca96fd374ceb9880" integrity sha512-7MAv3paAMfh9y2Rg+yQKp9jEGC5cEcmdge4EomRqri10qoczmliYEVPVNz0/5e9QQ202e05qDll9B8zZlY9N1g== @@ -8848,34 +8933,15 @@ semver-diff@^2.0.0: integrity sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA== semver@^6.0.0, semver@^6.1.0, semver@^6.1.1: - version "6.2.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-6.2.0.tgz#4d813d9590aaf8a9192693d6c85b9344de5901db" - integrity sha512-jdFC1VdUGT/2Scgbimf7FSx9iJLXoqfglSF+gJeuNWVpiE37OIbc1jywR/GJyFdz3mnkz2/id0L0J/cr0izR5A== + version "6.3.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" + integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== semver@~5.3.0: version "5.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" integrity sha1-myzl094C0XxgEq0yaqa00M9U+U8= -send@0.16.2: - version "0.16.2" - resolved "https://registry.yarnpkg.com/send/-/send-0.16.2.tgz#6ecca1e0f8c156d141597559848df64730a6bbc1" - integrity sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw== - dependencies: - debug "2.6.9" - depd "~1.1.2" - destroy "~1.0.4" - encodeurl "~1.0.2" - escape-html "~1.0.3" - etag "~1.8.1" - fresh "0.5.2" - http-errors "~1.6.2" - mime "1.4.1" - ms "2.0.0" - on-finished "~2.3.0" - range-parser "~1.2.0" - statuses "~1.4.0" - send@0.17.1: version "0.17.1" resolved "https://registry.yarnpkg.com/send/-/send-0.17.1.tgz#c1d8b059f7900f7466dd4938bdc44e11ddb376c8" @@ -8913,16 +8979,6 @@ serve-index@^1.9.1: mime-types "~2.1.17" parseurl "~1.3.2" -serve-static@1.13.2: - version "1.13.2" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.13.2.tgz#095e8472fd5b46237db50ce486a43f4b86c6cec1" - integrity sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw== - dependencies: - encodeurl "~1.0.2" - escape-html "~1.0.3" - parseurl "~1.3.2" - send "0.16.2" - serve-static@1.14.1: version "1.14.1" resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.14.1.tgz#666e636dc4f010f7ef29970a88a674320898b2f9" @@ -9033,6 +9089,11 @@ slash@^2.0.0: resolved "https://registry.yarnpkg.com/slash/-/slash-2.0.0.tgz#de552851a1759df3a8f206535442f5ec4ddeab44" integrity sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A== +slash@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" + integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== + slice-ansi@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.1.0.tgz#cacd7693461a637a5788d92a7dd4fba068e81636" @@ -9123,7 +9184,7 @@ source-map-resolve@^0.5.0, source-map-resolve@^0.5.2: source-map-url "^0.4.0" urix "^0.1.0" -source-map-support@^0.5.6, source-map-support@~0.5.10, source-map-support@~0.5.12: +source-map-support@^0.5.6, source-map-support@~0.5.12: version "0.5.12" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.12.tgz#b4f3b10d51857a5af0138d3ce8003b201613d599" integrity sha512-4h2Pbvyy15EE02G+JOZpUCmqWJuqrs+sEkzewTm++BPi7Hvn/HwcqLAcNxYAyI0x13CpPPn+kMjl+hplXMHITQ== @@ -9192,9 +9253,9 @@ spdy-transport@^3.0.0: wbuf "^1.7.3" spdy@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/spdy/-/spdy-4.0.0.tgz#81f222b5a743a329aa12cea6a390e60e9b613c52" - integrity sha512-ot0oEGT/PGUpzf/6uk4AWLqkq+irlqHXkrdbk51oWONh3bxQmBuljxPNl66zlRRcIJStWq0QkLUCPOPjgjvU0Q== + version "4.0.1" + resolved "https://registry.yarnpkg.com/spdy/-/spdy-4.0.1.tgz#6f12ed1c5db7ea4f24ebb8b89ba58c87c08257f2" + integrity sha512-HeZS3PBdMA+sZSu0qwpCxl3DeALD5ASx8pAX0jZdKXSpPWbQ6SYGnlg3BBmYLx5LtiZrmkAZfErCm2oECBcioA== dependencies: debug "^4.1.0" handle-thing "^2.0.0" @@ -9259,16 +9320,11 @@ static-extend@^0.1.1: define-property "^0.2.5" object-copy "^0.1.0" -statuses@1.5.0, "statuses@>= 1.4.0 < 2", "statuses@>= 1.5.0 < 2", statuses@^1.5.0, statuses@~1.5.0: +"statuses@>= 1.4.0 < 2", "statuses@>= 1.5.0 < 2", statuses@^1.5.0, statuses@~1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= -statuses@~1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.4.0.tgz#bb73d446da2796106efcc1b601a253d6c46bd087" - integrity sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew== - stdout-stream@^1.4.0: version "1.4.1" resolved "https://registry.yarnpkg.com/stdout-stream/-/stdout-stream-1.4.1.tgz#5ac174cdd5cd726104aa0c0b2bd83815d8d535de" @@ -9540,7 +9596,7 @@ term-size@^1.2.0: dependencies: execa "^0.7.0" -terser-webpack-plugin@1.3.0, terser-webpack-plugin@^1.1.0: +terser-webpack-plugin@^1.1.0, terser-webpack-plugin@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.3.0.tgz#69aa22426299f4b5b3775cbed8cb2c5d419aa1d4" integrity sha512-W2YWmxPjjkUcOWa4pBEv4OP4er1aeQJlSo2UhtCFQCuRXEHjOFscO8VyWHj9JLlA0RzQb8Y2/Ta78XZvT54uGg== @@ -9556,16 +9612,7 @@ terser-webpack-plugin@1.3.0, terser-webpack-plugin@^1.1.0: webpack-sources "^1.3.0" worker-farm "^1.7.0" -terser@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/terser/-/terser-4.0.0.tgz#ef356f6f359a963e2cc675517f21c1c382877374" - integrity sha512-dOapGTU0hETFl1tCo4t56FN+2jffoKyER9qBGoUFyZ6y7WLoKT0bF+lAYi6B6YsILcGF3q1C2FBh8QcKSCgkgA== - dependencies: - commander "^2.19.0" - source-map "~0.6.1" - source-map-support "~0.5.10" - -terser@^4.0.0: +terser@^4.0.0, terser@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/terser/-/terser-4.1.2.tgz#b2656c8a506f7ce805a3f300a2ff48db022fa391" integrity sha512-jvNoEQSPXJdssFwqPSgWjsOrb+ELoE+ILpHPKXC83tIxOlh2U75F1KuB2luLD/3a6/7K3Vw5pDn+hvu0C4AzSw== @@ -9671,6 +9718,13 @@ to-regex-range@^2.1.0: is-number "^3.0.0" repeat-string "^1.6.1" +to-regex-range@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== + dependencies: + is-number "^7.0.0" + to-regex@^3.0.1, to-regex@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" @@ -9772,7 +9826,7 @@ type-check@~0.3.2: dependencies: prelude-ls "~1.1.2" -type-is@^1.6.4, type-is@~1.6.16, type-is@~1.6.17, type-is@~1.6.18: +type-is@^1.6.4, type-is@~1.6.17, type-is@~1.6.18: version "1.6.18" resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== @@ -9938,7 +9992,7 @@ uri-js@^4.2.2: dependencies: punycode "^2.1.0" -urijs@1.19.1, urijs@^1.19.1: +urijs@^1.19.1: version "1.19.1" resolved "https://registry.yarnpkg.com/urijs/-/urijs-1.19.1.tgz#5b0ff530c0cbde8386f6342235ba5ca6e995d25a" integrity sha512-xVrGVi94ueCJNrBSTjWqjvtgvl3cyOTThp2zaMaFNGp3F542TR6sM3f2o8RqZl+AwteClSVmoCyt0ka4RjQOQg== @@ -9948,14 +10002,14 @@ urix@^0.1.0: resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= -url-loader@1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-1.1.2.tgz#b971d191b83af693c5e3fea4064be9e1f2d7f8d8" - integrity sha512-dXHkKmw8FhPqu8asTc1puBfe3TehOCo2+RmOOev5suNCIYBcT626kxiWg1NBVkwc4rO8BGa7gP70W7VXuqHrjg== +url-loader@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-2.1.0.tgz#bcc1ecabbd197e913eca23f5e0378e24b4412961" + integrity sha512-kVrp/8VfEm5fUt+fl2E0FQyrpmOYgMEkBsv8+UDP1wFhszECq5JyGF33I7cajlVY90zRZ6MyfgKXngLvHYZX8A== dependencies: - loader-utils "^1.1.0" - mime "^2.0.3" - schema-utils "^1.0.0" + loader-utils "^1.2.3" + mime "^2.4.4" + schema-utils "^2.0.0" url-parse-lax@^1.0.0: version "1.0.0" @@ -10116,7 +10170,7 @@ webidl-conversions@^4.0.2: resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" integrity sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg== -webpack-cli@^3.3.4: +webpack-cli@^3.3.6: version "3.3.6" resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-3.3.6.tgz#2c8c399a2642133f8d736a359007a052e060032c" integrity sha512-0vEa83M7kJtxK/jUhlpZ27WHIOndz5mghWL2O53kiDoA9DIxSKnfqB92LoqEn77cT4f3H2cZm1BMEat/6AZz3A== @@ -10143,10 +10197,10 @@ webpack-dev-middleware@^3.7.0: range-parser "^1.2.1" webpack-log "^2.0.0" -webpack-dev-server@3.5.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-3.5.0.tgz#f1bca520526181e11cd6a643f3233bc10c693c29" - integrity sha512-Gr4tBz+BRliDy1Jh9YJBOuwf13CipVxf4PCH7alB/rV/heszJ/U8M7KYekzlQn8XvoGgyozw7Uef2GDFd0ZLvg== +webpack-dev-server@^3.7.2: + version "3.7.2" + resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-3.7.2.tgz#f79caa5974b7f8b63268ef5421222a8486d792f5" + integrity sha512-mjWtrKJW2T9SsjJ4/dxDC2fkFVUw8jlpemDERqV0ZJIkjjjamR2AbQlr3oz+j4JLhYCHImHnXZK5H06P2wvUew== dependencies: ansi-html "0.0.7" bonjour "^3.5.0" @@ -10162,8 +10216,9 @@ webpack-dev-server@3.5.0: internal-ip "^4.3.0" ip "^1.1.5" killable "^1.0.1" - loglevel "^1.6.2" + loglevel "^1.6.3" opn "^5.5.0" + p-retry "^3.0.1" portfinder "^1.0.20" schema-utils "^1.0.0" selfsigned "^1.10.4" @@ -10205,10 +10260,10 @@ webpack-sources@^1.0.1, webpack-sources@^1.1.0, webpack-sources@^1.3.0: source-list-map "^2.0.0" source-map "~0.6.1" -webpack@^4.34.0: - version "4.36.1" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.36.1.tgz#f546fda7a403a76faeaaa7196c50d12370ed18a9" - integrity sha512-Ej01/N9W8DVyhEpeQnbUdGvOECw0L46FxS12cCOs8gSK7bhUlrbHRnWkjiXckGlHjUrmL89kDpTRIkUk6Y+fKg== +webpack@^4.36.1: + version "4.38.0" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.38.0.tgz#6d77108404b08883c78f4e7e45a43c4e5c47c931" + integrity sha512-lbuFsVOq8PZY+1Ytz/mYOvYOo+d4IJ31hHk/7iyoeWtwN33V+5HYotSH+UIb9tq914ey0Hot7z6HugD+je3sWw== dependencies: "@webassemblyjs/ast" "1.8.5" "@webassemblyjs/helper-module-context" "1.8.5" @@ -10329,10 +10384,10 @@ winston@2.1.x: pkginfo "0.3.x" stack-trace "0.0.x" -wootils@^2.0.0, wootils@^2.3.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/wootils/-/wootils-2.5.0.tgz#597813ce496e4afe3a335f182002fd6581cbc674" - integrity sha512-lV8U2jXe2V73zpDvOEjqdLbvrym3USGh49oy2flVQAVREmLwotbLlMNX10IgIoICwJfs8+r2REo5uupN4safww== +wootils@^2.3.0, wootils@^2.4.1, wootils@^2.5.0: + 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" From c0c5f710b55897a7f996d4d0905200d85cbc2c1f Mon Sep 17 00:00:00 2001 From: homer0 Date: Wed, 31 Jul 2019 07:04:18 -0300 Subject: [PATCH 22/24] fix(project): remove local repository from the lock file --- yarn.lock | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/yarn.lock b/yarn.lock index 999f264..6f198bd 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4080,7 +4080,7 @@ extglob@^2.0.4: extra-watch-webpack-plugin@^1.0.3: version "1.0.3" - resolved "http://local.npm/extra-watch-webpack-plugin/-/extra-watch-webpack-plugin-1.0.3.tgz#774248f4ac590159bd5878d862d77afce697d7cc" + resolved "https://registry.yarnpkg.com/extra-watch-webpack-plugin/-/extra-watch-webpack-plugin-1.0.3.tgz#774248f4ac590159bd5878d862d77afce697d7cc" integrity sha512-ZScQdMH6hNofRRN6QMQFg+aa5vqimfBgnPXmRDhdaLpttT6hrzpY9Oyren3Gh/FySPrgsvKCNbx/NFA7XNdIsg== dependencies: glob "^7.1.2" @@ -8893,7 +8893,7 @@ sax@^1.1.4, sax@^1.2.4, sax@~1.2.4: schema-utils@^0.4.0: version "0.4.7" - resolved "http://local.npm/schema-utils/-/schema-utils-0.4.7.tgz#ba74f597d2be2ea880131746ee17d0a093c68187" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.4.7.tgz#ba74f597d2be2ea880131746ee17d0a093c68187" integrity sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ== dependencies: ajv "^6.1.0" @@ -9208,9 +9208,9 @@ source-map-resolve@^0.5.0, source-map-resolve@^0.5.2: urix "^0.1.0" source-map-support@^0.5.6, source-map-support@~0.5.12: - version "0.5.12" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.12.tgz#b4f3b10d51857a5af0138d3ce8003b201613d599" - integrity sha512-4h2Pbvyy15EE02G+JOZpUCmqWJuqrs+sEkzewTm++BPi7Hvn/HwcqLAcNxYAyI0x13CpPPn+kMjl+hplXMHITQ== + version "0.5.13" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.13.tgz#31b24a9c2e73c2de85066c0feb7d44767ed52932" + integrity sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w== dependencies: buffer-from "^1.0.0" source-map "^0.6.0" @@ -10276,9 +10276,9 @@ webpack-log@^2.0.0: uuid "^3.3.2" webpack-sources@^1.0.1, webpack-sources@^1.1.0, webpack-sources@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.3.0.tgz#2a28dcb9f1f45fe960d8f1493252b5ee6530fa85" - integrity sha512-OiVgSrbGu7NEnEvQJJgdSFPl2qWKkWq5lHMhgiToIiN9w34EBnjYzSYs+VbL5KoYiLNtFFa7BZIKxRED3I32pA== + version "1.4.0" + resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.0.tgz#be93d629601aa3ea48e8686ee4d78d9c4e706061" + integrity sha512-1e4Cxgqfl8vnDhXMMpegX7JWWP7HwV8Kp8/Oefs6EG52bRtOR9vuOXM1Gl1vy6NwHfUxHeuR6ElD4HamuRPO0A== dependencies: source-list-map "^2.0.0" source-map "~0.6.1" From 8f4556d0e22f488c523eb71b6616c2734d5e6f35 Mon Sep 17 00:00:00 2001 From: homer0 Date: Thu, 1 Aug 2019 02:17:01 -0300 Subject: [PATCH 23/24] chore(project): update dependencies --- package.json | 156 ++++++++++++------------- yarn.lock | 315 +++++++++++++++++++++------------------------------ 2 files changed, 209 insertions(+), 262 deletions(-) diff --git a/package.json b/package.json index 622b9f8..7f09838 100644 --- a/package.json +++ b/package.json @@ -1,88 +1,88 @@ { - "name": "projext-plugin-webpack", - "description": "Allows projext to use webpack as a build engine.", - "homepage": "https://homer0.github.io/projext-plugin-webpack/", - "version": "8.0.3", - "repository": "homer0/projext-plugin-webpack", - "author": "Leonardo Apiwan (@homer0) ", - "license": "MIT", - "dependencies": { - "projext": "^6.0.6", - "wootils": "^2.5.0", - "jimple": "^1.5.0", - "fs-extra": "^8.1.0", - "extend": "^3.0.2", + "name": "projext-plugin-webpack", + "description": "Allows projext to use webpack as a build engine.", + "homepage": "https://homer0.github.io/projext-plugin-webpack/", + "version": "8.0.3", + "repository": "homer0/projext-plugin-webpack", + "author": "Leonardo Apiwan (@homer0) ", + "license": "MIT", + "dependencies": { + "projext": "^7.0.0", + "wootils": "^2.6.0", + "jimple": "^1.5.0", + "fs-extra": "^8.1.0", + "extend": "^3.0.2", - "core-js": "^3.1.4", - "regenerator-runtime": "^0.13.3", + "core-js": "^3.1.4", + "regenerator-runtime": "0.13.3", - "webpack": "^4.36.1", - "webpack-cli": "^3.3.6", - "webpack-dev-server": "^3.7.2", - "mini-css-extract-plugin": "0.8.0", - "html-webpack-plugin": "^3.2.0", - "script-ext-html-webpack-plugin": "^2.1.4", - "compression-webpack-plugin": "^3.0.0", - "terser-webpack-plugin": "^1.3.0", - "optimize-css-assets-webpack-plugin": "^5.0.3", - "copy-webpack-plugin": "^5.0.3", - "extra-watch-webpack-plugin": "^1.0.3", + "webpack": "^4.38.0", + "webpack-cli": "^3.3.6", + "webpack-dev-server": "^3.7.2", + "mini-css-extract-plugin": "0.8.0", + "html-webpack-plugin": "^3.2.0", + "script-ext-html-webpack-plugin": "^2.1.4", + "compression-webpack-plugin": "^3.0.0", + "terser-webpack-plugin": "^1.4.1", + "optimize-css-assets-webpack-plugin": "^5.0.3", + "copy-webpack-plugin": "^5.0.4", + "extra-watch-webpack-plugin": "^1.0.3", - "@babel/core": "7.5.5", - "node-sass": "^4.12.0", + "@babel/core": "7.5.5", + "node-sass": "^4.12.0", - "babel-loader": "^8.0.6", - "css-loader": "^3.1.0", - "sass-loader": "^7.1.0", - "style-loader": "0.23.1", - "raw-loader": "^3.1.0", - "file-loader": "^4.1.0", - "url-loader": "^2.1.0", - "resolve-url-loader": "^3.1.0", - "source-map-loader": "0.2.4", + "babel-loader": "^8.0.6", + "css-loader": "^3.1.0", + "sass-loader": "^7.1.0", + "style-loader": "0.23.1", + "raw-loader": "^3.1.0", + "file-loader": "^4.1.0", + "url-loader": "^2.1.0", + "resolve-url-loader": "^3.1.0", + "source-map-loader": "0.2.4", - "webpack-dev-middleware": "^3.7.0", - "webpack-hot-middleware": "^2.25.0", + "webpack-dev-middleware": "^3.7.0", + "webpack-hot-middleware": "^2.25.0", - "terser": "^4.1.2", + "terser": "^4.1.2", - "opener": "^1.5.1" - }, - "devDependencies": { - "eslint": "^5.16.0", - "eslint-config-airbnb-base": "^13.2.0", - "eslint-plugin-import": "^2.18.2", - "eslint-plugin-node": "^9.1.0", - "@babel/preset-env": "7.5.5", - "@babel/plugin-transform-runtime": "7.5.5", - "jest-ex": "^6.1.1", - "jest-cli": "^24.8.0", - "jasmine-expect": "^4.0.2", - "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.1" - }, - "engine-strict": true, - "engines": { - "node": ">=8.10.0", - "npm": ">=3.0.0" - }, - "main": "src/index.js", - "husky": { - "hooks": { - "pre-commit": "./utils/hooks/pre-commit", - "post-merge": "./utils/hooks/post-merge" - } - }, - "scripts": { - "test": "./utils/scripts/test", - "lint": "./utils/scripts/lint", - "lint:full": "./utils/scripts/lint-full", - "docs": "./utils/scripts/docs", - "todo": "./utils/scripts/todo" + "opener": "^1.5.1" + }, + "devDependencies": { + "eslint": "^5.16.0", + "eslint-config-airbnb-base": "^13.2.0", + "eslint-plugin-import": "^2.18.2", + "eslint-plugin-node": "^9.1.0", + "@babel/preset-env": "7.5.5", + "@babel/plugin-transform-runtime": "7.5.5", + "jest-ex": "^6.1.1", + "jest-cli": "^24.8.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" + }, + "engine-strict": true, + "engines": { + "node": ">=8.10.0", + "npm": ">=3.0.0" + }, + "main": "src/index.js", + "husky": { + "hooks": { + "pre-commit": "./utils/hooks/pre-commit", + "post-merge": "./utils/hooks/post-merge" } + }, + "scripts": { + "test": "./utils/scripts/test", + "lint": "./utils/scripts/lint", + "lint:full": "./utils/scripts/lint-full", + "docs": "./utils/scripts/docs", + "todo": "./utils/scripts/todo" + } } diff --git a/yarn.lock b/yarn.lock index 62ff291..4d86409 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,16 +2,16 @@ # yarn lockfile v1 -"@babel/cli@7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/cli/-/cli-7.4.4.tgz#5454bb7112f29026a4069d8e6f0e1794e651966c" - integrity sha512-XGr5YjQSjgTa6OzQZY57FAJsdeVSAKR/u/KA5exWIz66IKtv/zXtHy+fIZcMry/EgYegwuHE7vzGnrFhjdIAsQ== +"@babel/cli@7.5.5": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/cli/-/cli-7.5.5.tgz#bdb6d9169e93e241a08f5f7b0265195bf38ef5ec" + integrity sha512-UHI+7pHv/tk9g6WXQKYz+kmXTI77YtuY3vqC59KIqcoWEjsJJSG6rAxKaLsgj3LDyadsPrCB929gVOKM6Hui0w== dependencies: commander "^2.8.1" convert-source-map "^1.1.0" fs-readdir-recursive "^1.1.0" glob "^7.0.0" - lodash "^4.17.11" + lodash "^4.17.13" mkdirp "^0.5.1" output-file-sync "^2.0.0" slash "^2.0.0" @@ -26,26 +26,6 @@ dependencies: "@babel/highlight" "^7.0.0" -"@babel/core@7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.4.4.tgz#84055750b05fcd50f9915a826b44fa347a825250" - integrity sha512-lQgGX3FPRgbz2SKmhMtYgJvVzGZrmjaF4apZ2bLwofAKiSjxU0drPh4S/VasyYXwaTs+A1gvQ45BN8SQJzHsQQ== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/generator" "^7.4.4" - "@babel/helpers" "^7.4.4" - "@babel/parser" "^7.4.4" - "@babel/template" "^7.4.4" - "@babel/traverse" "^7.4.4" - "@babel/types" "^7.4.4" - convert-source-map "^1.1.0" - debug "^4.1.0" - json5 "^2.1.0" - lodash "^4.17.11" - resolve "^1.3.2" - semver "^5.4.1" - source-map "^0.5.0" - "@babel/core@7.5.4": version "7.5.4" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.5.4.tgz#4c32df7ad5a58e9ea27ad025c11276324e0b4ddd" @@ -86,7 +66,7 @@ semver "^5.4.1" source-map "^0.5.0" -"@babel/generator@^7.4.0", "@babel/generator@^7.4.4", "@babel/generator@^7.5.0", "@babel/generator@^7.5.5": +"@babel/generator@^7.4.0", "@babel/generator@^7.5.0", "@babel/generator@^7.5.5": version "7.5.5" resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.5.5.tgz#873a7f936a3c89491b43536d12245b626664e3cf" integrity sha512-ETI/4vyTSxTzGnU2c49XHv2zhExkv9JHLTwDAFz85kmcwuShvYG2H08FwgIguQf4JC75CBnXAUM5PqeF4fj0nQ== @@ -264,7 +244,7 @@ "@babel/traverse" "^7.1.0" "@babel/types" "^7.2.0" -"@babel/helpers@^7.4.4", "@babel/helpers@^7.5.4", "@babel/helpers@^7.5.5": +"@babel/helpers@^7.5.4", "@babel/helpers@^7.5.5": version "7.5.5" resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.5.5.tgz#63908d2a73942229d1e6685bc2a0e730dde3b75e" integrity sha512-nRq2BUhxZFnfEn/ciJuhklHvFOqjJUD5wpx+1bxUF2axL9C+v4DE/dmp5sT2dKnpOs4orZWzpAZqlCy8QqE/7g== @@ -296,12 +276,12 @@ "@babel/helper-remap-async-to-generator" "^7.1.0" "@babel/plugin-syntax-async-generators" "^7.2.0" -"@babel/plugin-proposal-class-properties@7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.4.4.tgz#93a6486eed86d53452ab9bab35e368e9461198ce" - integrity sha512-WjKTI8g8d5w1Bc9zgwSz2nfrsNQsXcCf9J9cdCvrJV6RF56yztwm4TmJC0MgJ9tvwO9gUA/mcYe89bLdGfiXFg== +"@babel/plugin-proposal-class-properties@7.5.5": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.5.5.tgz#a974cfae1e37c3110e71f3c6a2e48b8e71958cd4" + integrity sha512-AF79FsnWFxjlaosgdi421vmYG6/jg79bVD0dpD44QdgobzHKuLZ6S3vl8la9qIeSwGi8i1fS0O1mfuDAAdo1/A== dependencies: - "@babel/helper-create-class-features-plugin" "^7.4.4" + "@babel/helper-create-class-features-plugin" "^7.5.5" "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-proposal-decorators@7.4.4": @@ -329,15 +309,7 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-syntax-json-strings" "^7.2.0" -"@babel/plugin-proposal-object-rest-spread@7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.4.4.tgz#1ef173fcf24b3e2df92a678f027673b55e7e3005" - integrity sha512-dMBG6cSPBbHeEBdFXeQ2QLc5gUpg4Vkaz8octD4aoW/ISO+jBOcsuxYL7bsb5WSu8RLP6boxrBIALEHgoHtO9g== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-object-rest-spread" "^7.2.0" - -"@babel/plugin-proposal-object-rest-spread@^7.4.4", "@babel/plugin-proposal-object-rest-spread@^7.5.4", "@babel/plugin-proposal-object-rest-spread@^7.5.5": +"@babel/plugin-proposal-object-rest-spread@7.5.5", "@babel/plugin-proposal-object-rest-spread@^7.5.4", "@babel/plugin-proposal-object-rest-spread@^7.5.5": version "7.5.5" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.5.5.tgz#61939744f71ba76a3ae46b5eea18a54c16d22e58" integrity sha512-F2DxJJSQ7f64FyTVl5cw/9MWn6naXGdk3Q3UhDbFEEHv+EilCPoeRD3Zh/Utx1CJz4uyKlQ4uH+bJPbEhMV7Zw== @@ -425,7 +397,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-async-to-generator@^7.4.4", "@babel/plugin-transform-async-to-generator@^7.5.0": +"@babel/plugin-transform-async-to-generator@^7.5.0": version "7.5.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.5.0.tgz#89a3848a0166623b5bc481164b5936ab947e887e" integrity sha512-mqvkzwIGkq0bEF1zLRRiTdjfomZJDV33AH3oQzHVGkI2VzEmXLpKKOBvEVaFZBJdN0XTyH38s9j/Kiqr68dggg== @@ -470,7 +442,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-destructuring@^7.4.4", "@babel/plugin-transform-destructuring@^7.5.0": +"@babel/plugin-transform-destructuring@^7.5.0": version "7.5.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.5.0.tgz#f6c09fdfe3f94516ff074fe877db7bc9ef05855a" integrity sha512-YbYgbd3TryYYLGyC7ZR+Tq8H/+bCmwoaxHfJHupom5ECstzbRLTch6gOQbhEY9Z4hiCNHEURgq06ykFv9JZ/QQ== @@ -486,7 +458,7 @@ "@babel/helper-regex" "^7.4.4" regexpu-core "^4.5.4" -"@babel/plugin-transform-duplicate-keys@^7.2.0", "@babel/plugin-transform-duplicate-keys@^7.5.0": +"@babel/plugin-transform-duplicate-keys@^7.5.0": version "7.5.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.5.0.tgz#c5dbf5106bf84cdf691222c0974c12b1df931853" integrity sha512-igcziksHizyQPlX9gfSjHkE2wmoCH3evvD2qR5w29/Dk0SMKE/eOI7f1HhBdNhR/zxJDqrgpoDTq5YSLH/XMsQ== @@ -538,7 +510,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-modules-amd@^7.2.0", "@babel/plugin-transform-modules-amd@^7.5.0": +"@babel/plugin-transform-modules-amd@^7.5.0": version "7.5.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.5.0.tgz#ef00435d46da0a5961aa728a1d2ecff063e4fb91" integrity sha512-n20UsQMKnWrltocZZm24cRURxQnWIvsABPJlw/fvoy9c6AgHZzoelAIzajDHAQrDpuKFFPPcFGd7ChsYuIUMpg== @@ -547,7 +519,7 @@ "@babel/helper-plugin-utils" "^7.0.0" babel-plugin-dynamic-import-node "^2.3.0" -"@babel/plugin-transform-modules-commonjs@^7.4.4", "@babel/plugin-transform-modules-commonjs@^7.5.0": +"@babel/plugin-transform-modules-commonjs@^7.5.0": version "7.5.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.5.0.tgz#425127e6045231360858eeaa47a71d75eded7a74" integrity sha512-xmHq0B+ytyrWJvQTc5OWAC4ii6Dhr0s22STOoydokG51JjWhyYo5mRPXoi+ZmtHQhZZwuXNN+GG5jy5UZZJxIQ== @@ -557,7 +529,7 @@ "@babel/helper-simple-access" "^7.1.0" babel-plugin-dynamic-import-node "^2.3.0" -"@babel/plugin-transform-modules-systemjs@^7.4.4", "@babel/plugin-transform-modules-systemjs@^7.5.0": +"@babel/plugin-transform-modules-systemjs@^7.5.0": version "7.5.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.5.0.tgz#e75266a13ef94202db2a0620977756f51d52d249" integrity sha512-Q2m56tyoQWmuNGxEtUyeEkm6qJYFqs4c+XyXH5RAuYxObRNz9Zgj/1g2GMnjYp2EUyEy7YTrxliGCXzecl/vJg== @@ -574,7 +546,7 @@ "@babel/helper-module-transforms" "^7.1.0" "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-named-capturing-groups-regex@^7.4.4", "@babel/plugin-transform-named-capturing-groups-regex@^7.4.5": +"@babel/plugin-transform-named-capturing-groups-regex@^7.4.5": version "7.4.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.4.5.tgz#9d269fd28a370258199b4294736813a60bbdd106" integrity sha512-z7+2IsWafTBbjNsOxU/Iv5CvTJlr5w4+HGu1HovKYTtgJ362f7kBcQglkfmlspKKZ3bgrbSGvLfNx++ZJgCWsg== @@ -612,7 +584,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-regenerator@^7.4.4", "@babel/plugin-transform-regenerator@^7.4.5": +"@babel/plugin-transform-regenerator@^7.4.5": version "7.4.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.4.5.tgz#629dc82512c55cee01341fb27bdfcb210354680f" integrity sha512-gBKRh5qAaCWntnd09S8QC7r3auLCqq5DI6O0DlfoyDjslSBVqBibrMdsqO+Uhmx3+BlOmE/Kw1HFxmGbv0N9dA== @@ -626,16 +598,6 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-runtime@7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.4.4.tgz#a50f5d16e9c3a4ac18a1a9f9803c107c380bce08" - integrity sha512-aMVojEjPszvau3NRg+TIH14ynZLvPewH4xhlCW1w6A3rkxTS1m4uwzRclYR9oS+rl/dr+kT+pzbfHuAWP/lc7Q== - dependencies: - "@babel/helper-module-imports" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - resolve "^1.8.1" - semver "^5.5.1" - "@babel/plugin-transform-runtime@7.5.0": version "7.5.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.5.0.tgz#45242c2c9281158c5f06d25beebac63e498a284e" @@ -711,68 +673,6 @@ "@babel/helper-regex" "^7.4.4" regexpu-core "^4.5.4" -"@babel/polyfill@7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/polyfill/-/polyfill-7.4.4.tgz#78801cf3dbe657844eeabf31c1cae3828051e893" - integrity sha512-WlthFLfhQQhh+A2Gn5NSFl0Huxz36x86Jn+E9OW7ibK8edKPq+KLy4apM1yDpQ8kJOVi1OVjpP4vSDLdrI04dg== - dependencies: - core-js "^2.6.5" - regenerator-runtime "^0.13.2" - -"@babel/preset-env@7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.4.4.tgz#b6f6825bfb27b3e1394ca3de4f926482722c1d6f" - integrity sha512-FU1H+ACWqZZqfw1x2G1tgtSSYSfxJLkpaUQL37CenULFARDo+h4xJoVHzRoHbK+85ViLciuI7ME4WTIhFRBBlw== - dependencies: - "@babel/helper-module-imports" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-proposal-async-generator-functions" "^7.2.0" - "@babel/plugin-proposal-json-strings" "^7.2.0" - "@babel/plugin-proposal-object-rest-spread" "^7.4.4" - "@babel/plugin-proposal-optional-catch-binding" "^7.2.0" - "@babel/plugin-proposal-unicode-property-regex" "^7.4.4" - "@babel/plugin-syntax-async-generators" "^7.2.0" - "@babel/plugin-syntax-json-strings" "^7.2.0" - "@babel/plugin-syntax-object-rest-spread" "^7.2.0" - "@babel/plugin-syntax-optional-catch-binding" "^7.2.0" - "@babel/plugin-transform-arrow-functions" "^7.2.0" - "@babel/plugin-transform-async-to-generator" "^7.4.4" - "@babel/plugin-transform-block-scoped-functions" "^7.2.0" - "@babel/plugin-transform-block-scoping" "^7.4.4" - "@babel/plugin-transform-classes" "^7.4.4" - "@babel/plugin-transform-computed-properties" "^7.2.0" - "@babel/plugin-transform-destructuring" "^7.4.4" - "@babel/plugin-transform-dotall-regex" "^7.4.4" - "@babel/plugin-transform-duplicate-keys" "^7.2.0" - "@babel/plugin-transform-exponentiation-operator" "^7.2.0" - "@babel/plugin-transform-for-of" "^7.4.4" - "@babel/plugin-transform-function-name" "^7.4.4" - "@babel/plugin-transform-literals" "^7.2.0" - "@babel/plugin-transform-member-expression-literals" "^7.2.0" - "@babel/plugin-transform-modules-amd" "^7.2.0" - "@babel/plugin-transform-modules-commonjs" "^7.4.4" - "@babel/plugin-transform-modules-systemjs" "^7.4.4" - "@babel/plugin-transform-modules-umd" "^7.2.0" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.4.4" - "@babel/plugin-transform-new-target" "^7.4.4" - "@babel/plugin-transform-object-super" "^7.2.0" - "@babel/plugin-transform-parameters" "^7.4.4" - "@babel/plugin-transform-property-literals" "^7.2.0" - "@babel/plugin-transform-regenerator" "^7.4.4" - "@babel/plugin-transform-reserved-words" "^7.2.0" - "@babel/plugin-transform-shorthand-properties" "^7.2.0" - "@babel/plugin-transform-spread" "^7.2.0" - "@babel/plugin-transform-sticky-regex" "^7.2.0" - "@babel/plugin-transform-template-literals" "^7.4.4" - "@babel/plugin-transform-typeof-symbol" "^7.2.0" - "@babel/plugin-transform-unicode-regex" "^7.4.4" - "@babel/types" "^7.4.4" - browserslist "^4.5.2" - core-js-compat "^3.0.0" - invariant "^2.2.2" - js-levenshtein "^1.1.3" - semver "^5.5.0" - "@babel/preset-env@7.5.4": version "7.5.4" resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.5.4.tgz#64bc15041a3cbb0798930319917e70fcca57713d" @@ -893,7 +793,7 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-transform-flow-strip-types" "^7.0.0" -"@babel/preset-typescript@^7.3.3": +"@babel/preset-typescript@7.3.3": version "7.3.3" resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.3.3.tgz#88669911053fa16b2b276ea2ede2ca603b3f307a" integrity sha512-mzMVuIP4lqtn4du2ynEfdO0+RYcslwrZiJHXu4MGaC1ctJiW2fyaeDrtjJGs7R/KebZ1sgowcIoWf4uRpEfKEg== @@ -901,10 +801,10 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-transform-typescript" "^7.3.2" -"@babel/runtime@7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.4.4.tgz#dc2e34982eb236803aa27a07fea6857af1b9171d" - integrity sha512-w0+uT71b6Yi7i5SE0co4NioIpSYS6lLiXvCzWzGSKvpK5vdQtCbICHMj+gbAKAOtxiV6HsVh/MBdaF9EQ6faSg== +"@babel/runtime@7.5.5": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.5.5.tgz#74fba56d35efbeca444091c7850ccd494fd2f132" + integrity sha512-28QvEGyQyNkB0/m2B4FU7IEZGK2NUrcMtT6BZEFALTguLk+AUT6ofsHtPk5QyjAdUkpMJ+/Em+quwz4HOt30AQ== dependencies: regenerator-runtime "^0.13.2" @@ -2098,7 +1998,7 @@ browserify-zlib@^0.2.0: dependencies: pako "~1.0.5" -browserslist@^4.0.0, browserslist@^4.5.2, browserslist@^4.6.0, browserslist@^4.6.2: +browserslist@^4.0.0, browserslist@^4.6.0, browserslist@^4.6.2: version "4.6.6" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.6.6.tgz#6e4bf467cde520bc9dbdf3747dafa03531cec453" integrity sha512-D2Nk3W9JL9Fp/gIcWei8LrERCS+eXu9AM5cfXA8WEZ84lFks+ARnZ0q/R69m2SV3Wjma83QDDPxsNKXUwdIsyA== @@ -2161,7 +2061,7 @@ bytes@3.1.0: resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.0.tgz#f6cf7933a360e0588fa9fde85651cdc7f805d1f6" integrity sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg== -cacache@^11.2.0, cacache@^11.3.2, cacache@^11.3.3: +cacache@^11.2.0, cacache@^11.3.3: version "11.3.3" resolved "https://registry.yarnpkg.com/cacache/-/cacache-11.3.3.tgz#8bd29df8c6a718a6ebd2d010da4d7972ae3bbadc" integrity sha512-p8WcneCytvzPxhDvYp31PD039vi77I12W+/KfR9S8AZbaiARFBCpsPJS+9uhWfeBfeAtW7o/4vt3MUqLkbY6nA== @@ -2181,6 +2081,27 @@ cacache@^11.2.0, cacache@^11.3.2, cacache@^11.3.3: unique-filename "^1.1.1" y18n "^4.0.0" +cacache@^12.0.2: + version "12.0.2" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-12.0.2.tgz#8db03205e36089a3df6954c66ce92541441ac46c" + integrity sha512-ifKgxH2CKhJEg6tNdAwziu6Q33EvuG26tYcda6PT3WKisZcYDXsnEdnRv67Po3yCzFfaSoMjGZzJyD2c3DT1dg== + dependencies: + bluebird "^3.5.5" + chownr "^1.1.1" + figgy-pudding "^3.5.1" + glob "^7.1.4" + graceful-fs "^4.1.15" + infer-owner "^1.0.3" + lru-cache "^5.1.1" + mississippi "^3.0.0" + mkdirp "^0.5.1" + move-concurrently "^1.0.1" + promise-inflight "^1.0.1" + rimraf "^2.6.3" + ssri "^6.0.1" + unique-filename "^1.1.1" + y18n "^4.0.0" + cache-base@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" @@ -2746,7 +2667,7 @@ copy-descriptor@^0.1.0: resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= -copy-webpack-plugin@^5.0.3: +copy-webpack-plugin@^5.0.4: version "5.0.4" resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-5.0.4.tgz#c78126f604e24f194c6ec2f43a64e232b5d43655" integrity sha512-YBuYGpSzoCHSSDGyHy6VJ7SHojKp6WHT4D7ItcQFNAYx2hrwkMe56e97xfVR0/ovDuMTrMffXUiltvQljtAGeg== @@ -2764,7 +2685,7 @@ copy-webpack-plugin@^5.0.3: serialize-javascript "^1.7.0" webpack-log "^2.0.0" -core-js-compat@^3.0.0, core-js-compat@^3.1.1: +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== @@ -2778,7 +2699,7 @@ core-js-pure@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== -core-js@^2.4.0, core-js@^2.6.5: +core-js@^2.4.0: version "2.6.9" resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.9.tgz#6b4b214620c834152e179323727fc19741b084f2" integrity sha512-HOpZf6eXmnl7la+cUdMnLvUxKNqLUzJvgIziQ0DiF3JwSImNphIqdGqzj6hIKyX04MmV0poclQ7+wjWvxQyR2A== @@ -3246,6 +3167,17 @@ del@^4.1.1: pify "^4.0.1" rimraf "^2.6.3" +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== + 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" + delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" @@ -3450,6 +3382,16 @@ dot-prop@^4.1.0, dot-prop@^4.1.1: dependencies: is-obj "^1.0.0" +dotenv-expand@^5.1.0: + version "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== + duplexer3@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" @@ -3479,9 +3421,9 @@ ee-first@1.1.1: integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= electron-to-chromium@^1.3.191: - version "1.3.207" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.207.tgz#b19ce94d61187d72411ebb83dfe287366a785102" - integrity sha512-RIgAnfqbjZNECBLjslfy4cIYvcPl3GAXmnENrcoo0TZ8fGkyEEAealAbO7MoevW4xYUPe+e68cWAj6eP0DmMHw== + version "1.3.209" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.209.tgz#cd43879f1d3fb85c75bb843fb11a828570fa1ce4" + integrity sha512-KxRvLp5jUapyKIcMaecwgmUpJEsJKuHn0DJJPZjZh2valqYlzdmGvaE/nTAqwKqQwf0jIKv7Go4FYHu9wKWzOg== elliptic@^6.0.0: version "6.5.0" @@ -4386,7 +4328,7 @@ fs-extra@5.0.0: jsonfile "^4.0.0" universalify "^0.1.0" -fs-extra@^8.0.1, fs-extra@^8.1.0: +fs-extra@^8.1.0: version "8.1.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" integrity sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g== @@ -4595,7 +4537,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.1: +globby@^10.0.0, globby@^10.0.1: version "10.0.1" resolved "https://registry.yarnpkg.com/globby/-/globby-10.0.1.tgz#4782c34cb75dd683351335c5829cc3420e606b22" integrity sha512-sSs4inE1FB2YQiymcmTv6NWENryABjUNPeWhOvmn4SjtKybglsyPZxFB3U1/+L1bYi0rNZDqCLlHyLYDl1Pq5A== @@ -4981,7 +4923,7 @@ https-browserify@^1.0.0: resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM= -husky@^3.0.1: +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== @@ -5113,6 +5055,11 @@ indexes-of@^1.0.1: resolved "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607" integrity sha1-8w9xbI4r00bHtn0985FVZqfAVgc= +infer-owner@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467" + integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A== + inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" @@ -5590,7 +5537,7 @@ istanbul-reports@^2.1.1: dependencies: handlebars "^4.1.2" -jasmine-expect@^4.0.2: +jasmine-expect@^4.0.3: version "4.0.3" resolved "https://registry.yarnpkg.com/jasmine-expect/-/jasmine-expect-4.0.3.tgz#7cd2f35f909c2bb270d1f4d1042cdff72d47cc66" integrity sha512-ucHOO6qpY6/vwgxoRVzyYywIRuvGEmI1uk69INjdZ84h2dUHIXHf8A5jUkM1kQHy9lHP1jqq9/S5VAkYUsFYCg== @@ -6623,9 +6570,9 @@ merge-stream@^1.0.1: readable-stream "^2.0.1" merge2@^1.2.3: - version "1.2.3" - resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.2.3.tgz#7ee99dbd69bb6481689253f018488a1b902b0ed5" - integrity sha512-gdUU1Fwj5ep4kplwcmftruWofEFt6lfpkkr3h860CXbAB9c3hGb55EOL2ali0Td5oebvW0E1+3Sr+Ur7XfKpRA== + version "1.2.4" + resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.2.4.tgz#c9269589e6885a60cf80605d9522d4b67ca646e3" + integrity sha512-FYE8xI+6pjFOhokZu0We3S5NKCirLbCzSh2Usf3qEyr4X8U+0jNg9P8RZ4qz+V2UoECLVwSyzU3LxXBaLGtD3A== methods@~1.1.2: version "1.1.2" @@ -8157,34 +8104,35 @@ progress@^2.0.0: resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== -projext@^6.0.6: - version "6.0.6" - resolved "https://registry.yarnpkg.com/projext/-/projext-6.0.6.tgz#481716a0e05ffd64ae38b16707b6cbc4bcd8d848" - integrity sha512-+sPbmU32dUW4KJIg5Y1Ug5dOcSgvrkDIbxFzcHOOsGn4nd7uA2GOeh8XCMe8ljqnANXC0mJIpErwgKttoJOwJg== +projext@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/projext/-/projext-7.0.0.tgz#36c12f44d9d921c6f077f29665ce59bc682b277b" + integrity sha512-5JKoiZwvXFkDqR92HAPdb8T5IyUs7cBsT8E1hkjUJFcPEnwddSg7XMPo/cvaAXlPsYKdqZHPxqE69k5aGD2Dww== dependencies: - "@babel/cli" "7.4.4" - "@babel/core" "7.4.4" - "@babel/plugin-proposal-class-properties" "7.4.4" + "@babel/cli" "7.5.5" + "@babel/core" "7.5.5" + "@babel/plugin-proposal-class-properties" "7.5.5" "@babel/plugin-proposal-decorators" "7.4.4" - "@babel/plugin-proposal-object-rest-spread" "7.4.4" + "@babel/plugin-proposal-object-rest-spread" "7.5.5" "@babel/plugin-syntax-dynamic-import" "7.2.0" - "@babel/plugin-transform-runtime" "7.4.4" - "@babel/polyfill" "7.4.4" - "@babel/preset-env" "7.4.4" + "@babel/plugin-transform-runtime" "7.5.5" + "@babel/preset-env" "7.5.5" "@babel/preset-flow" "7.0.0" - "@babel/preset-typescript" "^7.3.3" - "@babel/runtime" "7.4.4" + "@babel/preset-typescript" "7.3.3" + "@babel/runtime" "7.5.5" commander "^2.20.0" - del "^4.1.1" + del "^5.0.0" + dotenv "^8.0.0" + dotenv-expand "^5.1.0" extend "^3.0.2" - fs-extra "^8.0.1" + fs-extra "^8.1.0" glob "^7.1.4" jimple "^1.5.0" nodemon "^1.19.1" prompt "^1.0.0" shelljs "0.8.3" watchpack "^1.6.0" - wootils "^2.3.0" + wootils "^2.6.0" promise-inflight@^1.0.1: version "1.0.1" @@ -8230,9 +8178,9 @@ pseudomap@^1.0.2: integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= psl@^1.1.24, psl@^1.1.28: - version "1.2.0" - resolved "https://registry.yarnpkg.com/psl/-/psl-1.2.0.tgz#df12b5b1b3a30f51c329eacbdef98f3a6e136dc6" - integrity sha512-GEn74ZffufCmkDDLNcl3uuyF/aSD6exEyh1v/ZSdAomB82t6G9hzJVRx0jBmLDW+VfZqks3aScmMw9DszwUalA== + version "1.3.0" + resolved "https://registry.yarnpkg.com/psl/-/psl-1.3.0.tgz#e1ebf6a3b5564fa8376f3da2275da76d875ca1bd" + integrity sha512-avHdspHO+9rQTLbv1RO+MPYeP/SzsCoxofjVnHanETfQhTJrmB0HlDoW+EiN/R+C0BZ+gERab9NY0lPN2TxNag== pstree.remy@^1.1.6: version "1.1.7" @@ -8545,16 +8493,16 @@ regenerate@^1.4.0: resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.0.tgz#4a856ec4b56e4077c557589cae85e7a4c8869a11" integrity sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg== +regenerator-runtime@0.13.3, regenerator-runtime@^0.13.2: + version "0.13.3" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.3.tgz#7cf6a77d8f5c6f60eb73c5fc1955b2ceb01e6bf5" + integrity sha512-naKIZz2GQ8JWh///G7L3X6LaQUAMp2lvb1rvwwsURe/VXwD6VMfr+/1NuNw3ag8v2kY1aQ/go5SNn79O9JU7yw== + regenerator-runtime@^0.11.0: version "0.11.1" resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg== -regenerator-runtime@^0.13.2, regenerator-runtime@^0.13.3: - version "0.13.3" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.3.tgz#7cf6a77d8f5c6f60eb73c5fc1955b2ceb01e6bf5" - integrity sha512-naKIZz2GQ8JWh///G7L3X6LaQUAMp2lvb1rvwwsURe/VXwD6VMfr+/1NuNw3ag8v2kY1aQ/go5SNn79O9JU7yw== - regenerator-transform@^0.14.0: version "0.14.1" resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.14.1.tgz#3b2fce4e1ab7732c08f665dfdb314749c7ddd2fb" @@ -9635,9 +9583,9 @@ svgo@^1.0.0: integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== table@^5.2.3: - version "5.4.4" - resolved "https://registry.yarnpkg.com/table/-/table-5.4.4.tgz#6e0f88fdae3692793d1077fd172a4667afe986a6" - integrity sha512-IIfEAUx5QlODLblLrGTTLJA7Tk0iLSGBvgY8essPRVNGHAzThujww1YqHLs6h3HfTg55h++RzLHH5Xw/rfv+mg== + version "5.4.5" + resolved "https://registry.yarnpkg.com/table/-/table-5.4.5.tgz#c8f4ea2d8fee08c0027fac27b0ec0a4fe01dfa42" + integrity sha512-oGa2Hl7CQjfoaogtrOHEJroOcYILTx7BZWLGsJIlzoWmB2zmguhNfPJZsWPKYek/MgCxfco54gEi31d1uN2hFA== dependencies: ajv "^6.10.2" lodash "^4.17.14" @@ -9688,23 +9636,22 @@ term-size@^1.2.0: dependencies: execa "^0.7.0" -terser-webpack-plugin@^1.1.0, terser-webpack-plugin@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.3.0.tgz#69aa22426299f4b5b3775cbed8cb2c5d419aa1d4" - integrity sha512-W2YWmxPjjkUcOWa4pBEv4OP4er1aeQJlSo2UhtCFQCuRXEHjOFscO8VyWHj9JLlA0RzQb8Y2/Ta78XZvT54uGg== +terser-webpack-plugin@^1.1.0, terser-webpack-plugin@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.4.1.tgz#61b18e40eaee5be97e771cdbb10ed1280888c2b4" + integrity sha512-ZXmmfiwtCLfz8WKZyYUuuHf3dMYEjg8NrjHMb0JqHVHVOSkzp3cW2/XG1fP3tRhqEqSzMwzzRQGtAPbs4Cncxg== dependencies: - cacache "^11.3.2" - find-cache-dir "^2.0.0" + cacache "^12.0.2" + find-cache-dir "^2.1.0" is-wsl "^1.1.0" - loader-utils "^1.2.3" schema-utils "^1.0.0" serialize-javascript "^1.7.0" source-map "^0.6.1" - terser "^4.0.0" - webpack-sources "^1.3.0" + terser "^4.1.2" + webpack-sources "^1.4.0" worker-farm "^1.7.0" -terser@^4.0.0, terser@^4.1.2: +terser@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/terser/-/terser-4.1.2.tgz#b2656c8a506f7ce805a3f300a2ff48db022fa391" integrity sha512-jvNoEQSPXJdssFwqPSgWjsOrb+ELoE+ILpHPKXC83tIxOlh2U75F1KuB2luLD/3a6/7K3Vw5pDn+hvu0C4AzSw== @@ -10349,15 +10296,15 @@ webpack-log@^2.0.0: ansi-colors "^3.0.0" uuid "^3.3.2" -webpack-sources@^1.0.1, webpack-sources@^1.1.0, webpack-sources@^1.3.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.0.tgz#be93d629601aa3ea48e8686ee4d78d9c4e706061" - integrity sha512-1e4Cxgqfl8vnDhXMMpegX7JWWP7HwV8Kp8/Oefs6EG52bRtOR9vuOXM1Gl1vy6NwHfUxHeuR6ElD4HamuRPO0A== +webpack-sources@^1.0.1, webpack-sources@^1.1.0, webpack-sources@^1.3.0, webpack-sources@^1.4.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.1.tgz#b91b2c5b1c4e890ff50d1d35b7fa3657040da1da" + integrity sha512-XSz38193PTo/1csJabKaV4b53uRVotlMgqJXm3s3eje0Bu6gQTxYDqpD38CmQfDBA+gN+QqaGjasuC8I/7eW3Q== dependencies: source-list-map "^2.0.0" source-map "~0.6.1" -webpack@^4.36.1: +webpack@^4.38.0: version "4.38.0" resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.38.0.tgz#6d77108404b08883c78f4e7e45a43c4e5c47c931" integrity sha512-lbuFsVOq8PZY+1Ytz/mYOvYOo+d4IJ31hHk/7iyoeWtwN33V+5HYotSH+UIb9tq914ey0Hot7z6HugD+je3sWw== @@ -10481,7 +10428,7 @@ winston@2.1.x: pkginfo "0.3.x" stack-trace "0.0.x" -wootils@^2.3.0, wootils@^2.4.1, wootils@^2.5.0: +wootils@^2.4.1, wootils@^2.6.0: version "2.6.0" resolved "https://registry.yarnpkg.com/wootils/-/wootils-2.6.0.tgz#0a512e02a6c3ed4f66f3ac1e21277d5a9c580dfb" integrity sha512-wHqkIfPO8+/1GYvwCtGVzT008OfjzXG4Q74asfT4nDWDOJjFSJQ6LrgyrRjfCsOeyIkk+NnRBCMTxIetnPJVZQ== From cae90caa9fd0b891a04ba89ec3ad745bded364c9 Mon Sep 17 00:00:00 2001 From: homer0 Date: Thu, 1 Aug 2019 02:17:33 -0300 Subject: [PATCH 24/24] v9.0.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 7f09838..63b9f9d 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "projext-plugin-webpack", "description": "Allows projext to use webpack as a build engine.", "homepage": "https://homer0.github.io/projext-plugin-webpack/", - "version": "8.0.3", + "version": "9.0.0", "repository": "homer0/projext-plugin-webpack", "author": "Leonardo Apiwan (@homer0) ", "license": "MIT",