From 59e1ef5074f14b17c444efeac0a4dba2009c063d Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Sat, 16 Nov 2019 12:03:35 +0100 Subject: [PATCH 01/88] Bump react-dom from 16.11.0 to 16.12.0 in /website (#6958) Bumps [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) from 16.11.0 to 16.12.0. - [Release notes](https://github.com/facebook/react/releases) - [Changelog](https://github.com/facebook/react/blob/master/CHANGELOG.md) - [Commits](https://github.com/facebook/react/commits/v16.12.0/packages/react-dom) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- website/package.json | 2 +- website/yarn.lock | 18 +++++++++--------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/website/package.json b/website/package.json index 09f458bbe..9e585883c 100644 --- a/website/package.json +++ b/website/package.json @@ -16,7 +16,7 @@ "lz-string": "1.4.4", "prop-types": "15.7.2", "react": "16.11.0", - "react-dom": "16.11.0" + "react-dom": "16.12.0" }, "devDependencies": { "@babel/preset-env": "7.7.1", diff --git a/website/yarn.lock b/website/yarn.lock index 9ef7c3ed8..af30d31a5 100644 --- a/website/yarn.lock +++ b/website/yarn.lock @@ -6392,15 +6392,15 @@ react-dev-utils@^9.0.1: strip-ansi "5.2.0" text-table "0.2.0" -react-dom@16.11.0, react-dom@^16.2.0, react-dom@^16.8.4: - version "16.11.0" - resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.11.0.tgz#7e7c4a5a85a569d565c2462f5d345da2dd849af5" - integrity sha512-nrRyIUE1e7j8PaXSPtyRKtz+2y9ubW/ghNgqKFHHAHaeP0fpF5uXR+sq8IMRHC+ZUxw7W9NyCDTBtwWxvkb0iA== +react-dom@16.12.0, react-dom@^16.2.0, react-dom@^16.8.4: + version "16.12.0" + resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.12.0.tgz#0da4b714b8d13c2038c9396b54a92baea633fe11" + integrity sha512-LMxFfAGrcS3kETtQaCkTKjMiifahaMySFDn71fZUNpPHZQEzmk/GiAeIT8JSOrHB23fnuCOMruL2a8NYlw+8Gw== dependencies: loose-envify "^1.1.0" object-assign "^4.1.1" prop-types "^15.6.2" - scheduler "^0.17.0" + scheduler "^0.18.0" react-error-overlay@^6.0.2: version "6.0.2" @@ -6771,10 +6771,10 @@ sax@^1.2.4, sax@~1.2.4: version "1.2.4" resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" -scheduler@^0.17.0: - version "0.17.0" - resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.17.0.tgz#7c9c673e4ec781fac853927916d1c426b6f3ddfe" - integrity sha512-7rro8Io3tnCPuY4la/NuI5F2yfESpnfZyT6TtkXnSWVkcu0BCDJ+8gk5ozUaFaxpIyNuWAPXrH0yFcSi28fnDA== +scheduler@^0.18.0: + version "0.18.0" + resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.18.0.tgz#5901ad6659bc1d8f3fdaf36eb7a67b0d6746b1c4" + integrity sha512-agTSHR1Nbfi6ulI0kYNK0203joW2Y5W4po4l+v03tOoiJKpTBbxpNhWDvqc/4IcOw+KLmSiQLTasZ4cab2/UWQ== dependencies: loose-envify "^1.1.0" object-assign "^4.1.1" From b2c3baf0082086876c2b2a3b5976151865fa9b9a Mon Sep 17 00:00:00 2001 From: fisker Cheung Date: Sat, 16 Nov 2019 19:27:31 +0800 Subject: [PATCH 02/88] Fix a code example in docs (#6890) --- docs/rationale.md | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/docs/rationale.md b/docs/rationale.md index 67115f679..1994a4047 100644 --- a/docs/rationale.md +++ b/docs/rationale.md @@ -130,13 +130,11 @@ class OrderLine { One final thing: TC39 has [not yet decided if decorators come before or after `export`](https://github.com/tc39/proposal-decorators/issues/69). In the meantime, Prettier supports both: + ```js -@decorator -export class Foo {} +@decorator export class Foo {} -export -@decorator -class Foo {} +export @decorator class Foo {} ``` ### Semicolons From 992e410aa742e7ee0156fcaa8ea6fe30e3f37b3f Mon Sep 17 00:00:00 2001 From: Simon Lydell Date: Sat, 16 Nov 2019 12:29:06 +0100 Subject: [PATCH 03/88] Update stable docs --- website/versioned_docs/version-stable/plugins.md | 1 + website/versioned_docs/version-stable/rationale.md | 8 +++----- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/website/versioned_docs/version-stable/plugins.md b/website/versioned_docs/version-stable/plugins.md index 7e6e16d04..578754017 100644 --- a/website/versioned_docs/version-stable/plugins.md +++ b/website/versioned_docs/version-stable/plugins.md @@ -46,6 +46,7 @@ Providing at least one path to `--plugin-search-dir`/`pluginSearchDirs` turns of - [`@prettier/plugin-pug`](https://github.com/prettier/plugin-pug) by [**@Shinigami92**](https://github.com/Shinigami92) - [`@prettier/plugin-ruby`](https://github.com/prettier/plugin-ruby) - [`@prettier/plugin-swift`](https://github.com/prettier/plugin-swift) +- [`@prettier/plugin-xml`](https://github.com/prettier/plugin-xml) ## Community Plugins diff --git a/website/versioned_docs/version-stable/rationale.md b/website/versioned_docs/version-stable/rationale.md index 292931df8..0d1174455 100644 --- a/website/versioned_docs/version-stable/rationale.md +++ b/website/versioned_docs/version-stable/rationale.md @@ -131,13 +131,11 @@ class OrderLine { One final thing: TC39 has [not yet decided if decorators come before or after `export`](https://github.com/tc39/proposal-decorators/issues/69). In the meantime, Prettier supports both: + ```js -@decorator -export class Foo {} +@decorator export class Foo {} -export -@decorator -class Foo {} +export @decorator class Foo {} ``` ### Semicolons From 21ad05d3c83d12ff15391125787ed22c3c85c95f Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Sat, 16 Nov 2019 12:49:42 +0100 Subject: [PATCH 04/88] Bump react from 16.11.0 to 16.12.0 in /website (#6959) Bumps [react](https://github.com/facebook/react/tree/HEAD/packages/react) from 16.11.0 to 16.12.0. - [Release notes](https://github.com/facebook/react/releases) - [Changelog](https://github.com/facebook/react/blob/master/CHANGELOG.md) - [Commits](https://github.com/facebook/react/commits/v16.12.0/packages/react) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- website/package.json | 2 +- website/yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/website/package.json b/website/package.json index 9e585883c..e9b466cc9 100644 --- a/website/package.json +++ b/website/package.json @@ -15,7 +15,7 @@ "lodash.groupby": "4.6.0", "lz-string": "1.4.4", "prop-types": "15.7.2", - "react": "16.11.0", + "react": "16.12.0", "react-dom": "16.12.0" }, "devDependencies": { diff --git a/website/yarn.lock b/website/yarn.lock index af30d31a5..bff083f9c 100644 --- a/website/yarn.lock +++ b/website/yarn.lock @@ -6412,10 +6412,10 @@ react-is@^16.8.1: resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.10.1.tgz#0612786bf19df406502d935494f0450b40b8294f" integrity sha512-BXUMf9sIOPXXZWqr7+c5SeOKJykyVr2u0UDzEf4LNGc6taGkQe1A9DFD07umCIXz45RLr9oAAwZbAJ0Pkknfaw== -react@16.11.0, react@^16.2.0, react@^16.8.4: - version "16.11.0" - resolved "https://registry.yarnpkg.com/react/-/react-16.11.0.tgz#d294545fe62299ccee83363599bf904e4a07fdbb" - integrity sha512-M5Y8yITaLmU0ynd0r1Yvfq98Rmll6q8AxaEe88c8e7LxO8fZ2cNgmFt0aGAS9wzf1Ao32NKXtCl+/tVVtkxq6g== +react@16.12.0, react@^16.2.0, react@^16.8.4: + version "16.12.0" + resolved "https://registry.yarnpkg.com/react/-/react-16.12.0.tgz#0c0a9c6a142429e3614834d5a778e18aa78a0b83" + integrity sha512-fglqy3k5E+81pA8s+7K0/T3DBCF0ZDOher1elBFzF7O6arXJgzyu/FW+COxFvAWXJoJN9KIZbT2LXlukwphYTA== dependencies: loose-envify "^1.1.0" object-assign "^4.1.1" From cf78341e98e5ee9ba64a4c003092e8e8a7307d0d Mon Sep 17 00:00:00 2001 From: fisker Cheung Date: Sun, 17 Nov 2019 02:28:04 +0800 Subject: [PATCH 05/88] Remove `prettylint` (#6978) --- package.json | 3 +- yarn.lock | 143 +++------------------------------------------------ 2 files changed, 7 insertions(+), 139 deletions(-) diff --git a/package.json b/package.json index 7536c355f..fa7493177 100644 --- a/package.json +++ b/package.json @@ -97,7 +97,6 @@ "jest-watch-typeahead": "0.4.2", "mkdirp": "0.5.1", "prettier": "1.19.1", - "prettylint": "1.0.0", "rimraf": "3.0.0", "rollup": "1.26.3", "rollup-plugin-babel": "4.3.3", @@ -125,7 +124,7 @@ "perf-benchmark": "yarn && yarn build && cross-env NODE_ENV=production node ./dist/bin-prettier.js --debug-benchmark --loglevel debug ${PERF_FILE:-./index.js} > /dev/null", "check-types": "tsc", "lint": "cross-env EFF_NO_LINK_RULES=true eslint . --format friendly", - "lint-docs": "prettylint {.,docs,website,website/blog}/*.md", + "lint-docs": "prettier {.,docs,website,website/blog}/*.md --check", "lint-dist": "eslint --no-eslintrc --no-ignore --env=browser \"dist/!(bin-prettier|index|third-party).js\"", "build": "node --max-old-space-size=3072 ./scripts/build/build.js", "build-docs": "node ./scripts/build-docs.js", diff --git a/yarn.lock b/yarn.lock index 5641f7017..ada104c0d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1069,10 +1069,6 @@ angular-html-parser@1.3.0: dependencies: tslib "^1.9.3" -ansi-escapes@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-2.0.0.tgz#5bae52be424878dd9783e8910e3fc2922e83c81b" - ansi-escapes@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.0.0.tgz#ec3e8b4e9f8064fc02c3ac9b65f1c275bda8ef92" @@ -1164,10 +1160,6 @@ array-equal@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93" -array-find-index@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" - array-includes@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.0.3.tgz#184b48f62d92d7452bb31b323165c7f8bd02266d" @@ -1701,22 +1693,11 @@ callsites@^3.0.0: resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== -camelcase-keys@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7" - dependencies: - camelcase "^2.0.0" - map-obj "^1.0.0" - camelcase@5.3.1, 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== -camelcase@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" - camelcase@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" @@ -2102,12 +2083,6 @@ cssom@0.3.x, "cssom@>= 0.3.2 < 0.4.0": dependencies: cssom "0.3.x" -currently-unhandled@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" - dependencies: - array-find-index "^1.0.1" - cyclist@~0.2.2: version "0.2.2" resolved "https://registry.yarnpkg.com/cyclist/-/cyclist-0.2.2.tgz#1b33792e11e914a2fd6d6ed6447464444e5fa640" @@ -2163,7 +2138,7 @@ debug@^4.0.1, debug@^4.1.0, debug@^4.1.1: dependencies: ms "^2.1.1" -decamelize@^1.1.1, decamelize@^1.1.2: +decamelize@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" @@ -2447,16 +2422,6 @@ eslint-formatter-friendly@7.0.0: strip-ansi "5.2.0" text-table "0.2.0" -eslint-formatter-pretty@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/eslint-formatter-pretty/-/eslint-formatter-pretty-1.3.0.tgz#985d9e41c1f8475f4a090c5dbd2dfcf2821d607e" - dependencies: - ansi-escapes "^2.0.0" - chalk "^2.1.0" - log-symbols "^2.0.0" - plur "^2.1.2" - string-width "^2.0.0" - eslint-import-resolver-node@^0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.2.tgz#58f15fb839b8d0576ca980413476aab2472db66a" @@ -2497,13 +2462,6 @@ eslint-plugin-prettier@3.1.1: dependencies: prettier-linter-helpers "^1.0.0" -eslint-plugin-prettier@^2.2.0: - version "2.6.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-2.6.0.tgz#33e4e228bdb06142d03c560ce04ec23f6c767dd7" - dependencies: - fast-diff "^1.1.1" - jest-docblock "^21.0.0" - eslint-plugin-react@7.16.0: version "7.16.0" resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.16.0.tgz#9928e4f3e2122ed3ba6a5b56d0303ba3e41d8c09" @@ -2786,7 +2744,7 @@ fast-deep-equal@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49" -fast-diff@^1.1.1, fast-diff@^1.1.2: +fast-diff@^1.1.2: version "1.2.0" resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.2.0.tgz#73ee11982d86caaf7959828d519cfe927fac5f03" integrity sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w== @@ -3035,10 +2993,6 @@ get-caller-file@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.2.tgz#f702e63127e7e231c160a80c1554acb70d5047e5" -get-stdin@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" - get-stdin@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-6.0.0.tgz#9e09bf712b360ab9225e812048f71fde9c89657b" @@ -3120,7 +3074,7 @@ globals@^9.18.0: version "9.18.0" resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" -globby@6.1.0, globby@^6.1.0: +globby@6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c" dependencies: @@ -3337,10 +3291,6 @@ ignore@4.0.6, ignore@^4.0.6: version "4.0.6" resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" -ignore@^3.3.5: - version "3.3.7" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.7.tgz#612289bfb3c220e186a58118618d5be8c1bab021" - import-fresh@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-2.0.0.tgz#d81355c15612d386c61f9ddd3922d4304822a546" @@ -3367,12 +3317,6 @@ imurmurhash@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" -indent-string@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80" - dependencies: - repeating "^2.0.0" - indent-string@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" @@ -3444,10 +3388,6 @@ invert-kv@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" -irregular-plurals@^1.0.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/irregular-plurals/-/irregular-plurals-1.4.0.tgz#2ca9b033651111855412f16be5d77c62a458a766" - is-accessor-descriptor@^0.1.6: version "0.1.6" resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" @@ -3907,10 +3847,6 @@ jest-docblock@24.9.0: dependencies: detect-newline "^2.1.0" -jest-docblock@^21.0.0: - version "21.2.0" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-21.2.0.tgz#51529c3b30d5fd159da60c27ceedc195faf8d414" - jest-docblock@^23.2.0: version "23.2.0" resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-23.2.0.tgz#f085e1f18548d99fdd69b20207e6fd55d91383a7" @@ -4507,12 +4443,6 @@ lodash@^4.13.1, lodash@^4.14.0, lodash@^4.17.11, lodash@^4.17.13, lodash@^4.17.1 resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== -log-symbols@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-2.1.0.tgz#f35fa60e278832b538dc4dddcbb478a45d3e3be6" - dependencies: - chalk "^2.0.1" - loose-envify@^1.0.0, loose-envify@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" @@ -4520,13 +4450,6 @@ loose-envify@^1.0.0, loose-envify@^1.4.0: dependencies: js-tokens "^3.0.0 || ^4.0.0" -loud-rejection@^1.0.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f" - dependencies: - currently-unhandled "^0.4.1" - signal-exit "^3.0.0" - lru-cache@^4.0.1, lru-cache@^4.1.5: version "4.1.5" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd" @@ -4593,10 +4516,6 @@ map-cache@^0.2.2: version "0.2.2" resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" -map-obj@^1.0.0, map-obj@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" - map-visit@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" @@ -4630,21 +4549,6 @@ memory-fs@^0.4.0, memory-fs@^0.4.1: errno "^0.1.3" readable-stream "^2.0.1" -meow@^3.7.0: - version "3.7.0" - resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" - dependencies: - camelcase-keys "^2.0.0" - decamelize "^1.1.2" - loud-rejection "^1.0.0" - map-obj "^1.0.1" - minimist "^1.1.3" - normalize-package-data "^2.3.4" - object-assign "^4.0.1" - read-pkg-up "^1.0.1" - redent "^1.0.0" - trim-newlines "^1.0.0" - merge-stream@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-1.0.1.tgz#4041202d508a342ba00174008df0c251b8c135e1" @@ -4741,7 +4645,7 @@ minimist@0.0.8: version "0.0.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" -minimist@1.2.0, minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0: +minimist@1.2.0, minimist@^1.1.1, minimist@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" @@ -4968,7 +4872,7 @@ nopt@^4.0.1: abbrev "1" osenv "^0.1.4" -normalize-package-data@^2.3.2, normalize-package-data@^2.3.4: +normalize-package-data@^2.3.2: version "2.4.0" resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f" dependencies: @@ -5427,12 +5331,6 @@ platform@^1.3.3: version "1.3.5" resolved "https://registry.yarnpkg.com/platform/-/platform-1.3.5.tgz#fb6958c696e07e2918d2eeda0f0bc9448d733444" -plur@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/plur/-/plur-2.1.2.tgz#7482452c1a0f508e3e344eaec312c91c29dc655a" - dependencies: - irregular-plurals "^1.0.0" - pn@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/pn/-/pn-1.1.0.tgz#e2f4cef0e219f463c179ab37463e4e1ecdccbafb" @@ -5528,18 +5426,6 @@ pretty-format@^24.9.0: ansi-styles "^3.2.0" react-is "^16.8.4" -prettylint@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/prettylint/-/prettylint-1.0.0.tgz#b71720ad9733e098fdd8ebea90c61cda33371aa1" - dependencies: - eslint-formatter-pretty "^1.3.0" - eslint-plugin-prettier "^2.2.0" - globby "^6.1.0" - ignore "^3.3.5" - lines-and-columns "^1.1.6" - meow "^3.7.0" - tslib "^1.8.0" - private@^0.1.6, private@^0.1.7: version "0.1.7" resolved "https://registry.yarnpkg.com/private/-/private-0.1.7.tgz#68ce5e8a1ef0a23bb570cc28537b5332aba63ef1" @@ -5743,13 +5629,6 @@ rechoir@^0.6.2: dependencies: resolve "^1.1.6" -redent@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde" - dependencies: - indent-string "^2.1.0" - strip-indent "^1.0.1" - regenerate-unicode-properties@^8.1.0: version "8.1.0" resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-8.1.0.tgz#ef51e0f0ea4ad424b77bf7cb41f3e015c70a3f0e" @@ -6561,12 +6440,6 @@ strip-final-newline@^2.0.0: resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== -strip-indent@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" - dependencies: - get-stdin "^4.0.1" - strip-json-comments@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.0.1.tgz#85713975a91fb87bf1b305cca77395e40d2a64a7" @@ -6788,10 +6661,6 @@ tr46@^1.0.1: dependencies: punycode "^2.1.0" -trim-newlines@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" - trim-right@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" @@ -6809,7 +6678,7 @@ trough@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/trough/-/trough-1.0.1.tgz#a9fd8b0394b0ae8fff82e0633a0a36ccad5b5f86" -tslib@^1.10.0, tslib@^1.8.0, tslib@^1.8.1, tslib@^1.9.0, tslib@^1.9.3: +tslib@^1.10.0, tslib@^1.8.1, tslib@^1.9.0, tslib@^1.9.3: version "1.10.0" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.10.0.tgz#c3c19f95973fb0a62973fb09d90d961ee43e5c8a" integrity sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ== From dd16afd1e794a798c4172b81201c35edcc558d84 Mon Sep 17 00:00:00 2001 From: Ryan Tsao Date: Sun, 17 Nov 2019 01:45:55 -0800 Subject: [PATCH 06/88] Fix redundant parens around JSX inside NewExpressions (#6980) --- src/language-js/needs-parens.js | 1 + tests/jsx/__snapshots__/jsfmt.spec.js.snap | 24 ++++++++++++++++++++++ tests/jsx/parens.js | 3 +++ 3 files changed, 28 insertions(+) diff --git a/src/language-js/needs-parens.js b/src/language-js/needs-parens.js index 6e92bda88..48bc74b2f 100644 --- a/src/language-js/needs-parens.js +++ b/src/language-js/needs-parens.js @@ -745,6 +745,7 @@ function needsParens(path, options) { parent.type !== "AssignmentPattern" && parent.type !== "BinaryExpression" && parent.type !== "CallExpression" && + parent.type !== "NewExpression" && parent.type !== "ConditionalExpression" && parent.type !== "ExpressionStatement" && parent.type !== "JsExpressionRoot" && diff --git a/tests/jsx/__snapshots__/jsfmt.spec.js.snap b/tests/jsx/__snapshots__/jsfmt.spec.js.snap index 31cb9d86f..bb0fb27bf 100644 --- a/tests/jsx/__snapshots__/jsfmt.spec.js.snap +++ b/tests/jsx/__snapshots__/jsfmt.spec.js.snap @@ -4097,6 +4097,9 @@ f?.(
); (
)(); (
)?.(); +new Foo(); +new Foo(()) + =====================================output===================================== a = [ ); (
)(); (
)?.(); +new Foo(); +new Foo(); + ================================================================================ `; @@ -4143,6 +4149,9 @@ f?.(
); (
)(); (
)?.(); +new Foo(); +new Foo(()) + =====================================output===================================== a = [ ); (
)(); (
)?.(); +new Foo(); +new Foo(); + ================================================================================ `; @@ -4189,6 +4201,9 @@ f?.(
); (
)(); (
)?.(); +new Foo(); +new Foo(()) + =====================================output===================================== a = [ ); (
)(); (
)?.(); +new Foo(); +new Foo(); + ================================================================================ `; @@ -4235,6 +4253,9 @@ f?.(
); (
)(); (
)?.(); +new Foo(); +new Foo(()) + =====================================output===================================== a = [ ); (
)(); (
)?.(); +new Foo(); +new Foo(); + ================================================================================ `; diff --git a/tests/jsx/parens.js b/tests/jsx/parens.js index aacd73797..b5b4a5bc4 100644 --- a/tests/jsx/parens.js +++ b/tests/jsx/parens.js @@ -14,3 +14,6 @@ a = [ f?.(
); (
)(); (
)?.(); + +new Foo(); +new Foo(()) From b7bcffbfd096f06a0569f2cac7cb0403abe725bc Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Sun, 17 Nov 2019 11:02:55 +0100 Subject: [PATCH 07/88] Bump postcss-values-parser from 1.5.0 to 2.0.1 (#6804) Bumps [postcss-values-parser](https://github.com/shellscape/postcss-values-parser) from 1.5.0 to 2.0.1. - [Release notes](https://github.com/shellscape/postcss-values-parser/releases) - [Commits](https://github.com/shellscape/postcss-values-parser/compare/v1.5.0...v2.0.1) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index fa7493177..0fc1e0ccc 100644 --- a/package.json +++ b/package.json @@ -60,7 +60,7 @@ "postcss-media-query-parser": "0.2.3", "postcss-scss": "2.0.0", "postcss-selector-parser": "2.2.3", - "postcss-values-parser": "1.5.0", + "postcss-values-parser": "2.0.1", "regexp-util": "1.2.2", "remark-math": "1.0.6", "remark-parse": "5.0.0", diff --git a/yarn.lock b/yarn.lock index ada104c0d..9df29de08 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5364,9 +5364,10 @@ postcss-selector-parser@2.2.3: indexes-of "^1.0.1" uniq "^1.0.1" -postcss-values-parser@1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/postcss-values-parser/-/postcss-values-parser-1.5.0.tgz#5d9fa63e2bcb0179ce48f3235303765eb89f3047" +postcss-values-parser@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz#da8b472d901da1e205b47bdc98637b9e9e550e5f" + integrity sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg== dependencies: flatten "^1.0.2" indexes-of "^1.0.1" From 56b4ce349f8141e87a5e2e3d25462577f323fc8f Mon Sep 17 00:00:00 2001 From: fisker Cheung Date: Sun, 17 Nov 2019 19:05:19 +0800 Subject: [PATCH 08/88] Enable `replace-array-includes-with-indexof` for all bundles (#6982) --- scripts/build/bundler.js | 3 +++ scripts/build/config.js | 10 ++-------- 2 files changed, 5 insertions(+), 8 deletions(-) diff --git a/scripts/build/bundler.js b/scripts/build/bundler.js index 7cdc86387..8d85bb8bb 100644 --- a/scripts/build/bundler.js +++ b/scripts/build/bundler.js @@ -42,6 +42,9 @@ function getBabelConfig(bundle) { plugins: bundle.babelPlugins || [], compact: bundle.type === "plugin" ? false : "auto" }; + config.plugins.push( + require.resolve("./babel-plugins/replace-array-includes-with-indexof") + ); if (bundle.type === "core") { config.plugins.push( require.resolve("./babel-plugins/transform-custom-require") diff --git a/scripts/build/config.js b/scripts/build/config.js index 1a00fd073..acfc0ef22 100644 --- a/scripts/build/config.js +++ b/scripts/build/config.js @@ -2,9 +2,6 @@ const path = require("path"); const PROJECT_ROOT = path.resolve(__dirname, "../.."); -const babelReplaceArrayIncludesWithIndexof = require.resolve( - "./babel-plugins/replace-array-includes-with-indexof" -); /** * @typedef {Object} Bundle @@ -29,8 +26,7 @@ const babelReplaceArrayIncludesWithIndexof = require.resolve( const parsers = [ { input: "src/language-js/parser-babylon.js", - target: "universal", - babelPlugins: [babelReplaceArrayIncludesWithIndexof] + target: "universal" }, { input: "src/language-js/parser-flow.js", @@ -40,7 +36,6 @@ const parsers = [ { input: "src/language-js/parser-typescript.js", target: "universal", - babelPlugins: [babelReplaceArrayIncludesWithIndexof], replace: { 'require("@microsoft/typescript-etw")': "undefined" } @@ -130,8 +125,7 @@ const parsers = [ replacement: require.resolve("lines-and-columns") } ] - }, - babelPlugins: [babelReplaceArrayIncludesWithIndexof] + } } ].map(parser => { const name = getFileOutput(parser) From ce9f4a4a2c70f97f4557f2307ad92ea3b15f88b3 Mon Sep 17 00:00:00 2001 From: fisker Cheung Date: Sun, 17 Nov 2019 22:01:17 +0800 Subject: [PATCH 09/88] Fix babel includes plugin (#6985) --- .../replace-array-includes-with-indexof.js | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/scripts/build/babel-plugins/replace-array-includes-with-indexof.js b/scripts/build/babel-plugins/replace-array-includes-with-indexof.js index 18514344b..bc3700156 100644 --- a/scripts/build/babel-plugins/replace-array-includes-with-indexof.js +++ b/scripts/build/babel-plugins/replace-array-includes-with-indexof.js @@ -2,14 +2,16 @@ // // BEFORE: -// [__something__].includes(__something__) -// CONSTANT_CASE.includes(__something__) +// foo.includes(bar) // // AFTER: -// [__something__].indexOf(__something__) !== -1 -// CONSTANT_CASE.indexOf(__something__) !== -1 +// foo.indexOf(bar) !== -1 // +// this plugin also replace `string.includes`, +// filename is not changed +// because it's temporary use for node@4 support + module.exports = ({ types: t }) => ({ visitor: { CallExpression(path) { @@ -17,11 +19,6 @@ module.exports = ({ types: t }) => ({ const callee = node.callee; if ( t.isMemberExpression(callee, { computed: false }) && - (t.isArrayExpression(callee.object) || - (t.isIdentifier(callee.object) && - (/^[A-Z_]+$/.test(callee.object.name) || - // https://github.com/eemeli/yaml/blob/1005d01/src/Anchors.js#L45 - callee.object.name === "names"))) && t.isIdentifier(callee.property, { name: "includes" }) ) { callee.property.name = "indexOf"; From a1423e05b4eaba37764f4c3592be0e3515ac20f8 Mon Sep 17 00:00:00 2001 From: fisker Cheung Date: Mon, 18 Nov 2019 00:29:11 +0800 Subject: [PATCH 10/88] Switch `rollup-plugin-json` to `@rollup/plugin-json` (#6987) --- package.json | 2 +- scripts/build/bundler.js | 2 +- yarn.lock | 14 +++++++------- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/package.json b/package.json index 0fc1e0ccc..f9d921f45 100644 --- a/package.json +++ b/package.json @@ -77,6 +77,7 @@ "@babel/core": "7.7.2", "@babel/preset-env": "7.7.1", "@rollup/plugin-alias": "2.2.0", + "@rollup/plugin-json": "4.0.0", "@rollup/plugin-replace": "2.2.1", "babel-loader": "8.0.6", "benchmark": "2.1.4", @@ -101,7 +102,6 @@ "rollup": "1.26.3", "rollup-plugin-babel": "4.3.3", "rollup-plugin-commonjs": "10.1.0", - "rollup-plugin-json": "4.0.0", "rollup-plugin-node-globals": "1.4.0", "rollup-plugin-node-resolve": "5.2.0", "rollup-plugin-terser": "5.1.2", diff --git a/scripts/build/bundler.js b/scripts/build/bundler.js index 8d85bb8bb..b7a98e210 100644 --- a/scripts/build/bundler.js +++ b/scripts/build/bundler.js @@ -8,7 +8,7 @@ const resolve = require("rollup-plugin-node-resolve"); const alias = require("@rollup/plugin-alias"); const commonjs = require("rollup-plugin-commonjs"); const nodeGlobals = require("rollup-plugin-node-globals"); -const json = require("rollup-plugin-json"); +const json = require("@rollup/plugin-json"); const replace = require("@rollup/plugin-replace"); const { terser } = require("rollup-plugin-terser"); const babel = require("rollup-plugin-babel"); diff --git a/yarn.lock b/yarn.lock index 9df29de08..fb3c3a622 100644 --- a/yarn.lock +++ b/yarn.lock @@ -743,6 +743,13 @@ dependencies: slash "^3.0.0" +"@rollup/plugin-json@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@rollup/plugin-json/-/plugin-json-4.0.0.tgz#4462e83c7ad5544bef4a601a6e8450daedc4b69b" + integrity sha512-Z65CtEVWv40+ri4CvmswyhtuUtki9yP5p0UJN/GyCKKyU4jRuDS9CG0ZuV7/XuS7zGkoajyE7E4XBEaC4GW62A== + dependencies: + rollup-pluginutils "^2.5.0" + "@rollup/plugin-replace@2.2.1": version "2.2.1" resolved "https://registry.yarnpkg.com/@rollup/plugin-replace/-/plugin-replace-2.2.1.tgz#94af20cb3d70cccdcec991d1f97dd373936ec544" @@ -5891,13 +5898,6 @@ rollup-plugin-commonjs@10.1.0: resolve "^1.11.0" rollup-pluginutils "^2.8.1" -rollup-plugin-json@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/rollup-plugin-json/-/rollup-plugin-json-4.0.0.tgz#a18da0a4b30bf5ca1ee76ddb1422afbb84ae2b9e" - integrity sha512-hgb8N7Cgfw5SZAkb3jf0QXii6QX/FOkiIq2M7BAQIEydjHvTyxXHQiIzZaTFgx1GK0cRCHOCBHIyEkkLdWKxow== - dependencies: - rollup-pluginutils "^2.5.0" - rollup-plugin-node-globals@1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/rollup-plugin-node-globals/-/rollup-plugin-node-globals-1.4.0.tgz#5e1f24a9bb97c0ef51249f625e16c7e61b7c020b" From 262f27bc6177b22cf78dd0292072ef0a9d71bef4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20Dessoude?= Date: Mon, 18 Nov 2019 06:41:44 +0100 Subject: [PATCH 11/88] Fix handling comments in labeled statements (#6984) --- changelog_unreleased/javascript/pr-6984.md | 23 ++++++++++++++++++++ src/language-js/comments.js | 3 ++- tests/label/__snapshots__/jsfmt.spec.js.snap | 9 ++++++++ tests/label/comment.js | 5 +++++ 4 files changed, 39 insertions(+), 1 deletion(-) create mode 100644 changelog_unreleased/javascript/pr-6984.md diff --git a/changelog_unreleased/javascript/pr-6984.md b/changelog_unreleased/javascript/pr-6984.md new file mode 100644 index 000000000..854baa2d8 --- /dev/null +++ b/changelog_unreleased/javascript/pr-6984.md @@ -0,0 +1,23 @@ +#### Fix formatting of labeled statements with comments ([#6994](https://github.com/prettier/prettier/pull/6984) by [@clement26695](https://github.com/clement26695)) + +Formatting of comments in labeled statements was not stable + + +```jsx +// Input +loop1: +//test +const i = 3; + +// Prettier stable (first output) +loop1: //test +const i = 3; + +// Prettier stable (second output) +//test +loop1: const i = 3; + +// Prettier master (first output) +//test +loop1: const i = 3; +``` diff --git a/src/language-js/comments.js b/src/language-js/comments.js index 5447b7f7a..f5cefb375 100644 --- a/src/language-js/comments.js +++ b/src/language-js/comments.js @@ -66,7 +66,8 @@ function handleOwnLineComment(comment, text, options, ast, isLastComment) { precedingNode, comment, options - ) + ) || + handleLabeledStatementComments(enclosingNode, comment) ) { return true; } diff --git a/tests/label/__snapshots__/jsfmt.spec.js.snap b/tests/label/__snapshots__/jsfmt.spec.js.snap index 556522ec8..e83d3fee3 100644 --- a/tests/label/__snapshots__/jsfmt.spec.js.snap +++ b/tests/label/__snapshots__/jsfmt.spec.js.snap @@ -10,12 +10,21 @@ printWidth: 80 inf_leave: // goto emulation for (;;) {} } +{ + inf_leave: + // goto emulation + for (; ;) { } +} =====================================output===================================== { // goto emulation inf_leave: for (;;) {} } +{ + // goto emulation + inf_leave: for (;;) {} +} ================================================================================ `; diff --git a/tests/label/comment.js b/tests/label/comment.js index 45e9363f1..2659e3978 100644 --- a/tests/label/comment.js +++ b/tests/label/comment.js @@ -2,3 +2,8 @@ inf_leave: // goto emulation for (;;) {} } +{ + inf_leave: + // goto emulation + for (; ;) { } +} From f49b18e7c31467a1d7c73eaa7a511bc7b6708032 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 18 Nov 2019 12:46:08 +0200 Subject: [PATCH 12/88] Bump @typescript-eslint/typescript-estree from 2.6.1 to 2.7.0 (#6989) Bumps [@typescript-eslint/typescript-estree](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-estree) from 2.6.1 to 2.7.0. - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/typescript-estree/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v2.7.0/packages/typescript-estree) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 16 +++++----------- 2 files changed, 6 insertions(+), 12 deletions(-) diff --git a/package.json b/package.json index f9d921f45..d91a8118d 100644 --- a/package.json +++ b/package.json @@ -19,7 +19,7 @@ "@babel/parser": "7.7.3", "@glimmer/syntax": "0.41.0", "@iarna/toml": "2.2.3", - "@typescript-eslint/typescript-estree": "2.6.1", + "@typescript-eslint/typescript-estree": "2.7.0", "angular-estree-parser": "1.1.5", "angular-html-parser": "1.3.0", "camelcase": "5.3.1", diff --git a/yarn.lock b/yarn.lock index fb3c3a622..e8e01b009 100644 --- a/yarn.lock +++ b/yarn.lock @@ -817,10 +817,10 @@ dependencies: "@types/yargs-parser" "*" -"@typescript-eslint/typescript-estree@2.6.1": - version "2.6.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-2.6.1.tgz#fb363dd4ca23384745c5ea4b7f4c867432b00d31" - integrity sha512-+sTnssW6bcbDZKE8Ce7VV6LdzkQz2Bxk7jzk1J8H1rovoTxnm6iXvYIyncvNsaB/kBCOM63j/LNJfm27bNdUoA== +"@typescript-eslint/typescript-estree@2.7.0": + version "2.7.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-2.7.0.tgz#34fd98c77a07b40d04d5b4203eddd3abeab909f4" + integrity sha512-vVCE/DY72N4RiJ/2f10PTyYekX2OLaltuSIBqeHYI44GQ940VCYioInIb8jKMrK9u855OEJdFC+HmWAZTnC+Ag== dependencies: debug "^4.1.1" glob "^7.1.4" @@ -2125,13 +2125,7 @@ debug@^2.2.0, debug@^2.3.3, debug@^2.6.8, debug@^2.6.9: dependencies: ms "2.0.0" -debug@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" - dependencies: - ms "2.0.0" - -debug@^3.2.6: +debug@^3.1.0, debug@^3.2.6: version "3.2.6" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== From 257fba9b30147f316f5ed236b29c8aeaf62f1c06 Mon Sep 17 00:00:00 2001 From: JounQin Date: Mon, 18 Nov 2019 19:06:48 +0800 Subject: [PATCH 13/88] fix: format JSX Fragment correctly, consider Fragment as block (#6398) --- changelog_unreleased/mdx/pr-6398.md | 21 +++++++++++++++++++ src/language-markdown/mdx.js | 2 +- tests/mdx/__snapshots__/jsfmt.spec.js.snap | 24 ++++++++++++++++++++++ tests/mdx/jsx.mdx | 6 ++++++ 4 files changed, 52 insertions(+), 1 deletion(-) create mode 100644 changelog_unreleased/mdx/pr-6398.md diff --git a/changelog_unreleased/mdx/pr-6398.md b/changelog_unreleased/mdx/pr-6398.md new file mode 100644 index 000000000..8d04c8294 --- /dev/null +++ b/changelog_unreleased/mdx/pr-6398.md @@ -0,0 +1,21 @@ +#### MDX: fix JSX Fragment format incorrectly ([#6398](https://github.com/prettier/prettier/pull/6398) by [@JounQin](https://github.com/JounQin)) + +Previous versions format JSX Fragment incorrectly in mdx, this has been fixed in this version. + + +```md + +<> + test test + 123 + + +<> +test test + 123 + + +<> + test test + 123 +``` diff --git a/src/language-markdown/mdx.js b/src/language-markdown/mdx.js index a72597777..f8bab299d 100644 --- a/src/language-markdown/mdx.js +++ b/src/language-markdown/mdx.js @@ -26,7 +26,7 @@ const IMPORT_REGEX = /^import\s/; const EXPORT_REGEX = /^export\s/; -const BLOCKS_REGEX = "[a-z\\.]*(\\.){0,1}[a-z][a-z0-9\\.]*"; +const BLOCKS_REGEX = "[a-z][a-z0-9]*(\\.[a-z][a-z0-9]*)*|"; const COMMENT_REGEX = "|"; const EMPTY_NEWLINE = "\n\n"; diff --git a/tests/mdx/__snapshots__/jsfmt.spec.js.snap b/tests/mdx/__snapshots__/jsfmt.spec.js.snap index f5dc83bc8..d15f9aed2 100644 --- a/tests/mdx/__snapshots__/jsfmt.spec.js.snap +++ b/tests/mdx/__snapshots__/jsfmt.spec.js.snap @@ -265,6 +265,12 @@ printWidth: 80 --- +<> + test test + 123 + +--- + | Column 1 | Column 2 | |---|---| | Text | Text | @@ -299,6 +305,12 @@ printWidth: 80 --- +<> + test test + 123 + +--- + | Column 1 | Column 2 | | -------- | ------------------- | | Text | Text | @@ -342,6 +354,12 @@ semi: false --- +<> + test test + 123 + +--- + | Column 1 | Column 2 | |---|---| | Text | Text | @@ -376,6 +394,12 @@ semi: false --- +<> + test test + 123 + +--- + | Column 1 | Column 2 | | -------- | ------------------- | | Text | Text | diff --git a/tests/mdx/jsx.mdx b/tests/mdx/jsx.mdx index 47b911be6..85961c373 100644 --- a/tests/mdx/jsx.mdx +++ b/tests/mdx/jsx.mdx @@ -27,6 +27,12 @@ --- +<> + test test + 123 + +--- + | Column 1 | Column 2 | |---|---| | Text | Text | From 20c1dde1a8f64ed2cb4ee055ea057c0c4911ac62 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 18 Nov 2019 14:08:41 +0200 Subject: [PATCH 14/88] Bump flow-parser from 0.111.3 to 0.112.0 (#6990) * Bump flow-parser from 0.111.3 to 0.112.0 Bumps [flow-parser](https://github.com/facebook/flow) from 0.111.3 to 0.112.0. - [Release notes](https://github.com/facebook/flow/releases) - [Changelog](https://github.com/facebook/flow/blob/master/Changelog.md) - [Commits](https://github.com/facebook/flow/compare/v0.111.3...v0.112.0) Signed-off-by: dependabot-preview[bot] * remove workaround for fixed issue --- package.json | 2 +- src/language-js/needs-parens.js | 6 ++---- yarn.lock | 8 ++++---- 3 files changed, 7 insertions(+), 9 deletions(-) diff --git a/package.json b/package.json index d91a8118d..4dada2063 100644 --- a/package.json +++ b/package.json @@ -35,7 +35,7 @@ "esutils": "2.0.3", "find-parent-dir": "0.3.0", "find-project-root": "1.1.1", - "flow-parser": "0.111.3", + "flow-parser": "0.112.0", "get-stream": "4.1.0", "globby": "6.1.0", "graphql": "14.5.8", diff --git a/src/language-js/needs-parens.js b/src/language-js/needs-parens.js index 48bc74b2f..e45ff2972 100644 --- a/src/language-js/needs-parens.js +++ b/src/language-js/needs-parens.js @@ -668,10 +668,8 @@ function needsParens(path, options) { case "OptionalMemberExpression": case "OptionalCallExpression": if ( - ((parent.type === "MemberExpression" && name === "object") || - (parent.type === "CallExpression" && name === "callee")) && - // workaround for https://github.com/facebook/flow/issues/8159 - !(options.parser === "flow" && parent.range[0] === node.range[0]) + (parent.type === "MemberExpression" && name === "object") || + (parent.type === "CallExpression" && name === "callee") ) { return true; } diff --git a/yarn.lock b/yarn.lock index e8e01b009..9cd7dcf11 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2885,10 +2885,10 @@ flatten@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/flatten/-/flatten-1.0.2.tgz#dae46a9d78fbe25292258cc1e780a41d95c03782" -flow-parser@0.111.3: - version "0.111.3" - resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.111.3.tgz#4c256aa21a5dbb53d5305e3512cc120659ca08f3" - integrity sha512-iEjGZ94OBMcESxnLorXNjJmtd/JtQYXUVrQpfwvtAKkuyawRmv+2LM6nqyOsOJkISEYbyY6ziudRE0u4VyPSVA== +flow-parser@0.112.0: + version "0.112.0" + resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.112.0.tgz#938d7949068f147a196ebc2bd982ea066b024df5" + integrity sha512-sxjnwhR76B/fUN6n/XerYzn8R1HvtVo3SM8Il3WiZ4nkAlb2BBzKe1TSVKGSyZgD6FW9Bsxom/57ktkqrqmXGA== flush-write-stream@^1.0.0: version "1.1.1" From e66ed64001db84fdeeb68ce8f75bda79b828bfc6 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 18 Nov 2019 18:22:12 +0100 Subject: [PATCH 15/88] Bump eslint-config-prettier from 6.5.0 to 6.6.0 (#6991) Bumps [eslint-config-prettier](https://github.com/prettier/eslint-config-prettier) from 6.5.0 to 6.6.0. - [Release notes](https://github.com/prettier/eslint-config-prettier/releases) - [Changelog](https://github.com/prettier/eslint-config-prettier/blob/master/CHANGELOG.md) - [Commits](https://github.com/prettier/eslint-config-prettier/compare/v6.5.0...v6.6.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 4dada2063..0d7fac847 100644 --- a/package.json +++ b/package.json @@ -85,7 +85,7 @@ "codecov": "3.6.1", "cross-env": "6.0.3", "eslint": "6.6.0", - "eslint-config-prettier": "6.5.0", + "eslint-config-prettier": "6.6.0", "eslint-formatter-friendly": "7.0.0", "eslint-plugin-import": "2.18.2", "eslint-plugin-prettier": "3.1.1", diff --git a/yarn.lock b/yarn.lock index 9cd7dcf11..3cf5cde5b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2405,10 +2405,10 @@ escodegen@^1.9.0: optionalDependencies: source-map "~0.6.1" -eslint-config-prettier@6.5.0: - version "6.5.0" - resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-6.5.0.tgz#aaf9a495e2a816865e541bfdbb73a65cc162b3eb" - integrity sha512-cjXp8SbO9VFGW/Z7mbTydqS9to8Z58E5aYhj3e1+Hx7lS9s6gL5ILKNpCqZAFOVYRcSkWPFYljHrEh8QFEK5EQ== +eslint-config-prettier@6.6.0: + version "6.6.0" + resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-6.6.0.tgz#4e039f65af8245e32d8fba4a2f5b83ed7186852e" + integrity sha512-6RGaj7jD+HeuSVHoIT6A0WkBhVEk0ULg74kp2FAWIwkYrOERae0TjIO09Cw33oN//gJWmt7aFhVJErEVta7uvA== dependencies: get-stdin "^6.0.0" From 9fff8bd9b6f33dd3f2c8c360c09b0f4e42c21535 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 18 Nov 2019 18:22:37 +0100 Subject: [PATCH 16/88] Bump execa from 3.2.0 to 3.3.0 (#6992) Bumps [execa](https://github.com/sindresorhus/execa) from 3.2.0 to 3.3.0. - [Release notes](https://github.com/sindresorhus/execa/releases) - [Commits](https://github.com/sindresorhus/execa/compare/v3.2.0...v3.3.0) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 0d7fac847..d00fe7583 100644 --- a/package.json +++ b/package.json @@ -90,7 +90,7 @@ "eslint-plugin-import": "2.18.2", "eslint-plugin-prettier": "3.1.1", "eslint-plugin-react": "7.16.0", - "execa": "3.2.0", + "execa": "3.3.0", "jest": "23.3.0", "jest-junit": "9.0.0", "jest-snapshot-serializer-ansi": "1.0.0", diff --git a/yarn.lock b/yarn.lock index 3cf5cde5b..8f0b76c33 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2620,10 +2620,10 @@ exec-sh@^0.2.0: dependencies: merge "^1.1.3" -execa@3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-3.2.0.tgz#18326b79c7ab7fbd6610fd900c1b9e95fa48f90a" - integrity sha512-kJJfVbI/lZE1PZYDI5VPxp8zXPO9rtxOkhpZ0jMKha56AI9y2gGVC6bkukStQf0ka5Rh15BA5m7cCCH4jmHqkw== +execa@3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-3.3.0.tgz#7e348eef129a1937f21ecbbd53390942653522c1" + integrity sha512-j5Vit5WZR/cbHlqU97+qcnw9WHRCIL4V1SVe75VcHcD1JRBdt8fv0zw89b7CQHQdUHTt2VjuhcF5ibAgVOxqpg== dependencies: cross-spawn "^7.0.0" get-stream "^5.0.0" From 3d15edc8ebbfe6f61d6b0230983b2c041e8259cc Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 18 Nov 2019 21:15:14 +0100 Subject: [PATCH 17/88] [Security] Bump https-proxy-agent from 2.2.1 to 2.2.4 (#6999) Bumps [https-proxy-agent](https://github.com/TooTallNate/node-https-proxy-agent) from 2.2.1 to 2.2.4. **This update includes security fixes.** - [Release notes](https://github.com/TooTallNate/node-https-proxy-agent/releases) - [Commits](https://github.com/TooTallNate/node-https-proxy-agent/compare/2.2.1...2.2.4) Signed-off-by: dependabot-preview[bot] --- yarn.lock | 27 ++++++++++++++++----------- 1 file changed, 16 insertions(+), 11 deletions(-) diff --git a/yarn.lock b/yarn.lock index 8f0b76c33..0c1be0baa 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1019,9 +1019,10 @@ acorn@^7.1.0: resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.1.0.tgz#949d36f2c292535da602283586c2477c57eb2d6c" integrity sha512-kL5CuoXA/dgxlBbVrflsflzQ3PAas7RYZB52NOm/6839iVYJgKMJ3cQJD+t2i5+qFa8h3MDpEOJiS64E8JLnSQ== -agent-base@^4.1.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-4.2.1.tgz#d89e5999f797875674c07d87f260fc41e83e8ca9" +agent-base@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-4.3.0.tgz#8165f01c436009bccad0b1d122f05ed770efc6ee" + integrity sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg== dependencies: es6-promisify "^5.0.0" @@ -2381,12 +2382,14 @@ es-to-primitive@^1.2.0: is-symbol "^1.0.2" es6-promise@^4.0.3: - version "4.2.5" - resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.2.5.tgz#da6d0d5692efb461e082c14817fe2427d8f5d054" + version "4.2.8" + resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.2.8.tgz#4eb21594c972bc40553d276e510539143db53e0a" + integrity sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w== es6-promisify@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz#5109d62f3e56ea967c4b63505aef08291c8a5203" + resolved "https://registry.yarnpkg.com/es6-promisify/-/es6-promisify-5.0.0.tgz#5109d62f3e56ea967c4b63505aef08291c8a5203" + integrity sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM= dependencies: es6-promise "^4.0.3" @@ -3251,10 +3254,11 @@ https-browserify@^1.0.0: integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM= https-proxy-agent@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-2.2.1.tgz#51552970fa04d723e04c56d04178c3f92592bbc0" + version "2.2.4" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz#4ee7a737abd92678a293d9b34a1af4d0d08c787b" + integrity sha512-OmvfoQ53WLjtA9HeYP9RNrWMJzzAz1JGaSFr1nijg0PVR1JaD/xbJq1mdEIIlxGpXp9eSe/O2LgU9DJmTPd0Eg== dependencies: - agent-base "^4.1.0" + agent-base "^4.3.0" debug "^3.1.0" human-signals@^1.1.1: @@ -4742,8 +4746,9 @@ ms@2.0.0: resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" ms@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" + version "2.1.2" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== mute-stream@0.0.8: version "0.0.8" From 7a2e9b6215301f82bd74acefd3687307e87040c9 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 19 Nov 2019 09:10:54 +0100 Subject: [PATCH 18/88] Bump eslint-config-prettier from 6.6.0 to 6.7.0 (#7003) Bumps [eslint-config-prettier](https://github.com/prettier/eslint-config-prettier) from 6.6.0 to 6.7.0. - [Release notes](https://github.com/prettier/eslint-config-prettier/releases) - [Changelog](https://github.com/prettier/eslint-config-prettier/blob/master/CHANGELOG.md) - [Commits](https://github.com/prettier/eslint-config-prettier/commits) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index d00fe7583..a276bfaec 100644 --- a/package.json +++ b/package.json @@ -85,7 +85,7 @@ "codecov": "3.6.1", "cross-env": "6.0.3", "eslint": "6.6.0", - "eslint-config-prettier": "6.6.0", + "eslint-config-prettier": "6.7.0", "eslint-formatter-friendly": "7.0.0", "eslint-plugin-import": "2.18.2", "eslint-plugin-prettier": "3.1.1", diff --git a/yarn.lock b/yarn.lock index 0c1be0baa..2e0157de0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2408,10 +2408,10 @@ escodegen@^1.9.0: optionalDependencies: source-map "~0.6.1" -eslint-config-prettier@6.6.0: - version "6.6.0" - resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-6.6.0.tgz#4e039f65af8245e32d8fba4a2f5b83ed7186852e" - integrity sha512-6RGaj7jD+HeuSVHoIT6A0WkBhVEk0ULg74kp2FAWIwkYrOERae0TjIO09Cw33oN//gJWmt7aFhVJErEVta7uvA== +eslint-config-prettier@6.7.0: + version "6.7.0" + resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-6.7.0.tgz#9a876952e12df2b284adbd3440994bf1f39dfbb9" + integrity sha512-FamQVKM3jjUVwhG4hEMnbtsq7xOIDm+SY5iBPfR8gKsJoAB2IQnNF+bk1+8Fy44Nq7PPJaLvkRxILYdJWoguKQ== dependencies: get-stdin "^6.0.0" From 53a30f3597febc1609593e10bdd12d7eb3dab087 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 19 Nov 2019 09:12:50 +0100 Subject: [PATCH 19/88] Bump @angular/compiler from 8.2.13 to 8.2.14 (#7004) Bumps [@angular/compiler](https://github.com/angular/angular) from 8.2.13 to 8.2.14. - [Release notes](https://github.com/angular/angular/releases) - [Changelog](https://github.com/angular/angular/blob/master/CHANGELOG.md) - [Commits](https://github.com/angular/angular/compare/8.2.13...8.2.14) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index a276bfaec..92f50b0fb 100644 --- a/package.json +++ b/package.json @@ -14,7 +14,7 @@ "node": ">=8" }, "dependencies": { - "@angular/compiler": "8.2.13", + "@angular/compiler": "8.2.14", "@babel/code-frame": "7.5.5", "@babel/parser": "7.7.3", "@glimmer/syntax": "0.41.0", diff --git a/yarn.lock b/yarn.lock index 2e0157de0..322df8a39 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,10 +2,10 @@ # yarn lockfile v1 -"@angular/compiler@8.2.13": - version "8.2.13" - resolved "https://registry.yarnpkg.com/@angular/compiler/-/compiler-8.2.13.tgz#76d35761918df8cadeb1624418377712d259347f" - integrity sha512-u2NWCvEn4SjbMvn2PG6sYcf+rR5u3aYMv3/mNQ9k+2UmCIu3yJrcuCzebjo5SdlDVqKD2vzbyMZnr8VB9OcceQ== +"@angular/compiler@8.2.14": + version "8.2.14" + resolved "https://registry.yarnpkg.com/@angular/compiler/-/compiler-8.2.14.tgz#46db7a9d1c17f236126518ff26480c160d5a6183" + integrity sha512-ABZO4E7eeFA1QyJ2trDezxeQM5ZFa1dXw1Mpl/+1vuXDKNjJgNyWYwKp/NwRkLmrsuV0yv4UDCDe4kJOGbPKnw== dependencies: tslib "^1.9.0" From 61f4cbcf418f8268a0c4ce03b72ef9877dc5ed2a Mon Sep 17 00:00:00 2001 From: Cyrille David Date: Tue, 19 Nov 2019 09:57:47 +0100 Subject: [PATCH 20/88] tests(handlebars): Move a test to handlebars folder (#6962) This looks like a file left behind during a rebase. Let's move it to a more logical location. --- .../__snapshots__/jsfmt.spec.js.snap | 92 +++++++++++++++++++ .../preserved-spaces-and-breaks.hbs | 0 2 files changed, 92 insertions(+) rename tests/{glimmer => handlebars-whitespace}/preserved-spaces-and-breaks.hbs (100%) diff --git a/tests/handlebars-whitespace/__snapshots__/jsfmt.spec.js.snap b/tests/handlebars-whitespace/__snapshots__/jsfmt.spec.js.snap index 3ebddb6cc..7f21fe231 100644 --- a/tests/handlebars-whitespace/__snapshots__/jsfmt.spec.js.snap +++ b/tests/handlebars-whitespace/__snapshots__/jsfmt.spec.js.snap @@ -355,6 +355,98 @@ printWidth: 40 ================================================================================ `; +exports[`preserved-spaces-and-breaks.hbs 1`] = ` +====================================options===================================== +parsers: ["glimmer"] +printWidth: 40 + | printWidth +=====================================input====================================== + +{{name}} + + + +Some sentence with {{dynamic}} expressions. + +sometimes{{nogaps}}areimportant + + +{{name}} is your name + + +{{#block}} +{{/block}} + + +{{#block}} + some {{text}} +{{/block}} + +{{#block}} + + some {{text}} +{{/block}} + + + + + + some {{text}} + + + + + some {{text}} + + +
+
+ +
+ +
+ +=====================================output===================================== + +{{name}} + +Some sentence with {{dynamic +}} expressions. + +sometimes{{nogaps +}}areimportant + + +{{name}} is your name + +{{#block}}{{/block}} + +{{#block}} + some {{text}} +{{/block}} + +{{#block}} + some {{text}} +{{/block}} + + + + + some {{text}} + + + + some {{text}} + + +
+
+ +
+
+================================================================================ +`; + exports[`punctuation.hbs 1`] = ` ====================================options===================================== parsers: ["glimmer"] diff --git a/tests/glimmer/preserved-spaces-and-breaks.hbs b/tests/handlebars-whitespace/preserved-spaces-and-breaks.hbs similarity index 100% rename from tests/glimmer/preserved-spaces-and-breaks.hbs rename to tests/handlebars-whitespace/preserved-spaces-and-breaks.hbs From 5a94039d1bfa2ff2cc4ae4f291a12dbf43ca43ba Mon Sep 17 00:00:00 2001 From: Evilebot Tnawi Date: Tue, 19 Nov 2019 14:58:32 +0300 Subject: [PATCH 21/88] test: css-in-js (#7005) --- .../__snapshots__/jsfmt.spec.js.snap | 182 ++++++++++++++++++ tests/multiparser_js_css/styled-components.js | 90 +++++++++ 2 files changed, 272 insertions(+) diff --git a/tests/multiparser_js_css/__snapshots__/jsfmt.spec.js.snap b/tests/multiparser_js_css/__snapshots__/jsfmt.spec.js.snap index e21296a28..a2ac62276 100644 --- a/tests/multiparser_js_css/__snapshots__/jsfmt.spec.js.snap +++ b/tests/multiparser_js_css/__snapshots__/jsfmt.spec.js.snap @@ -165,6 +165,96 @@ const StyledComponent2 = styled.div\` } \`; +const Direction = styled.span\` + \${({ up }) => up && \`color: \${color.positive};\`} + \${({ down }) => down && \`color: \${color.negative};\`} +\`; + +const Direction2 = styled.span\` + \${({ up }) => up && \`color: \${color.positive}\`}; + \${({ down }) => down && \`color: \${color.negative}\`}; +\`; + +const mixin = css\` + color: \${props => props.color}; + \${props => props.otherProperty}: \${props => props.otherValue}; +\`; + +const foo = styled.div\` + display: flex; + \${props => props.useMixin && mixin} +\`; + +const Single1 = styled.div\` + color: red +\`; + +const Single2 = styled.div\` + color: red; +\`; + +const Dropdown = styled.div\` + /* A comment to avoid the prettier issue: https://github.com/prettier/prettier/issues/2291 */ + position: relative; +\`; + +const bar = styled.div\` + border-radius: 50%; + border: 5px solid rgba(var(--green-rgb), 0); + display: inline-block; + height: 40px; + width: 40px; + + \${props => + (props.complete || props.inProgress) && + css\` + border-color: rgba(var(--green-rgb), 0.15); + \`} + + div { + background-color: var(--purpleTT); + border-radius: 50%; + border: 4px solid rgba(var(--purple-rgb), 0.2); + color: var(--purpleTT); + display: inline-flex; + + \${props => + props.complete && + css\` + background-color: var(--green); + border-width: 7px; + \`} + + \${props => + (props.complete || props.inProgress) && + css\` + border-color: var(--green); + \`} + } +\`; + +const A = styled.a\` + display: inline-block; + color: #fff; + \${props => props.a &&css\` + display: none; + \`} + height: 30px; +\`; + +const Foo = styled.p\` + max-width: 980px; + \${mediaBreakpointOnlyXs\` + && { + font-size: 0.8rem; + } + \`} + + &.bottom { + margin-top: 3rem; + } +\`; + =====================================output===================================== const ListItem1 = styled.li\`\`; @@ -326,5 +416,97 @@ const StyledComponent2 = styled.div\` } \`; +const Direction = styled.span\` + \${({ up }) => up && \`color: \${color.positive};\`} + \${({ down }) => down && \`color: \${color.negative};\`} +\`; + +const Direction2 = styled.span\` + \${({ up }) => up && \`color: \${color.positive}\`}; + \${({ down }) => down && \`color: \${color.negative}\`}; +\`; + +const mixin = css\` + color: \${props => props.color}; + \${props => props.otherProperty}: \${props => props.otherValue}; +\`; + +const foo = styled.div\` + display: flex; + \${props => props.useMixin && mixin} +\`; + +const Single1 = styled.div\` + color: red; +\`; + +const Single2 = styled.div\` + color: red; +\`; + +const Dropdown = styled.div\` + /* A comment to avoid the prettier issue: https://github.com/prettier/prettier/issues/2291 */ + position: relative; +\`; + +const bar = styled.div\` + border-radius: 50%; + border: 5px solid rgba(var(--green-rgb), 0); + display: inline-block; + height: 40px; + width: 40px; + + \${props => + (props.complete || props.inProgress) && + css\` + border-color: rgba(var(--green-rgb), 0.15); + \`} + + div { + background-color: var(--purpleTT); + border-radius: 50%; + border: 4px solid rgba(var(--purple-rgb), 0.2); + color: var(--purpleTT); + display: inline-flex; + + \${props => + props.complete && + css\` + background-color: var(--green); + border-width: 7px; + \`} + + \${props => + (props.complete || props.inProgress) && + css\` + border-color: var(--green); + \`} + } +\`; + +const A = styled.a\` + display: inline-block; + color: #fff; + \${props => + props.a && + css\` + display: none; + \`} + height: 30px; +\`; + +const Foo = styled.p\` + max-width: 980px; + \${mediaBreakpointOnlyXs\` + && { + font-size: 0.8rem; + } + \`} + + &.bottom { + margin-top: 3rem; + } +\`; + ================================================================================ `; diff --git a/tests/multiparser_js_css/styled-components.js b/tests/multiparser_js_css/styled-components.js index 8c07ef487..4d804f8f0 100644 --- a/tests/multiparser_js_css/styled-components.js +++ b/tests/multiparser_js_css/styled-components.js @@ -156,3 +156,93 @@ const StyledComponent2 = styled.div` color: red } `; + +const Direction = styled.span` + ${({ up }) => up && `color: ${color.positive};`} + ${({ down }) => down && `color: ${color.negative};`} +`; + +const Direction2 = styled.span` + ${({ up }) => up && `color: ${color.positive}`}; + ${({ down }) => down && `color: ${color.negative}`}; +`; + +const mixin = css` + color: ${props => props.color}; + ${props => props.otherProperty}: ${props => props.otherValue}; +`; + +const foo = styled.div` + display: flex; + ${props => props.useMixin && mixin} +`; + +const Single1 = styled.div` + color: red +`; + +const Single2 = styled.div` + color: red; +`; + +const Dropdown = styled.div` + /* A comment to avoid the prettier issue: https://github.com/prettier/prettier/issues/2291 */ + position: relative; +`; + +const bar = styled.div` + border-radius: 50%; + border: 5px solid rgba(var(--green-rgb), 0); + display: inline-block; + height: 40px; + width: 40px; + + ${props => + (props.complete || props.inProgress) && + css` + border-color: rgba(var(--green-rgb), 0.15); + `} + + div { + background-color: var(--purpleTT); + border-radius: 50%; + border: 4px solid rgba(var(--purple-rgb), 0.2); + color: var(--purpleTT); + display: inline-flex; + + ${props => + props.complete && + css` + background-color: var(--green); + border-width: 7px; + `} + + ${props => + (props.complete || props.inProgress) && + css` + border-color: var(--green); + `} + } +`; + +const A = styled.a` + display: inline-block; + color: #fff; + ${props => props.a &&css` + display: none; + `} + height: 30px; +`; + +const Foo = styled.p` + max-width: 980px; + ${mediaBreakpointOnlyXs` + && { + font-size: 0.8rem; + } + `} + + &.bottom { + margin-top: 3rem; + } +`; From d52b6a8a1ea78e3a50e25e947450eeb10186a0a3 Mon Sep 17 00:00:00 2001 From: Georgii Dolzhykov Date: Tue, 19 Nov 2019 14:49:44 +0200 Subject: [PATCH 22/88] refactoring: tokens requested from TS parser were immediately dismissed (#7008) --- src/language-js/parser-typescript.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/language-js/parser-typescript.js b/src/language-js/parser-typescript.js index 35401525d..21bda1fa8 100644 --- a/src/language-js/parser-typescript.js +++ b/src/language-js/parser-typescript.js @@ -30,7 +30,6 @@ function parse(text, parsers, opts) { } } - delete ast.tokens; includeShebang(text, ast); return postprocess(ast, Object.assign({}, opts, { originalText: text })); } @@ -40,7 +39,6 @@ function tryParseTypeScript(text, jsx) { return parser.parse(text, { loc: true, range: true, - tokens: true, comment: true, useJSXTextNode: true, jsx From 3d85a3e76ef49dbb83ac3eb2dcf5dbd93da6e8e4 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Wed, 20 Nov 2019 12:39:33 +0200 Subject: [PATCH 23/88] Bump @typescript-eslint/typescript-estree from 2.7.0 to 2.8.0 (#7017) Bumps [@typescript-eslint/typescript-estree](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-estree) from 2.7.0 to 2.8.0. - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/typescript-estree/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v2.8.0/packages/typescript-estree) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 19 ++++++++++--------- 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/package.json b/package.json index 92f50b0fb..b6af95577 100644 --- a/package.json +++ b/package.json @@ -19,7 +19,7 @@ "@babel/parser": "7.7.3", "@glimmer/syntax": "0.41.0", "@iarna/toml": "2.2.3", - "@typescript-eslint/typescript-estree": "2.7.0", + "@typescript-eslint/typescript-estree": "2.8.0", "angular-estree-parser": "1.1.5", "angular-html-parser": "1.3.0", "camelcase": "5.3.1", diff --git a/yarn.lock b/yarn.lock index 322df8a39..b5413d06e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -817,13 +817,14 @@ dependencies: "@types/yargs-parser" "*" -"@typescript-eslint/typescript-estree@2.7.0": - version "2.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-2.7.0.tgz#34fd98c77a07b40d04d5b4203eddd3abeab909f4" - integrity sha512-vVCE/DY72N4RiJ/2f10PTyYekX2OLaltuSIBqeHYI44GQ940VCYioInIb8jKMrK9u855OEJdFC+HmWAZTnC+Ag== +"@typescript-eslint/typescript-estree@2.8.0": + version "2.8.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-2.8.0.tgz#fcc3fe6532840085d29b75432c8a59895876aeca" + integrity sha512-ksvjBDTdbAQ04cR5JyFSDX113k66FxH1tAXmi+dj6hufsl/G0eMc/f1GgLjEVPkYClDbRKv+rnBFuE5EusomUw== dependencies: debug "^4.1.1" - glob "^7.1.4" + eslint-visitor-keys "^1.1.0" + glob "^7.1.6" is-glob "^4.0.1" lodash.unescape "4.0.1" semver "^6.3.0" @@ -3057,10 +3058,10 @@ glob-parent@^5.0.0: dependencies: is-glob "^4.0.1" -glob@^7.0.0, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4: - version "7.1.4" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.4.tgz#aa608a2f6c577ad357e1ae5a5c26d9a8d1969255" - integrity sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A== +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.6: + version "7.1.6" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" + integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" From 5402f9942251afa36b9d417afa6e121d765a98cd Mon Sep 17 00:00:00 2001 From: Sosuke Suzuki Date: Wed, 20 Nov 2019 19:48:08 +0900 Subject: [PATCH 24/88] Ignore test files (#7018) --- .gitignore | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index e2a526086..460258fde 100644 --- a/.gitignore +++ b/.gitignore @@ -3,9 +3,7 @@ /scripts/release/node_modules *.log /errors -/test.js -/test.ts -/test.css +/test.* /.vscode /dist /website/node_modules From c9892675b3c18d561ab642349ce947a4f02a56f3 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Wed, 20 Nov 2019 17:52:42 +0100 Subject: [PATCH 25/88] Bump rollup from 1.26.3 to 1.27.2 (#7016) Bumps [rollup](https://github.com/rollup/rollup) from 1.26.3 to 1.27.2. - [Release notes](https://github.com/rollup/rollup/releases) - [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md) - [Commits](https://github.com/rollup/rollup/compare/v1.26.3...v1.27.2) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index b6af95577..73164b18d 100644 --- a/package.json +++ b/package.json @@ -99,7 +99,7 @@ "mkdirp": "0.5.1", "prettier": "1.19.1", "rimraf": "3.0.0", - "rollup": "1.26.3", + "rollup": "1.27.2", "rollup-plugin-babel": "4.3.3", "rollup-plugin-commonjs": "10.1.0", "rollup-plugin-node-globals": "1.4.0", diff --git a/yarn.lock b/yarn.lock index b5413d06e..718f780f9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5939,10 +5939,10 @@ rollup-pluginutils@^2.3.1, rollup-pluginutils@^2.5.0, rollup-pluginutils@^2.6.0, dependencies: estree-walker "^0.6.1" -rollup@1.26.3: - version "1.26.3" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-1.26.3.tgz#3e71b8120a4ccc745a856e926cab0efbe0eead90" - integrity sha512-8MhY/M8gnv3Q/pQQSWYWzbeJ5J1C5anCNY5BK1kV8Yzw9RFS0FF4lbLt+uyPO3wLKWXSXrhAL5pWL85TZAh+Sw== +rollup@1.27.2: + version "1.27.2" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-1.27.2.tgz#caf54a93df228bf7864f13dddcdb363d3e958509" + integrity sha512-sD3iyd0zlvgK1S3MmICi6F/Y+R/QWY5XxzsTGN4pAd+nCasDUizmAhgq2hdh1t2eLux974NHU2TW41fhuGPv+Q== dependencies: "@types/estree" "*" "@types/node" "*" From 90eed411d4c02c0084be6e2c618057a8c934723e Mon Sep 17 00:00:00 2001 From: Evilebot Tnawi Date: Wed, 20 Nov 2019 20:59:25 +0300 Subject: [PATCH 26/88] =?UTF-8?q?preserve=20parentheses=20for=20JSDoc=20ty?= =?UTF-8?q?pe=20casting=20with=20extra=20spaces=20a=E2=80=A6=20(#7011)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- changelog_unreleased/javascript/pr-7011.md | 18 ++++++++++++ src/language-js/needs-parens.js | 2 +- .../__snapshots__/jsfmt.spec.js.snap | 28 +++++++++++++++++++ .../extra-spaces-and-asterisks.js | 8 ++++++ 4 files changed, 55 insertions(+), 1 deletion(-) create mode 100644 changelog_unreleased/javascript/pr-7011.md create mode 100644 tests/comments_closure_typecast/extra-spaces-and-asterisks.js diff --git a/changelog_unreleased/javascript/pr-7011.md b/changelog_unreleased/javascript/pr-7011.md new file mode 100644 index 000000000..f86a2699d --- /dev/null +++ b/changelog_unreleased/javascript/pr-7011.md @@ -0,0 +1,18 @@ +#### Preserve parentheses for JSDoc type casting with extra spaces and asterisk at end ([#7011](https://github.com/prettier/prettier/pull/7011) by [@evilebottnawi](https://github.com/evilebottnawi)) + +Formatting of comments in labeled statements was not stable + + +```javascript +// Input +const foo = /** @type {!Foo} **/ (baz); +const bar = /** @type {!Foo} * * */(baz); + +// Prettier stable +const foo = /** @type {!Foo} **/ baz; +const bar = /** @type {!Foo} * * */ baz; + +// Prettier master +const foo = /** @type {!Foo} **/ (baz); +const bar = /** @type {!Foo} * * */ (baz); +``` diff --git a/src/language-js/needs-parens.js b/src/language-js/needs-parens.js index e45ff2972..e6b5aa0e2 100644 --- a/src/language-js/needs-parens.js +++ b/src/language-js/needs-parens.js @@ -53,7 +53,7 @@ function hasClosureCompilerTypeCastComment(text, path) { const cleaned = comment .trim() .split("\n") - .map(line => line.replace(/^[\s*]+/, "")) + .map(line => line.replace(/^[\s*]+/, "").replace(/[\s*]+$/, "")) .join(" ") .trim(); if (!/^@type\s*\{[^]+\}$/.test(cleaned)) { diff --git a/tests/comments_closure_typecast/__snapshots__/jsfmt.spec.js.snap b/tests/comments_closure_typecast/__snapshots__/jsfmt.spec.js.snap index 109e446fe..e0650b287 100644 --- a/tests/comments_closure_typecast/__snapshots__/jsfmt.spec.js.snap +++ b/tests/comments_closure_typecast/__snapshots__/jsfmt.spec.js.snap @@ -156,3 +156,31 @@ const v8 = /**@type{string} */ (value); ================================================================================ `; + +exports[`extra-spaces-and-asterisks.js 1`] = ` +====================================options===================================== +parsers: ["babel"] +printWidth: 80 + | printWidth +=====================================input====================================== +const foo1 = /** @type {!Foo} */(bar); +const foo2 = /** @type {!Foo} **/(bar); +const foo3 = /** @type {!Foo} * */(bar); +const foo4 = /** @type {!Foo} ***/(bar); +const foo5 = /** @type {!Foo} * * */(bar); +const foo6 = /** @type {!Foo} *****/(bar); +const foo7 = /** @type {!Foo} * * * * */(bar); +const foo8 = /** @type {!Foo} ** * * */(bar); + +=====================================output===================================== +const foo1 = /** @type {!Foo} */ (bar); +const foo2 = /** @type {!Foo} **/ (bar); +const foo3 = /** @type {!Foo} * */ (bar); +const foo4 = /** @type {!Foo} ***/ (bar); +const foo5 = /** @type {!Foo} * * */ (bar); +const foo6 = /** @type {!Foo} *****/ (bar); +const foo7 = /** @type {!Foo} * * * * */ (bar); +const foo8 = /** @type {!Foo} ** * * */ (bar); + +================================================================================ +`; diff --git a/tests/comments_closure_typecast/extra-spaces-and-asterisks.js b/tests/comments_closure_typecast/extra-spaces-and-asterisks.js new file mode 100644 index 000000000..45572417a --- /dev/null +++ b/tests/comments_closure_typecast/extra-spaces-and-asterisks.js @@ -0,0 +1,8 @@ +const foo1 = /** @type {!Foo} */(bar); +const foo2 = /** @type {!Foo} **/(bar); +const foo3 = /** @type {!Foo} * */(bar); +const foo4 = /** @type {!Foo} ***/(bar); +const foo5 = /** @type {!Foo} * * */(bar); +const foo6 = /** @type {!Foo} *****/(bar); +const foo7 = /** @type {!Foo} * * * * */(bar); +const foo8 = /** @type {!Foo} ** * * */(bar); From 31842ec068be4bc03bf70615d43d6109bb74ea2f Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Thu, 21 Nov 2019 08:23:56 +0100 Subject: [PATCH 27/88] Bump docusaurus from 1.14.0 to 1.14.1 in /website (#7023) Bumps [docusaurus](https://github.com/facebook/docusaurus) from 1.14.0 to 1.14.1. - [Release notes](https://github.com/facebook/docusaurus/releases) - [Changelog](https://github.com/facebook/docusaurus/blob/master/CHANGELOG.md) - [Commits](https://github.com/facebook/docusaurus/compare/v1.14.0...v1.14.1) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- website/package.json | 2 +- website/yarn.lock | 521 ++++++++++++++++++++----------------------- 2 files changed, 238 insertions(+), 285 deletions(-) diff --git a/website/package.json b/website/package.json index e9b466cc9..c74613027 100644 --- a/website/package.json +++ b/website/package.json @@ -24,7 +24,7 @@ "@sandhose/prettier-animated-logo": "1.0.3", "babel-loader": "8.0.6", "concurrently": "5.0.0", - "docusaurus": "1.14.0", + "docusaurus": "1.14.1", "js-yaml": "3.13.1", "svgo": "1.3.2", "webpack": "4.41.2", diff --git a/website/yarn.lock b/website/yarn.lock index bff083f9c..8cdbe90aa 100644 --- a/website/yarn.lock +++ b/website/yarn.lock @@ -16,19 +16,19 @@ dependencies: "@babel/highlight" "^7.0.0" -"@babel/core@^7.6.2": - version "7.6.4" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.6.4.tgz#6ebd9fe00925f6c3e177bb726a188b5f578088ff" - integrity sha512-Rm0HGw101GY8FTzpWSyRbki/jzq+/PkNQJ+nSulrdY6gFGOsNseCqD6KHRYe2E+EdzuBdr2pxCp6s4Uk6eJ+XQ== +"@babel/core@^7.7.2": + version "7.7.2" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.7.2.tgz#ea5b99693bcfc058116f42fa1dd54da412b29d91" + integrity sha512-eeD7VEZKfhK1KUXGiyPFettgF3m513f8FoBSWiQ1xTvl1RAopLs42Wp9+Ze911I6H0N9lNqJMDgoZT7gHsipeQ== dependencies: "@babel/code-frame" "^7.5.5" - "@babel/generator" "^7.6.4" - "@babel/helpers" "^7.6.2" - "@babel/parser" "^7.6.4" - "@babel/template" "^7.6.0" - "@babel/traverse" "^7.6.3" - "@babel/types" "^7.6.3" - convert-source-map "^1.1.0" + "@babel/generator" "^7.7.2" + "@babel/helpers" "^7.7.0" + "@babel/parser" "^7.7.2" + "@babel/template" "^7.7.0" + "@babel/traverse" "^7.7.2" + "@babel/types" "^7.7.2" + convert-source-map "^1.7.0" debug "^4.1.0" json5 "^2.1.0" lodash "^4.17.13" @@ -36,16 +36,6 @@ semver "^5.4.1" source-map "^0.5.0" -"@babel/generator@^7.6.3", "@babel/generator@^7.6.4": - version "7.6.4" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.6.4.tgz#a4f8437287bf9671b07f483b76e3bb731bc97671" - integrity sha512-jsBuXkFoZxk0yWLyGI9llT9oiQ2FeTASmRFE32U+aaDTfoE92t78eroO7PTpU/OrYq38hlcDM6vbfLDaOLy+7w== - dependencies: - "@babel/types" "^7.6.3" - jsesc "^2.5.1" - lodash "^4.17.13" - source-map "^0.5.0" - "@babel/generator@^7.7.2": version "7.7.2" resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.7.2.tgz#2f4852d04131a5e17ea4f6645488b5da66ebf3af" @@ -95,17 +85,17 @@ "@babel/traverse" "^7.4.4" "@babel/types" "^7.4.4" -"@babel/helper-create-class-features-plugin@^7.5.5": - version "7.6.0" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.6.0.tgz#769711acca889be371e9bc2eb68641d55218021f" - integrity sha512-O1QWBko4fzGju6VoVvrZg0RROCVifcLxiApnGP3OWfWzvxRZFCoBD81K5ur5e3bVY2Vf/5rIJm8cqPKn8HUJng== +"@babel/helper-create-class-features-plugin@^7.7.0": + version "7.7.0" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.7.0.tgz#bcdc223abbfdd386f94196ae2544987f8df775e8" + integrity sha512-MZiB5qvTWoyiFOgootmRSDV1udjIqJW/8lmxgzKq6oDqxdmHUjeP2ZUOmgHdYjmUVNABqRrHjYAYRvj8Eox/UA== dependencies: - "@babel/helper-function-name" "^7.1.0" - "@babel/helper-member-expression-to-functions" "^7.5.5" - "@babel/helper-optimise-call-expression" "^7.0.0" + "@babel/helper-function-name" "^7.7.0" + "@babel/helper-member-expression-to-functions" "^7.7.0" + "@babel/helper-optimise-call-expression" "^7.7.0" "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-replace-supers" "^7.5.5" - "@babel/helper-split-export-declaration" "^7.4.4" + "@babel/helper-replace-supers" "^7.7.0" + "@babel/helper-split-export-declaration" "^7.7.0" "@babel/helper-create-regexp-features-plugin@^7.7.0": version "7.7.2" @@ -132,15 +122,6 @@ "@babel/traverse" "^7.1.0" "@babel/types" "^7.0.0" -"@babel/helper-function-name@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz#a0ceb01685f73355d4360c1247f582bfafc8ff53" - integrity sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw== - dependencies: - "@babel/helper-get-function-arity" "^7.0.0" - "@babel/template" "^7.1.0" - "@babel/types" "^7.0.0" - "@babel/helper-function-name@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.7.0.tgz#44a5ad151cfff8ed2599c91682dda2ec2c8430a3" @@ -310,13 +291,6 @@ dependencies: "@babel/types" "^7.0.0" -"@babel/helper-split-export-declaration@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.4.4.tgz#ff94894a340be78f53f06af038b205c49d993677" - integrity sha512-Ro/XkzLf3JFITkW6b+hNxzZ1n5OQ80NvIUdmHspih1XAhtN3vPTuUFT4eQnela+2MaZ5ulH+iyP513KJrxbN7Q== - dependencies: - "@babel/types" "^7.4.4" - "@babel/helper-split-export-declaration@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.7.0.tgz#1365e74ea6c614deeb56ebffabd71006a0eb2300" @@ -334,14 +308,14 @@ "@babel/traverse" "^7.7.0" "@babel/types" "^7.7.0" -"@babel/helpers@^7.6.2": - version "7.6.2" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.6.2.tgz#681ffe489ea4dcc55f23ce469e58e59c1c045153" - integrity sha512-3/bAUL8zZxYs1cdX2ilEE0WobqbCmKWr/889lf2SS0PpDcpEIY8pb1CCyz0pEcX3pEb+MCbks1jIokz2xLtGTA== +"@babel/helpers@^7.7.0": + version "7.7.0" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.7.0.tgz#359bb5ac3b4726f7c1fde0ec75f64b3f4275d60b" + integrity sha512-VnNwL4YOhbejHb7x/b5F39Zdg5vIQpUUNzJwx0ww1EcVRt41bbGRZWhAURrfY32T5zTT3qwNOQFWpn+P0i0a2g== dependencies: - "@babel/template" "^7.6.0" - "@babel/traverse" "^7.6.2" - "@babel/types" "^7.6.0" + "@babel/template" "^7.7.0" + "@babel/traverse" "^7.7.0" + "@babel/types" "^7.7.0" "@babel/highlight@^7.0.0": version "7.0.0" @@ -357,16 +331,6 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.2.3.tgz#32f5df65744b70888d17872ec106b02434ba1489" integrity sha512-0LyEcVlfCoFmci8mXx8A5oIkpkOgyo8dRHtxBnK9RRBwxO2+JZPNsqtVEZQ7mJFPxnXF9lfmU24mHOPI0qnlkA== -"@babel/parser@^7.6.0": - version "7.6.2" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.6.2.tgz#205e9c95e16ba3b8b96090677a67c9d6075b70a1" - integrity sha512-mdFqWrSPCmikBoaBYMuBulzTIKuXVPtEISFbRRVNwMWpCms/hmE2kRq0bblUHaNRKrjRlmVbx1sDHmjmRgD2Xg== - -"@babel/parser@^7.6.3", "@babel/parser@^7.6.4": - version "7.6.4" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.6.4.tgz#cb9b36a7482110282d5cb6dd424ec9262b473d81" - integrity sha512-D8RHPW5qd0Vbyo3qb+YjO5nvUVRTXFLQ/FsDxJU2Nqz4uB5EnUN0ZQSEYpvTIbRuttig1XbHWU5oMeQwQSAA+A== - "@babel/parser@^7.7.0", "@babel/parser@^7.7.2": version "7.7.2" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.7.2.tgz#ea8334dc77416bfd9473eb470fd00d8245b3943b" @@ -381,12 +345,12 @@ "@babel/helper-remap-async-to-generator" "^7.7.0" "@babel/plugin-syntax-async-generators" "^7.2.0" -"@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== +"@babel/plugin-proposal-class-properties@^7.7.0": + version "7.7.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.7.0.tgz#ac54e728ecf81d90e8f4d2a9c05a890457107917" + integrity sha512-tufDcFA1Vj+eWvwHN+jvMN6QsV5o+vUlytNKrbMiCeDL0F2j92RURzUsUMWE5EJkLyWxjdUslCsMQa9FWth16A== dependencies: - "@babel/helper-create-class-features-plugin" "^7.5.5" + "@babel/helper-create-class-features-plugin" "^7.7.0" "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-proposal-dynamic-import@^7.7.0": @@ -754,15 +718,15 @@ "@babel/helper-create-regexp-features-plugin" "^7.7.0" "@babel/helper-plugin-utils" "^7.0.0" -"@babel/polyfill@^7.4.4": - version "7.6.0" - resolved "https://registry.yarnpkg.com/@babel/polyfill/-/polyfill-7.6.0.tgz#6d89203f8b6cd323e8d946e47774ea35dc0619cc" - integrity sha512-q5BZJI0n/B10VaQQvln1IlDK3BTBJFbADx7tv+oXDPIDZuTo37H5Adb9jhlXm/fEN4Y7/64qD9mnrJJG7rmaTw== +"@babel/polyfill@^7.6.0": + version "7.7.0" + resolved "https://registry.yarnpkg.com/@babel/polyfill/-/polyfill-7.7.0.tgz#e1066e251e17606ec7908b05617f9b7f8180d8f3" + integrity sha512-/TS23MVvo34dFmf8mwCisCbWGrfhbiWZSwBo6HkADTBhUa2Q/jWltyY/tpofz/b6/RIhqaqQcquptCirqIhOaQ== dependencies: core-js "^2.6.5" regenerator-runtime "^0.13.2" -"@babel/preset-env@7.7.1", "@babel/preset-env@^7.6.2": +"@babel/preset-env@7.7.1", "@babel/preset-env@^7.7.1": version "7.7.1" resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.7.1.tgz#04a2ff53552c5885cf1083e291c8dd5490f744bb" integrity sha512-/93SWhi3PxcVTDpSqC+Dp4YxUu3qZ4m7I76k0w73wYfn7bGVuRIO4QUz95aJksbS+AD1/mT1Ie7rbkT0wSplaA== @@ -819,7 +783,7 @@ js-levenshtein "^1.1.3" semver "^5.5.0" -"@babel/preset-react@7.7.0", "@babel/preset-react@^7.0.0": +"@babel/preset-react@7.7.0", "@babel/preset-react@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.7.0.tgz#8ab0c4787d98cf1f5f22dabf115552bf9e4e406c" integrity sha512-IXXgSUYBPHUGhUkH+89TR6faMcBtuMW0h5OHbMuVbL3/5wK2g6a2M2BBpkLa+Kw0sAHiZ9dNVgqJMDP/O4GRBA== @@ -830,16 +794,16 @@ "@babel/plugin-transform-react-jsx-self" "^7.0.0" "@babel/plugin-transform-react-jsx-source" "^7.0.0" -"@babel/register@^7.6.2": - version "7.6.2" - resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.6.2.tgz#25765a922202cb06f8bdac5a3b1e70cd6bf3dd45" - integrity sha512-xgZk2LRZvt6i2SAUWxc7ellk4+OYRgS3Zpsnr13nMS1Qo25w21Uu8o6vTOAqNaxiqrnv30KTYzh9YWY2k21CeQ== +"@babel/register@^7.7.0": + version "7.7.0" + resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.7.0.tgz#4e23ecf840296ef79c605baaa5c89e1a2426314b" + integrity sha512-HV3GJzTvSoyOMWGYn2TAh6uL6g+gqKTgEZ99Q3+X9UURT1VPT/WcU46R61XftIc5rXytcOHZ4Z0doDlsjPomIg== dependencies: find-cache-dir "^2.0.0" lodash "^4.17.13" - mkdirp "^0.5.1" + make-dir "^2.1.0" pirates "^4.0.0" - source-map-support "^0.5.9" + source-map-support "^0.5.16" "@babel/template@^7.1.0", "@babel/template@^7.2.2": version "7.2.2" @@ -850,15 +814,6 @@ "@babel/parser" "^7.2.2" "@babel/types" "^7.2.2" -"@babel/template@^7.6.0": - version "7.6.0" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.6.0.tgz#7f0159c7f5012230dad64cca42ec9bdb5c9536e6" - integrity sha512-5AEH2EXD8euCk446b7edmgFdub/qfH1SN6Nii3+fyXP807QRx9Q73A2N5hNwRRslC2H9sNzaFhsPubkS4L8oNQ== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/parser" "^7.6.0" - "@babel/types" "^7.6.0" - "@babel/template@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.7.0.tgz#4fadc1b8e734d97f56de39c77de76f2562e597d0" @@ -868,22 +823,7 @@ "@babel/parser" "^7.7.0" "@babel/types" "^7.7.0" -"@babel/traverse@^7.1.0", "@babel/traverse@^7.4.4", "@babel/traverse@^7.5.5", "@babel/traverse@^7.6.2", "@babel/traverse@^7.6.3": - version "7.6.3" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.6.3.tgz#66d7dba146b086703c0fb10dd588b7364cec47f9" - integrity sha512-unn7P4LGsijIxaAJo/wpoU11zN+2IaClkQAxcJWBNCMS6cmVh802IyLHNkAjQ0iYnRS3nnxk5O3fuXW28IMxTw== - dependencies: - "@babel/code-frame" "^7.5.5" - "@babel/generator" "^7.6.3" - "@babel/helper-function-name" "^7.1.0" - "@babel/helper-split-export-declaration" "^7.4.4" - "@babel/parser" "^7.6.3" - "@babel/types" "^7.6.3" - debug "^4.1.0" - globals "^11.1.0" - lodash "^4.17.13" - -"@babel/traverse@^7.7.0": +"@babel/traverse@^7.1.0", "@babel/traverse@^7.4.4", "@babel/traverse@^7.5.5", "@babel/traverse@^7.7.0", "@babel/traverse@^7.7.2": version "7.7.2" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.7.2.tgz#ef0a65e07a2f3c550967366b3d9b62a2dcbeae09" integrity sha512-TM01cXib2+rgIZrGJOLaHV/iZUAxf4A0dt5auY6KNZ+cm6aschuJGqKJM3ROTt3raPUdIDk9siAufIFEleRwtw== @@ -898,7 +838,7 @@ globals "^11.1.0" lodash "^4.17.13" -"@babel/types@^7.0.0", "@babel/types@^7.2.2", "@babel/types@^7.4.4", "@babel/types@^7.5.5", "@babel/types@^7.6.0", "@babel/types@^7.6.1", "@babel/types@^7.6.3", "@babel/types@^7.7.0", "@babel/types@^7.7.1", "@babel/types@^7.7.2": +"@babel/types@^7.0.0", "@babel/types@^7.2.2", "@babel/types@^7.4.4", "@babel/types@^7.5.5", "@babel/types@^7.7.0", "@babel/types@^7.7.1", "@babel/types@^7.7.2": version "7.7.2" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.7.2.tgz#550b82e5571dcd174af576e23f0adba7ffc683f7" integrity sha512-YTf6PXoh3+eZgRCBzzP25Bugd2ngmpQVrk7kXX0i5N9BO7TFBtIgZYs7WtxtOGs8e6A4ZI7ECkbBCEHeXocvOA== @@ -936,6 +876,11 @@ resolved "https://registry.yarnpkg.com/@types/cheerio/-/cheerio-0.22.10.tgz#780d552467824be4a241b29510a7873a7432c4a6" integrity sha512-fOM/Jhv51iyugY7KOBZz2ThfT1gwvsGCfWxpLpZDgkGjpEO4Le9cld07OdskikLjDUQJ43dzDaVRSFwQlpdqVg== +"@types/color-name@^1.1.1": + version "1.1.1" + resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0" + integrity sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ== + "@types/q@^1.5.1": version "1.5.2" resolved "https://registry.yarnpkg.com/@types/q/-/q-1.5.2.tgz#690a1475b84f2a884fd07cd797c00f5f31356ea8" @@ -1183,6 +1128,14 @@ ansi-styles@^3.2.0, ansi-styles@^3.2.1: dependencies: color-convert "^1.9.0" +ansi-styles@^4.1.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.2.0.tgz#5681f0dcf7ae5880a7841d8831c4724ed9cc0172" + integrity sha512-7kFQgnEaMdRtwf6uSfUnVr9gSGC7faurn+J/Mv90/W+iTtN0405/nLdopfMWwchyxhbGYl6TC4Sccn9TUkGAgg== + dependencies: + "@types/color-name" "^1.1.1" + color-convert "^2.0.1" + ansi-wrap@0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/ansi-wrap/-/ansi-wrap-0.1.0.tgz#a82250ddb0015e9a27ca82e82ea603bbfa45efaf" @@ -1195,14 +1148,6 @@ anymatch@^2.0.0: micromatch "^3.1.4" normalize-path "^2.1.1" -anymatch@~3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.1.tgz#c55ecf02185e2469259399310c173ce31233b142" - integrity sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg== - dependencies: - normalize-path "^3.0.0" - picomatch "^2.0.4" - aproba@^1.0.3, aproba@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" @@ -1315,9 +1260,12 @@ async-each@^1.0.1: resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.2.tgz#8b8a7ca2a658f927e9f307d6d1a42f4199f0f735" integrity sha512-6xrbvN0MOBKSJDdonmSSz2OwFSgxRaVtBDes26mj9KIGtDo+g9xosFRSC+i1gQh2oAN/tQ62AI/pGZGQjVOiRg== -async@^1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" +async@^2.6.2: + 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.14" asynckit@^0.4.0: version "0.4.0" @@ -1328,6 +1276,13 @@ atob@^2.1.1: resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== +autolinker@^3.11.0: + version "3.11.1" + resolved "https://registry.yarnpkg.com/autolinker/-/autolinker-3.11.1.tgz#aa4f910371df091b0d714d8d6e700d53f357ce95" + integrity sha512-6sAmetStorjXvwmV8MBxI5DGICHKD1B5EjdkIrq34X6YBDN6jj54EUHnoHgNqmNCclcf8c409zuVMNy449u80g== + dependencies: + tslib "^1.9.3" + autolinker@~0.28.0: version "0.28.1" resolved "https://registry.yarnpkg.com/autolinker/-/autolinker-0.28.1.tgz#0652b491881879f0775dace0cdca3233942a4e47" @@ -1335,18 +1290,18 @@ autolinker@~0.28.0: dependencies: gulp-header "^1.7.1" -autoprefixer@^9.6.1: - version "9.6.1" - resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.6.1.tgz#51967a02d2d2300bb01866c1611ec8348d355a47" - integrity sha512-aVo5WxR3VyvyJxcJC3h4FKfwCQvQWb1tSI5VHNibddCVWrcD1NvlxEweg3TSgiPztMnWfjpy2FURKA2kvDE+Tw== +autoprefixer@^9.7.0: + version "9.7.2" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.7.2.tgz#26cf729fbb709323b40171a874304884dcceffed" + integrity sha512-LCAfcdej1182uVvPOZnytbq61AhnOZ/4JelDaJGDeNwewyU1AMaNthcHsyz1NRjTmd2FkurMckLWfkHg3Z//KA== dependencies: - browserslist "^4.6.3" - caniuse-lite "^1.0.30000980" + browserslist "^4.7.3" + caniuse-lite "^1.0.30001010" chalk "^2.4.2" normalize-range "^0.1.2" num2fraction "^1.2.2" - postcss "^7.0.17" - postcss-value-parser "^4.0.0" + postcss "^7.0.23" + postcss-value-parser "^4.0.2" aws-sign2@~0.7.0: version "0.7.0" @@ -1472,11 +1427,6 @@ binary-extensions@^1.0.0: resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.13.0.tgz#9523e001306a32444b907423f1de2164222f6ab1" integrity sha512-EgmjVLMn22z7eGGv3kcnHwSnJXmFHjISTY9E/S5lIcTD3Oxw05QTcBLNkJFzcb3cNueUdF/IN4U+d78V0zO8Hw== -binary-extensions@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.0.0.tgz#23c0df14f6a88077f5f986c0d167ec03c3d5537c" - integrity sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow== - bl@^1.0.0: version "1.2.2" resolved "https://registry.yarnpkg.com/bl/-/bl-1.2.2.tgz#a160911717103c07410cef63ef51b397c025af9c" @@ -1546,13 +1496,6 @@ braces@^2.3.1, braces@^2.3.2: split-string "^3.0.2" to-regex "^3.0.1" -braces@~3.0.2: - 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" @@ -1617,7 +1560,7 @@ browserify-zlib@^0.2.0: dependencies: pako "~1.0.5" -browserslist@4.7.0, browserslist@^4.0.0, browserslist@^4.6.0, browserslist@^4.6.3, browserslist@^4.6.6: +browserslist@4.7.0, browserslist@^4.0.0, browserslist@^4.6.0, browserslist@^4.6.6: version "4.7.0" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.7.0.tgz#9ee89225ffc07db03409f2fee524dc8227458a17" integrity sha512-9rGNDtnj+HaahxiVV38Gn8n8Lr8REKsel68v1sPFfIGEK6uSXTY3h9acgiT1dZVtOOUtifo/Dn8daDQ5dUgVsA== @@ -1626,6 +1569,15 @@ browserslist@4.7.0, browserslist@^4.0.0, browserslist@^4.6.0, browserslist@^4.6. electron-to-chromium "^1.3.247" node-releases "^1.1.29" +browserslist@^4.7.3: + version "4.7.3" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.7.3.tgz#02341f162b6bcc1e1028e30624815d4924442dc3" + integrity sha512-jWvmhqYpx+9EZm/FxcZSbUZyDEvDTLDi3nSAKbzEkyWvtI0mNSmUosey+5awDW1RUlrgXbQb5A6qY1xQH9U6MQ== + dependencies: + caniuse-lite "^1.0.30001010" + electron-to-chromium "^1.3.306" + node-releases "^1.1.40" + buffer-alloc-unsafe@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz#bd7dc26ae2972d0eda253be061dba992349c19f0" @@ -1788,11 +1740,16 @@ caniuse-api@^3.0.0: lodash.memoize "^4.1.2" lodash.uniq "^4.5.0" -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000980, caniuse-lite@^1.0.30000989: +caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000989: version "1.0.30000998" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000998.tgz#7227a8046841e7d01e156ae7227a504d065f6744" integrity sha512-8Tj5sPZR9kMHeDD9SZXIVr5m9ofufLLCG2Y4QwQrH18GIwG+kCc+zYdlR036ZRkuKjVVetyxeAgGA1xF7XdmzQ== +caniuse-lite@^1.0.30001010: + version "1.0.30001011" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001011.tgz#0d6c4549c78c4a800bb043a83ca0cbe0aee6c6e1" + integrity sha512-h+Eqyn/YA6o6ZTqpS86PyRmNWOs1r54EBDcd2NTwwfsXQ8re1B38SnB+p2RKF8OUsyEIjeDU8XGec1RGO/wYCg== + caseless@~0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" @@ -1826,6 +1783,14 @@ chalk@^1.0.0, chalk@^1.1.3: strip-ansi "^3.0.0" supports-color "^2.0.0" +chalk@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-3.0.0.tgz#3f73c2bf526591f574cc492c51e2456349f844e4" + integrity sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + chardet@^0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" @@ -1872,21 +1837,6 @@ chokidar@^2.0.2, chokidar@^2.0.4: optionalDependencies: fsevents "^1.2.7" -chokidar@^3.0.2: - version "3.2.1" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.2.1.tgz#4634772a1924512d990d4505957bf3a510611387" - integrity sha512-/j5PPkb5Feyps9e+jo07jUZGvkB5Aj953NrI4s8xSVScrAo/RHeILrtdb4uzR7N6aaFFxxJ+gt8mA8HfNpw76w== - dependencies: - anymatch "~3.1.1" - braces "~3.0.2" - glob-parent "~5.1.0" - is-binary-path "~2.1.0" - is-glob "~4.0.1" - normalize-path "~3.0.0" - readdirp "~3.1.3" - optionalDependencies: - fsevents "~2.1.0" - chownr@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.1.tgz#54726b8b8fff4df053c42187e801fb4412df1494" @@ -2007,6 +1957,13 @@ color-convert@^1.9.0, color-convert@^1.9.1: dependencies: color-name "1.1.1" +color-convert@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== + dependencies: + color-name "~1.1.4" + color-name@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.1.tgz#4b1415304cf50028ea81643643bd82ea05803689" @@ -2015,6 +1972,11 @@ color-name@^1.0.0: version "1.1.3" resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" +color-name@~1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== + color-string@^1.5.2: version "1.5.2" resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.5.2.tgz#26e45814bc3c9a7cbd6751648a41434514a773a9" @@ -2049,6 +2011,11 @@ commander@^2.15.1, commander@^2.20.0: resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.1.tgz#3863ce3ca92d0831dcf2a102f5fb4b5926afd0f9" integrity sha512-cCuLsMhJeWQ/ZpsFTbE765kvVfoeSddc4nU3up4fV+fDBcfUXnbITJ+JzhkdjzOqhURjZgujxaioam4RM9yGUg== +commander@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/commander/-/commander-4.0.1.tgz#b67622721785993182e807f4883633e6401ba53c" + integrity sha512-IPF4ouhCP+qdlcmCedhxX4xiGBPyigb8v5NeUp+0LyhwLgxMqyp3S0vl7TAPfS/hiP7FC3caI/PB9lTmP8r1NA== + commander@~2.8.1: version "2.8.1" resolved "https://registry.yarnpkg.com/commander/-/commander-2.8.1.tgz#06be367febfda0c330aa1e2a072d3dc9762425d4" @@ -2143,10 +2110,10 @@ continuable-cache@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/continuable-cache/-/continuable-cache-0.3.1.tgz#bd727a7faed77e71ff3985ac93351a912733ad0f" -convert-source-map@^1.1.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.6.0.tgz#51b537a8c43e0f04dec1993bffcdd504e758ac20" - integrity sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A== +convert-source-map@^1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.7.0.tgz#17a2cb882d7f77d3490585e2ce6c524424a3a442" + integrity sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA== dependencies: safe-buffer "~5.1.1" @@ -2471,7 +2438,7 @@ debug@^3.1.0: dependencies: ms "2.0.0" -debug@^3.2.5: +debug@^3.1.1, debug@^3.2.5: version "3.2.6" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== @@ -2657,27 +2624,26 @@ dir-glob@2.0.0: arrify "^1.0.1" path-type "^3.0.0" -docusaurus@1.14.0: - version "1.14.0" - resolved "https://registry.yarnpkg.com/docusaurus/-/docusaurus-1.14.0.tgz#081b931098fcb0a9e837fe3e4851815c607cd632" - integrity sha512-wdjdAQAk6Ndypl0F3BIg/EUtYgSCxN9g90KbZ+BkObs0Haz62ehCGPeCNqv97m88YVaYbFzk3geQk1jL77gz5g== +docusaurus@1.14.1: + version "1.14.1" + resolved "https://registry.yarnpkg.com/docusaurus/-/docusaurus-1.14.1.tgz#970d3905bfff46f9772b1587bd012a9124bd1dde" + integrity sha512-+3tZ8MkJucaKuBmlgCCVRqundk1RJP3Ym71oiuLf7NLYIIQbK5gOqycmnOE0aD+vsL0/XsxH67yNJkd+tCTqVg== dependencies: - "@babel/core" "^7.6.2" - "@babel/plugin-proposal-class-properties" "^7.5.5" + "@babel/core" "^7.7.2" + "@babel/plugin-proposal-class-properties" "^7.7.0" "@babel/plugin-proposal-object-rest-spread" "^7.6.2" - "@babel/polyfill" "^7.4.4" - "@babel/preset-env" "^7.6.2" - "@babel/preset-react" "^7.0.0" - "@babel/register" "^7.6.2" - "@babel/traverse" "^7.6.2" - "@babel/types" "^7.6.1" - autoprefixer "^9.6.1" + "@babel/polyfill" "^7.6.0" + "@babel/preset-env" "^7.7.1" + "@babel/preset-react" "^7.7.0" + "@babel/register" "^7.7.0" + "@babel/traverse" "^7.7.2" + "@babel/types" "^7.7.2" + autoprefixer "^9.7.0" babylon "^6.18.0" - chalk "^2.4.2" - chokidar "^3.0.2" + chalk "^3.0.0" classnames "^2.2.6" color "^2.0.1" - commander "^2.20.0" + commander "^4.0.1" cross-spawn "^6.0.5" crowdin-cli "^0.3.0" cssnano "^4.1.10" @@ -2686,8 +2652,9 @@ docusaurus@1.14.0: feed "^1.1.0" fs-extra "^8.1.0" gaze "^1.1.3" - glob "^7.1.3" - highlight.js "^9.15.8" + github-slugger "^1.2.1" + glob "^7.1.5" + highlight.js "^9.16.1" imagemin "^6.0.0" imagemin-gifsicle "^6.0.1" imagemin-jpegtran "^6.0.0" @@ -2696,21 +2663,20 @@ docusaurus@1.14.0: lodash "^4.17.15" markdown-toc "^1.2.0" mkdirp "^0.5.1" - portfinder "^1.0.21" - postcss "^7.0.17" + portfinder "^1.0.25" + postcss "^7.0.21" prismjs "^1.17.1" react "^16.8.4" - react-dev-utils "^9.0.1" + react-dev-utils "^9.1.0" react-dom "^16.8.4" - remarkable "^1.7.4" + remarkable "^2.0.0" request "^2.88.0" shelljs "^0.8.3" sitemap "^3.2.2" - striptags "^3.1.1" tcp-port-used "^1.0.1" tiny-lr "^1.1.1" tree-node-cli "^1.2.5" - truncate-html "^1.0.2" + truncate-html "^1.0.3" dom-serializer@0, dom-serializer@~0.1.0: version "0.1.0" @@ -2834,6 +2800,11 @@ electron-to-chromium@^1.3.247: resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.273.tgz#94872d6823219f2812f2e35a2ce2a7d03c1eaa3f" integrity sha512-0kUppiHQvHEENHh+nTtvTt4eXMwcPyWmMaj73GPrSEm3ldKhmmHuOH6IjrmuW6YmyS/fpXcLvMQLNVpqRhpNWw== +electron-to-chromium@^1.3.306: + version "1.3.308" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.308.tgz#73c2cd8f865abc1c31623725e4f89225e9e209e6" + integrity sha512-IwU/0LTzTa03Q0YDzg11RlK8e/V92tmPqFOaTEsdv7JJXtC/+v/H4bT2FmsA/xaFQWJvi0ZVcRppw8o0AD9XJQ== + elliptic@^6.0.0: version "6.4.1" resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.1.tgz#c2d0b7776911b86722c632c3c06c60f2f819939a" @@ -2847,6 +2818,11 @@ elliptic@^6.0.0: minimalistic-assert "^1.0.0" minimalistic-crypto-utils "^1.0.0" +"emoji-regex@>=6.0.0 <=6.1.1": + version "6.1.1" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-6.1.1.tgz#c6cd0ec1b0642e2a3c67a1137efc5e796da4f88e" + integrity sha1-xs0OwbBkLio8Z6ETfvxeeW2k+I4= + emoji-regex@^7.0.1: version "7.0.3" resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" @@ -3318,13 +3294,6 @@ fill-range@^4.0.0: repeat-string "^1.6.1" to-regex-range "^2.1.0" -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: - to-regex-range "^5.0.1" - finalhandler@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.2.tgz#b7e7d000ffd11938d0fdb053506f6ebabe9f587d" @@ -3493,11 +3462,6 @@ fsevents@^1.2.7: nan "^2.9.2" node-pre-gyp "^0.10.0" -fsevents@~2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.0.tgz#ce1a5f9ac71c6d75278b0c5bd236d7dfece4cbaa" - integrity sha512-+iXhW3LuDQsno8dOIrCIT/CBjeBWuP7PXe8w9shnj9Lebny/Gx1ZjVBYwexLz36Ri2jKuXMNpV6CYNh8lHHgrQ== - function-bind@^1.0.2, function-bind@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" @@ -3583,6 +3547,13 @@ gifsicle@^4.0.0: execa "^1.0.0" logalot "^2.0.0" +github-slugger@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/github-slugger/-/github-slugger-1.2.1.tgz#47e904e70bf2dccd0014748142d31126cfd49508" + integrity sha512-SsZUjg/P03KPzQBt7OxJPasGw6NRO5uOgiZ5RGXVud5iSIZ0eNZeNp5rTwCxtavrRUa/A77j8mePVc5lEvk0KQ== + dependencies: + emoji-regex ">=6.0.0 <=6.1.1" + glob-parent@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" @@ -3590,22 +3561,15 @@ glob-parent@^3.1.0: is-glob "^3.1.0" path-dirname "^1.0.0" -glob-parent@~5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.0.tgz#5f4c1d1e748d30cd73ad2944b3577a81b081e8c2" - integrity sha512-qjtRgnIVmOfnKUE3NJAQEdk+lKrxfw8t5ke7SXtfMTHcjsBfOfWXCQfdb30zfDoZQ2IRSIiidmjtbHZPZ++Ihw== - dependencies: - is-glob "^4.0.1" - 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@^7.0.0, glob@^7.0.5, 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== +glob@^7.0.0, glob@^7.0.5, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.5, glob@~7.1.1: + version "7.1.6" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" + integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" @@ -3853,6 +3817,11 @@ has-flag@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" +has-flag@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== + has-symbol-support-x@^1.4.1: version "1.4.2" resolved "https://registry.yarnpkg.com/has-symbol-support-x/-/has-symbol-support-x-1.4.2.tgz#1409f98bc00247da45da67cee0a36f282ff26455" @@ -3938,10 +3907,10 @@ hex-color-regex@^1.1.0: resolved "https://registry.yarnpkg.com/hex-color-regex/-/hex-color-regex-1.1.0.tgz#4c06fccb4602fe2602b3c93df82d7e7dbf1a8a8e" integrity sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ== -highlight.js@^9.15.8: - version "9.15.10" - resolved "https://registry.yarnpkg.com/highlight.js/-/highlight.js-9.15.10.tgz#7b18ed75c90348c045eef9ed08ca1319a2219ad2" - integrity sha512-RoV7OkQm0T3os3Dd2VHLNMoaoDVx77Wygln3n9l5YV172XonWG6rgQD3XnF/BuFFZw9A0TJgmMSO8FEWQgvcXw== +highlight.js@^9.16.1: + version "9.16.2" + resolved "https://registry.yarnpkg.com/highlight.js/-/highlight.js-9.16.2.tgz#68368d039ffe1c6211bcc07e483daf95de3e403e" + integrity sha512-feMUrVLZvjy0oC7FVJQcSQRqbBq9kwqnYE4+Kj9ZjbHh3g+BisiPgF49NyQbVLNdrL/qqZr3Ca9yOKwgn2i/tw== hmac-drbg@^1.0.0: version "1.0.1" @@ -4262,13 +4231,6 @@ is-binary-path@^1.0.0: dependencies: binary-extensions "^1.0.0" -is-binary-path@~2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" - integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== - dependencies: - binary-extensions "^2.0.0" - is-buffer@^1.1.5: version "1.1.6" resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" @@ -4392,13 +4354,6 @@ is-glob@^4.0.0: dependencies: is-extglob "^2.1.1" -is-glob@^4.0.1, is-glob@~4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" - integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== - dependencies: - is-extglob "^2.1.1" - is-jpg@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-jpg/-/is-jpg-2.0.0.tgz#2e1997fa6e9166eaac0242daae443403e4ef1d97" @@ -4421,11 +4376,6 @@ 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" @@ -4854,7 +4804,7 @@ lodash.uniq@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" -lodash@^4.17.10, lodash@^4.17.12, lodash@^4.17.13, lodash@^4.17.15, lodash@^4.17.4, lodash@~4.17.10: +lodash@^4.17.10, lodash@^4.17.12, lodash@^4.17.13, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.4, 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== @@ -4932,7 +4882,7 @@ make-dir@^1.2.0: dependencies: pify "^3.0.0" -make-dir@^2.0.0: +make-dir@^2.0.0, make-dir@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA== @@ -5191,7 +5141,7 @@ mixin-deep@^1.1.3, mixin-deep@^1.2.0: for-in "^1.0.2" is-extendable "^1.0.1" -mkdirp@0.5.x, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.1: +mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" dependencies: @@ -5329,6 +5279,13 @@ node-releases@^1.1.29: dependencies: semver "^5.3.0" +node-releases@^1.1.40: + version "1.1.40" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.40.tgz#a94facfa8e2d612302601ca1361741d529c4515a" + integrity sha512-r4LPcC5b/bS8BdtWH1fbeK88ib/wg9aqmg6/s3ngNLn2Ewkn/8J6Iw3P9RTlfIAdSdvYvQl2thCY5Y+qTAQ2iQ== + dependencies: + semver "^6.3.0" + nopt@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" @@ -5352,7 +5309,7 @@ normalize-path@^2.1.1: dependencies: remove-trailing-separator "^1.0.1" -normalize-path@^3.0.0, normalize-path@~3.0.0: +normalize-path@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== @@ -5804,11 +5761,6 @@ performance-now@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" -picomatch@^2.0.4: - 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, pify@^2.2.0, pify@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" @@ -5853,14 +5805,14 @@ pkg-up@2.0.0: dependencies: find-up "^2.1.0" -portfinder@^1.0.21: - version "1.0.24" - resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.24.tgz#11efbc6865f12f37624b6531ead1d809ed965cfa" - integrity sha512-ekRl7zD2qxYndYflwiryJwMioBI7LI7rVXg3EnLK3sjkouT5eOuhS3gS255XxBksa30VG8UPZYZCdgfGOfkSUg== +portfinder@^1.0.25: + version "1.0.25" + resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.25.tgz#254fd337ffba869f4b9d37edc298059cb4d35eca" + integrity sha512-6ElJnHBbxVA1XSLgBp7G1FiCkQdlqGzuF7DswL5tcea+E8UpuvPU7beVAjjRwCioTS9ZluNbu+ZyRvgTsmqEBg== dependencies: - async "^1.5.2" - debug "^2.2.0" - mkdirp "0.5.x" + async "^2.6.2" + debug "^3.1.1" + mkdirp "^0.5.1" posix-character-classes@^0.1.0: version "0.1.1" @@ -6138,15 +6090,15 @@ postcss-value-parser@^3.0.0, postcss-value-parser@^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: +postcss-value-parser@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.0.2.tgz#482282c09a42706d1fc9a069b73f44ec08391dc9" integrity sha512-LmeoohTpp/K4UiyQCwuGWlONxXamGzCMtFxLq4W1nZVGIQLYvMCJx3yAF9qyyuFpflABI9yVdtJAqbihOsCsJQ== -postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.17, postcss@^7.0.5: - version "7.0.18" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.18.tgz#4b9cda95ae6c069c67a4d933029eddd4838ac233" - integrity sha512-/7g1QXXgegpF+9GJj4iN7ChGF40sYuGYJ8WZu8DZWnmhQ/G36hfdk3q9LBJmoK+lZ+yzZ5KYpOoxq7LF1BxE8g== +postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.21, postcss@^7.0.23, postcss@^7.0.5: + version "7.0.23" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.23.tgz#9f9759fad661b15964f3cfc3140f66f1e05eadc1" + integrity sha512-hOlMf3ouRIFXD+j2VJecwssTwbvsPGJVMzupptg+85WA+i7MwyrydmQAgY3R+m0Bc0exunhbJmijy8u8+vufuQ== dependencies: chalk "^2.4.2" source-map "^0.6.1" @@ -6361,10 +6313,10 @@ rc@^1.2.7: minimist "^1.2.0" strip-json-comments "~2.0.1" -react-dev-utils@^9.0.1: - version "9.0.4" - resolved "https://registry.yarnpkg.com/react-dev-utils/-/react-dev-utils-9.0.4.tgz#5c71a8e8afdec0232c44d4e049d21baa437a92af" - integrity sha512-VwR+mBUXPLdYk/rOz6s6qpasIFGd7GW0KXd/3bih+/qGcMQvPG19XxtjDMtiAg0zWiFwp1ugCzAjLThbzFjVqw== +react-dev-utils@^9.1.0: + version "9.1.0" + resolved "https://registry.yarnpkg.com/react-dev-utils/-/react-dev-utils-9.1.0.tgz#3ad2bb8848a32319d760d0a84c56c14bdaae5e81" + integrity sha512-X2KYF/lIGyGwP/F/oXgGDF24nxDA2KC4b7AFto+eqzc/t838gpSGiaU8trTqHXOohuLxxc5qi1eDzsl9ucPDpg== dependencies: "@babel/code-frame" "7.5.5" address "1.1.2" @@ -6385,7 +6337,7 @@ react-dev-utils@^9.0.1: loader-utils "1.2.3" open "^6.3.0" pkg-up "2.0.0" - react-error-overlay "^6.0.2" + react-error-overlay "^6.0.3" recursive-readdir "2.2.2" shell-quote "1.7.2" sockjs-client "1.4.0" @@ -6402,10 +6354,10 @@ react-dom@16.12.0, react-dom@^16.2.0, react-dom@^16.8.4: prop-types "^15.6.2" scheduler "^0.18.0" -react-error-overlay@^6.0.2: - version "6.0.2" - resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-6.0.2.tgz#642bd6157c6a4b6e9ca4a816f7ed30b868c47f81" - integrity sha512-DHRuRk3K4Lg9obI6J4Y+nKvtwjasYRU9CFL3ud42x9YJG1HbQjSNublapC/WBJOA726gNUbqbj0U2df9+uzspQ== +react-error-overlay@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-6.0.3.tgz#c378c4b0a21e88b2e159a3e62b2f531fd63bf60d" + integrity sha512-bOUvMWFQVk5oz8Ded9Xb7WVdEi3QGLC8tH7HmYP0Fdp4Bn3qw0tRFmr5TW6mvahzvmrK4a6bqWGfCevBflP+Xw== react-is@^16.8.1: version "16.10.1" @@ -6475,13 +6427,6 @@ readdirp@^2.2.1: micromatch "^3.1.10" readable-stream "^2.0.2" -readdirp@~3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.1.3.tgz#d6e011ed5b9240a92f08651eeb40f7942ceb6cc1" - integrity sha512-ZOsfTGkjO2kqeR5Mzr5RYDbTGYneSkdNKX2fOX2P5jF7vMrd/GNnIAUtDldeHHumHUCQ3V05YfWUdxMPAsRu9Q== - dependencies: - picomatch "^2.0.4" - rechoir@^0.6.2: version "0.6.2" resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384" @@ -6557,7 +6502,7 @@ regjsparser@^0.6.0: dependencies: jsesc "~0.5.0" -remarkable@^1.7.1, remarkable@^1.7.4: +remarkable@^1.7.1: version "1.7.4" resolved "https://registry.yarnpkg.com/remarkable/-/remarkable-1.7.4.tgz#19073cb960398c87a7d6546eaa5e50d2022fcd00" integrity sha512-e6NKUXgX95whv7IgddywbeN/ItCkWbISmc2DiqHJb0wTrqZIexqdco5b8Z3XZoo/48IdNVKM9ZCvTPJ4F5uvhg== @@ -6565,6 +6510,14 @@ remarkable@^1.7.1, remarkable@^1.7.4: argparse "^1.0.10" autolinker "~0.28.0" +remarkable@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/remarkable/-/remarkable-2.0.0.tgz#795f965bede8300362ce51a716edc322d9e7a4ca" + integrity sha512-3gvKFAgL4xmmVRKAMNm6UzDo/rO2gPVkZrWagp6AXEA4JvCcMcRx9aapYbb7AJAmLLvi/u06+EhzqoS7ha9qOg== + dependencies: + argparse "^1.0.10" + autolinker "^3.11.0" + remove-trailing-separator@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" @@ -7027,10 +6980,10 @@ source-map-resolve@^0.5.0: source-map-url "^0.4.0" urix "^0.1.0" -source-map-support@^0.5.9: - version "0.5.9" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.9.tgz#41bc953b2534267ea2d605bccfa7bfa3111ced5f" - integrity sha512-gR6Rw4MvUlYy83vP0vxoVNzM6t8MUXqNuRsuBmBHQDu1Fh6X015FrLdgoDKcNdkwGubozq0P4N0Q37UyFVr1EA== +source-map-support@^0.5.16: + version "0.5.16" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.16.tgz#0ae069e7fe3ba7538c64c98515e35339eac5a042" + integrity sha512-efyLRJDr68D9hBBNIPWFjhpFzURh+KJykQwvMyW5UiZzYwoF6l4YMMDIJJEyFWxWCqfyxLzz6tSfUFR+kXXsVQ== dependencies: buffer-from "^1.0.0" source-map "^0.6.0" @@ -7296,11 +7249,6 @@ strip-outer@^1.0.0: dependencies: escape-string-regexp "^1.0.2" -striptags@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/striptags/-/striptags-3.1.1.tgz#c8c3e7fdd6fb4bb3a32a3b752e5b5e3e38093ebd" - integrity sha1-yMPn/db7S7OjKjt1LltePjgJPr0= - stylehacks@^4.0.0: version "4.0.3" resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-4.0.3.tgz#6718fcaf4d1e07d8a1318690881e8d96726a71d5" @@ -7335,6 +7283,13 @@ supports-color@^5.3.0: dependencies: has-flag "^3.0.0" +supports-color@^7.1.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.1.0.tgz#68e32591df73e25ad1c4b49108a2ec507962bfd1" + integrity sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g== + dependencies: + has-flag "^4.0.0" + svgo@1.3.2, svgo@^1.0.0, svgo@^1.0.5: version "1.3.2" resolved "https://registry.yarnpkg.com/svgo/-/svgo-1.3.2.tgz#b6dc511c063346c9e415b81e43401145b96d4167" @@ -7510,13 +7465,6 @@ 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" @@ -7572,7 +7520,7 @@ trim-repeated@^1.0.0: dependencies: escape-string-regexp "^1.0.2" -truncate-html@^1.0.2: +truncate-html@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/truncate-html/-/truncate-html-1.0.3.tgz#0166dfc7890626130c2e4174c6b73d4d63993e5f" integrity sha512-1o1prdRv+iehXcGwn29YgXU17DotHkr+OK3ijVEG7FGMwHNG9RyobXwimw6djDvbIc24rhmz3tjNNvNESjkNkQ== @@ -7585,6 +7533,11 @@ tslib@^1.9.0: resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.3.tgz#d7e4dd79245d85428c4d7e4822a79917954ca286" integrity sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ== +tslib@^1.9.3: + version "1.10.0" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.10.0.tgz#c3c19f95973fb0a62973fb09d90d961ee43e5c8a" + integrity sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ== + tty-browserify@0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" From 13d37dac20d0e7a6608a349309accd402d4403b0 Mon Sep 17 00:00:00 2001 From: Georgii Dolzhykov Date: Thu, 21 Nov 2019 12:27:23 +0200 Subject: [PATCH 28/88] TypeScript: print JSDoc-only types (#7020) * TypeScript: print JSDoc-only types * add changelog --- changelog_unreleased/typescript/pr-7020.md | 15 +++++++++ cspell.json | 1 + src/language-js/needs-parens.js | 5 ++- src/language-js/printer-estree.js | 18 +++++++++++ .../__snapshots__/jsfmt.spec.js.snap | 32 +++++++++++++++++++ .../jsdoc_only_types.ts | 10 ++++++ 6 files changed, 80 insertions(+), 1 deletion(-) create mode 100644 changelog_unreleased/typescript/pr-7020.md create mode 100644 tests/typescript_error_recovery/jsdoc_only_types.ts diff --git a/changelog_unreleased/typescript/pr-7020.md b/changelog_unreleased/typescript/pr-7020.md new file mode 100644 index 000000000..76e2fabba --- /dev/null +++ b/changelog_unreleased/typescript/pr-7020.md @@ -0,0 +1,15 @@ +#### Print JSDoc-only types as is instead of throwing strange errors ([#7020](https://github.com/prettier/prettier/pull/7020) by [@thorn0](https://github.com/thorn0)) + + +```jsx +// Input +function fromFlow(arg: ?Maybe) {} + +// Prettier stable +Error: unknown type: "TSJSDocNullableType" + at printPathNoParens (https://prettier.io/lib/standalone.js:26012:13) + at Object.genericPrint$3 [as print] (https://prettier.io/lib/standalone.js:23541:28) + +// Prettier master +function fromFlow(arg: ?Maybe) {} +``` diff --git a/cspell.json b/cspell.json index 2dcef8169..44bb5ded4 100644 --- a/cspell.json +++ b/cspell.json @@ -348,6 +348,7 @@ "Transloadit", "TSAs", "tsep", + "TSJS", "Typeahead", "typecasted", "typeof", diff --git a/src/language-js/needs-parens.js b/src/language-js/needs-parens.js index e6b5aa0e2..9ff9bba87 100644 --- a/src/language-js/needs-parens.js +++ b/src/language-js/needs-parens.js @@ -450,6 +450,7 @@ function needsParens(path, options) { return false; } + case "TSJSDocFunctionType": case "TSConditionalType": if (parent.type === "TSConditionalType" && node === parent.extendsType) { return true; @@ -477,7 +478,9 @@ function needsParens(path, options) { parent.type === "TSOptionalType" || parent.type === "TSRestType" || (parent.type === "TSIndexedAccessType" && node === parent.objectType) || - parent.type === "TSTypeOperator" + parent.type === "TSTypeOperator" || + (parent.type === "TSTypeAnnotation" && + /^TSJSDoc/.test(path.getParentNode(1).type)) ); case "ArrayTypeAnnotation": diff --git a/src/language-js/printer-estree.js b/src/language-js/printer-estree.js index df2dea511..baeb979a4 100644 --- a/src/language-js/printer-estree.js +++ b/src/language-js/printer-estree.js @@ -3637,6 +3637,24 @@ function printPathNoParens(path, options, print, args) { case "ArgumentPlaceholder": return "?"; + + // These are not valid TypeScript. Printing them just for the sake of error recovery. + case "TSJSDocAllType": + return "*"; + case "TSJSDocUnknownType": + return "?"; + case "TSJSDocNullableType": + return concat(["?", path.call(print, "typeAnnotation")]); + case "TSJSDocNonNullableType": + return concat(["!", path.call(print, "typeAnnotation")]); + case "TSJSDocFunctionType": + return concat([ + "function(", + // The parameters could be here, but typescript-estree doesn't convert them anyway (throws an error). + "): ", + path.call(print, "typeAnnotation") + ]); + default: /* istanbul ignore next */ throw new Error("unknown type: " + JSON.stringify(n.type)); diff --git a/tests/typescript_error_recovery/__snapshots__/jsfmt.spec.js.snap b/tests/typescript_error_recovery/__snapshots__/jsfmt.spec.js.snap index e37181540..09f0493bb 100644 --- a/tests/typescript_error_recovery/__snapshots__/jsfmt.spec.js.snap +++ b/tests/typescript_error_recovery/__snapshots__/jsfmt.spec.js.snap @@ -49,3 +49,35 @@ class f7<> { ================================================================================ `; + +exports[`jsdoc_only_types.ts 1`] = ` +====================================options===================================== +parsers: ["typescript"] +printWidth: 80 + | printWidth +=====================================input====================================== +let a: *; +function b(x: ?) {} +let c: ?string; +let d: string?; +let e: ?(string | number); +let f: !string; +let g: string!; +let h: !(string | number); +let i: function(): string; +let j: (function(): string) | number; + +=====================================output===================================== +let a: *; +function b(x: ?) {} +let c: ?string; +let d: ?string; +let e: ?(string | number); +let f: !string; +let g: !string; +let h: !(string | number); +let i: function(): string; +let j: (function(): string) | number; + +================================================================================ +`; diff --git a/tests/typescript_error_recovery/jsdoc_only_types.ts b/tests/typescript_error_recovery/jsdoc_only_types.ts new file mode 100644 index 000000000..991c4d3f2 --- /dev/null +++ b/tests/typescript_error_recovery/jsdoc_only_types.ts @@ -0,0 +1,10 @@ +let a: *; +function b(x: ?) {} +let c: ?string; +let d: string?; +let e: ?(string | number); +let f: !string; +let g: string!; +let h: !(string | number); +let i: function(): string; +let j: (function(): string) | number; From 35cc90192d3117a373d0c386bb639c26d12cdfbd Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Thu, 21 Nov 2019 18:01:00 +0100 Subject: [PATCH 29/88] Bump rollup from 1.27.2 to 1.27.3 (#7025) Bumps [rollup](https://github.com/rollup/rollup) from 1.27.2 to 1.27.3. - [Release notes](https://github.com/rollup/rollup/releases) - [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md) - [Commits](https://github.com/rollup/rollup/compare/v1.27.2...v1.27.3) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 73164b18d..e55beb112 100644 --- a/package.json +++ b/package.json @@ -99,7 +99,7 @@ "mkdirp": "0.5.1", "prettier": "1.19.1", "rimraf": "3.0.0", - "rollup": "1.27.2", + "rollup": "1.27.3", "rollup-plugin-babel": "4.3.3", "rollup-plugin-commonjs": "10.1.0", "rollup-plugin-node-globals": "1.4.0", diff --git a/yarn.lock b/yarn.lock index 718f780f9..a967d0b53 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5939,10 +5939,10 @@ rollup-pluginutils@^2.3.1, rollup-pluginutils@^2.5.0, rollup-pluginutils@^2.6.0, dependencies: estree-walker "^0.6.1" -rollup@1.27.2: - version "1.27.2" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-1.27.2.tgz#caf54a93df228bf7864f13dddcdb363d3e958509" - integrity sha512-sD3iyd0zlvgK1S3MmICi6F/Y+R/QWY5XxzsTGN4pAd+nCasDUizmAhgq2hdh1t2eLux974NHU2TW41fhuGPv+Q== +rollup@1.27.3: + version "1.27.3" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-1.27.3.tgz#0e427d9bee9e30e6017e89b942d88276ce26f9e2" + integrity sha512-79AEh4m5NPCz97GTuIoXpSFIMPyk2AiqVQp040baSRPXk/I4YMGt5/CR9GX5oEYEkxwBZoWLheaS1/w/FidfJw== dependencies: "@types/estree" "*" "@types/node" "*" From bf2989718b83ff81f994b5a663833a1d239fb76c Mon Sep 17 00:00:00 2001 From: Georgii Dolzhykov Date: Fri, 22 Nov 2019 00:14:34 +0200 Subject: [PATCH 30/88] fix unstable formatting of logical expressions (#7026) --- changelog_unreleased/javascript/pr-7026.md | 26 +++++++++++ src/language-js/clean.js | 33 -------------- src/language-js/loc.js | 19 +++++++- src/language-js/postprocess.js | 44 +++++++++++++++++++ .../__snapshots__/jsfmt.spec.js.snap | 21 +++++++++ tests/logical_expressions/issue-7024.js | 4 ++ 6 files changed, 113 insertions(+), 34 deletions(-) create mode 100644 changelog_unreleased/javascript/pr-7026.md create mode 100644 tests/logical_expressions/issue-7024.js diff --git a/changelog_unreleased/javascript/pr-7026.md b/changelog_unreleased/javascript/pr-7026.md new file mode 100644 index 000000000..877722019 --- /dev/null +++ b/changelog_unreleased/javascript/pr-7026.md @@ -0,0 +1,26 @@ +#### Fix unstable formatting of logical expressions ([#7026](https://github.com/prettier/prettier/pull/7026) by [@thorn0](https://github.com/thorn0)) + + +```jsx +// Input +const averredBathersBoxroomBuggyNurl = + bifornCringerMoshedPerplexSawder === 1 || + (askTrovenaBeenaDependsRowans === 2 || glimseGlyphsHazardNoopsTieTie === 3); + +// Prettier stable (first output) +const averredBathersBoxroomBuggyNurl = + bifornCringerMoshedPerplexSawder === 1 || + askTrovenaBeenaDependsRowans === 2 || glimseGlyphsHazardNoopsTieTie === 3; + +// Prettier stable (second output) +const averredBathersBoxroomBuggyNurl = + bifornCringerMoshedPerplexSawder === 1 || + askTrovenaBeenaDependsRowans === 2 || + glimseGlyphsHazardNoopsTieTie === 3; + +// Prettier master (first output) +const averredBathersBoxroomBuggyNurl = + bifornCringerMoshedPerplexSawder === 1 || + askTrovenaBeenaDependsRowans === 2 || + glimseGlyphsHazardNoopsTieTie === 3; +``` diff --git a/src/language-js/clean.js b/src/language-js/clean.js index 77b4b9f1b..2801323f8 100644 --- a/src/language-js/clean.js +++ b/src/language-js/clean.js @@ -37,11 +37,6 @@ function clean(ast, newObj, parent) { return null; } - // We remove unneeded parens around same-operator LogicalExpressions - if (isUnbalancedLogicalTree(newObj)) { - return rebalanceLogicalTree(newObj); - } - // (TypeScript) Ignore `static` in `constructor(static p) {}` // and `export` in `constructor(export p) {}` if ( @@ -199,32 +194,4 @@ function clean(ast, newObj, parent) { } } -function isUnbalancedLogicalTree(newObj) { - return ( - newObj.type === "LogicalExpression" && - newObj.right.type === "LogicalExpression" && - newObj.operator === newObj.right.operator - ); -} - -function rebalanceLogicalTree(newObj) { - if (isUnbalancedLogicalTree(newObj)) { - return rebalanceLogicalTree({ - type: "LogicalExpression", - operator: newObj.operator, - left: rebalanceLogicalTree({ - type: "LogicalExpression", - operator: newObj.operator, - left: newObj.left, - right: newObj.right.left, - loc: {} - }), - right: newObj.right.right, - loc: {} - }); - } - - return newObj; -} - module.exports = clean; diff --git a/src/language-js/loc.js b/src/language-js/loc.js index e2d0e9586..214de144c 100644 --- a/src/language-js/loc.js +++ b/src/language-js/loc.js @@ -59,7 +59,24 @@ function locEnd(node) { return loc; } +function composeLoc(startNode, endNode = startNode) { + const loc = {}; + if (typeof startNode.start === "number") { + loc.start = startNode.start; + loc.end = endNode.end; + } + if (Array.isArray(startNode.range)) { + loc.range = [startNode.range[0], endNode.range[1]]; + } + loc.loc = { + start: startNode.loc.start, + end: endNode.loc.end + }; + return loc; +} + module.exports = { locStart, - locEnd + locEnd, + composeLoc }; diff --git a/src/language-js/postprocess.js b/src/language-js/postprocess.js index 888140e25..bf4a9d178 100644 --- a/src/language-js/postprocess.js +++ b/src/language-js/postprocess.js @@ -1,10 +1,18 @@ "use strict"; const { getLast } = require("../common/util"); +const { composeLoc } = require("./loc"); function postprocess(ast, options) { visitNode(ast, node => { switch (node.type) { + case "LogicalExpression": { + // We remove unneeded parens around same-operator LogicalExpressions + if (isUnbalancedLogicalTree(node)) { + return rebalanceLogicalTree(node); + } + break; + } // fix unexpected locEnd caused by --no-semi style case "VariableDeclaration": { const lastDeclaration = getLast(node.declarations); @@ -101,4 +109,40 @@ function visitNode(node, fn, parent, property) { } } +function isUnbalancedLogicalTree(node) { + return ( + node.type === "LogicalExpression" && + node.right.type === "LogicalExpression" && + node.operator === node.right.operator + ); +} + +function rebalanceLogicalTree(node) { + if (!isUnbalancedLogicalTree(node)) { + return node; + } + + return rebalanceLogicalTree( + Object.assign( + { + type: "LogicalExpression", + operator: node.operator, + left: rebalanceLogicalTree( + Object.assign( + { + type: "LogicalExpression", + operator: node.operator, + left: node.left, + right: node.right.left + }, + composeLoc(node.left, node.right.left) + ) + ), + right: node.right.right + }, + composeLoc(node) + ) + ); +} + module.exports = postprocess; diff --git a/tests/logical_expressions/__snapshots__/jsfmt.spec.js.snap b/tests/logical_expressions/__snapshots__/jsfmt.spec.js.snap index 4feb44940..714f2f726 100644 --- a/tests/logical_expressions/__snapshots__/jsfmt.spec.js.snap +++ b/tests/logical_expressions/__snapshots__/jsfmt.spec.js.snap @@ -1,5 +1,26 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP +exports[`issue-7024.js 1`] = ` +====================================options===================================== +parsers: ["babel", "flow", "typescript"] +printWidth: 80 + | printWidth +=====================================input====================================== +const radioSelectedAttr = + (isAnyValueSelected && + node.getAttribute(radioAttr.toLowerCase()) === radioValue) || + ((!isAnyValueSelected && values[a].default === true) || a === 0); + +=====================================output===================================== +const radioSelectedAttr = + (isAnyValueSelected && + node.getAttribute(radioAttr.toLowerCase()) === radioValue) || + (!isAnyValueSelected && values[a].default === true) || + a === 0; + +================================================================================ +`; + exports[`logical_expression_operators.js 1`] = ` ====================================options===================================== parsers: ["babel", "flow", "typescript"] diff --git a/tests/logical_expressions/issue-7024.js b/tests/logical_expressions/issue-7024.js new file mode 100644 index 000000000..fa8e8ff1e --- /dev/null +++ b/tests/logical_expressions/issue-7024.js @@ -0,0 +1,4 @@ +const radioSelectedAttr = + (isAnyValueSelected && + node.getAttribute(radioAttr.toLowerCase()) === radioValue) || + ((!isAnyValueSelected && values[a].default === true) || a === 0); From a8794373ec680bb020e9731519d69540c6ee2f09 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Fri, 22 Nov 2019 15:29:06 +0300 Subject: [PATCH 31/88] Bump docusaurus from 1.14.1 to 1.14.2 in /website (#7030) Bumps [docusaurus](https://github.com/facebook/docusaurus) from 1.14.1 to 1.14.2. - [Release notes](https://github.com/facebook/docusaurus/releases) - [Changelog](https://github.com/facebook/docusaurus/blob/master/CHANGELOG.md) - [Commits](https://github.com/facebook/docusaurus/compare/v1.14.1...v1.14.2) Signed-off-by: dependabot-preview[bot] --- website/package.json | 2 +- website/yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/website/package.json b/website/package.json index c74613027..76696680e 100644 --- a/website/package.json +++ b/website/package.json @@ -24,7 +24,7 @@ "@sandhose/prettier-animated-logo": "1.0.3", "babel-loader": "8.0.6", "concurrently": "5.0.0", - "docusaurus": "1.14.1", + "docusaurus": "1.14.2", "js-yaml": "3.13.1", "svgo": "1.3.2", "webpack": "4.41.2", diff --git a/website/yarn.lock b/website/yarn.lock index 8cdbe90aa..03365fd90 100644 --- a/website/yarn.lock +++ b/website/yarn.lock @@ -2624,10 +2624,10 @@ dir-glob@2.0.0: arrify "^1.0.1" path-type "^3.0.0" -docusaurus@1.14.1: - version "1.14.1" - resolved "https://registry.yarnpkg.com/docusaurus/-/docusaurus-1.14.1.tgz#970d3905bfff46f9772b1587bd012a9124bd1dde" - integrity sha512-+3tZ8MkJucaKuBmlgCCVRqundk1RJP3Ym71oiuLf7NLYIIQbK5gOqycmnOE0aD+vsL0/XsxH67yNJkd+tCTqVg== +docusaurus@1.14.2: + version "1.14.2" + resolved "https://registry.yarnpkg.com/docusaurus/-/docusaurus-1.14.2.tgz#6631a1cb34f82345147ed12af8233a3b2b43428e" + integrity sha512-hPn2v8UDsxZ+rAB+HdrNg4iK0VccubB2y9fJle4kag5MKlk1jele07hyXKhGgOvW2KSroRMHQVFF9EIeS0yYRg== dependencies: "@babel/core" "^7.7.2" "@babel/plugin-proposal-class-properties" "^7.7.0" From cad32c0e22f5dba73c4e9ec7110e20cf310dd4dc Mon Sep 17 00:00:00 2001 From: Evilebot Tnawi Date: Fri, 22 Nov 2019 15:36:34 +0300 Subject: [PATCH 32/88] fix formatting of logical and binary expressions in template literals (#7010) --- changelog_unreleased/javascript/pr-7003.md | 28 +++++++ src/language-js/printer-estree.js | 9 +- .../__snapshots__/jsfmt.spec.js.snap | 3 +- .../strings/__snapshots__/jsfmt.spec.js.snap | 64 +++++--------- .../__snapshots__/jsfmt.spec.js.snap | 83 +++++++++++++++++++ .../template_literals/binary-exporessions.js | 4 + .../conditional-expressions.js | 3 + .../template_literals/logical-expressions.js | 6 ++ .../template_literals/sequence-expressions.js | 1 + .../__snapshots__/jsfmt.spec.js.snap | 32 +++++++ .../as-expression.ts | 5 ++ .../jsfmt.spec.js | 1 + 12 files changed, 194 insertions(+), 45 deletions(-) create mode 100644 changelog_unreleased/javascript/pr-7003.md create mode 100644 tests/template_literals/binary-exporessions.js create mode 100644 tests/template_literals/conditional-expressions.js create mode 100644 tests/template_literals/logical-expressions.js create mode 100644 tests/template_literals/sequence-expressions.js create mode 100644 tests/typescript_template_literals/__snapshots__/jsfmt.spec.js.snap create mode 100644 tests/typescript_template_literals/as-expression.ts create mode 100644 tests/typescript_template_literals/jsfmt.spec.js diff --git a/changelog_unreleased/javascript/pr-7003.md b/changelog_unreleased/javascript/pr-7003.md new file mode 100644 index 000000000..73563471a --- /dev/null +++ b/changelog_unreleased/javascript/pr-7003.md @@ -0,0 +1,28 @@ +#### Fix formatting of logical, binary and sequence expressions in template literals ([#7010](https://github.com/prettier/prettier/pull/7010) by [@evilebottnawi](https://github.com/evilebottnawi)) + + +```js +// Input +`111111111 222222222 333333333 444444444 555555555 666666666 777777777 ${foo || bar}`; +`111111111 222222222 333333333 444444444 555555555 666666666 777777777 ${foo | bar}`; +`111111111 222222222 333333333 444444444 555555555 666666666 777777777 ${(foo, bar)}`; + +// Prettier stable +`111111111 222222222 333333333 444444444 555555555 666666666 777777777 ${foo || + bar}`; +`111111111 222222222 333333333 444444444 555555555 666666666 777777777 ${foo | + bar}`; +`111111111 222222222 333333333 444444444 555555555 666666666 777777777 ${(foo, +bar)}`; + +// Prettier master +`111111111 222222222 333333333 444444444 555555555 666666666 777777777 ${ + foo || bar +}`; +`111111111 222222222 333333333 444444444 555555555 666666666 777777777 ${ + foo | bar +}`; +`111111111 222222222 333333333 444444444 555555555 666666666 777777777 ${ + (foo, bar) +}`; +``` diff --git a/src/language-js/printer-estree.js b/src/language-js/printer-estree.js index baeb979a4..49b4552e3 100644 --- a/src/language-js/printer-estree.js +++ b/src/language-js/printer-estree.js @@ -609,7 +609,8 @@ function printPathNoParens(path, options, print, args) { (parent.type === "ConditionalExpression" && parentParent.type !== "ReturnStatement" && parentParent.type !== "CallExpression" && - parentParent.type !== "OptionalCallExpression"); + parentParent.type !== "OptionalCallExpression") || + parent.type === "TemplateLiteral"; const shouldIndentIfInlining = parent.type === "AssignmentExpression" || @@ -2481,7 +2482,11 @@ function printPathNoParens(path, options, print, args) { (n.expressions[i].comments && n.expressions[i].comments.length) || n.expressions[i].type === "MemberExpression" || n.expressions[i].type === "OptionalMemberExpression" || - n.expressions[i].type === "ConditionalExpression" + n.expressions[i].type === "ConditionalExpression" || + n.expressions[i].type === "LogicalExpression" || + n.expressions[i].type === "BinaryExpression" || + n.expressions[i].type === "SequenceExpression" || + n.expressions[i].type === "TSAsExpression" ) { printed = concat([indent(concat([softline, printed])), softline]); } diff --git a/tests/line_suffix_boundary/__snapshots__/jsfmt.spec.js.snap b/tests/line_suffix_boundary/__snapshots__/jsfmt.spec.js.snap index 583f31c1d..475d1d817 100644 --- a/tests/line_suffix_boundary/__snapshots__/jsfmt.spec.js.snap +++ b/tests/line_suffix_boundary/__snapshots__/jsfmt.spec.js.snap @@ -32,7 +32,8 @@ ExampleStory.getFragment('story')}
; =====================================output===================================== -\`\${a + a // a +\`\${ + a + a // a } \${ diff --git a/tests/strings/__snapshots__/jsfmt.spec.js.snap b/tests/strings/__snapshots__/jsfmt.spec.js.snap index ff176f2b3..d3cdd404a 100644 --- a/tests/strings/__snapshots__/jsfmt.spec.js.snap +++ b/tests/strings/__snapshots__/jsfmt.spec.js.snap @@ -191,26 +191,13 @@ const Bar = styled.div\` =====================================output===================================== foo( - \`a long string \${1 + - 2 + - 3 + - 2 + - 3 + - 2 + - 3 + - 2 + - 3 + - 2 + - 3 + - 2 + - 3 + - 2 + - 3 + - 2 + - 3} with expr\` + \`a long string \${ + 1 + 2 + 3 + 2 + 3 + 2 + 3 + 2 + 3 + 2 + 3 + 2 + 3 + 2 + 3 + 2 + 3 + } with expr\` ); -const x = \`a long string \${1 + +const x = \`a long string \${ + 1 + 2 + 3 + 2 + @@ -229,10 +216,12 @@ const x = \`a long string \${1 + 2 + 3 + 2 + - 3} with expr\`; + 3 +} with expr\`; foo( - \`a long string \${1 + + \`a long string \${ + 1 + 2 + 3 + 2 + @@ -253,7 +242,8 @@ foo( 2 + 3 + 2 + - 3} with expr\` + 3 + } with expr\` ); pipe.write( @@ -385,26 +375,13 @@ const Bar = styled.div\` =====================================output===================================== foo( - \`a long string \${1 + - 2 + - 3 + - 2 + - 3 + - 2 + - 3 + - 2 + - 3 + - 2 + - 3 + - 2 + - 3 + - 2 + - 3 + - 2 + - 3} with expr\`, + \`a long string \${ + 1 + 2 + 3 + 2 + 3 + 2 + 3 + 2 + 3 + 2 + 3 + 2 + 3 + 2 + 3 + 2 + 3 + } with expr\`, ); -const x = \`a long string \${1 + +const x = \`a long string \${ + 1 + 2 + 3 + 2 + @@ -423,10 +400,12 @@ const x = \`a long string \${1 + 2 + 3 + 2 + - 3} with expr\`; + 3 +} with expr\`; foo( - \`a long string \${1 + + \`a long string \${ + 1 + 2 + 3 + 2 + @@ -447,7 +426,8 @@ foo( 2 + 3 + 2 + - 3} with expr\`, + 3 + } with expr\`, ); pipe.write( diff --git a/tests/template_literals/__snapshots__/jsfmt.spec.js.snap b/tests/template_literals/__snapshots__/jsfmt.spec.js.snap index 4768cc0d2..812b09b51 100644 --- a/tests/template_literals/__snapshots__/jsfmt.spec.js.snap +++ b/tests/template_literals/__snapshots__/jsfmt.spec.js.snap @@ -1,5 +1,45 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP +exports[`binary-exporessions.js 1`] = ` +====================================options===================================== +parsers: ["babel", "flow", "typescript"] +printWidth: 80 + | printWidth +=====================================input====================================== +\`111111111 222222222 333333333 444444444 555555555 666666666 777777777 \${1 | +2}\`; +\`111111111 222222222 333333333 444444444 555555555 666666666 777777777 \${1 & +2}\`; + +=====================================output===================================== +\`111111111 222222222 333333333 444444444 555555555 666666666 777777777 \${ + 1 | 2 +}\`; +\`111111111 222222222 333333333 444444444 555555555 666666666 777777777 \${ + 1 & 2 +}\`; + +================================================================================ +`; + +exports[`conditional-expressions.js 1`] = ` +====================================options===================================== +parsers: ["babel", "flow", "typescript"] +printWidth: 80 + | printWidth +=====================================input====================================== +\`111111111 222222222 333333333 444444444 555555555 666666666 777777777 \${ + 1 ? 1 : 2 +}\`; + +=====================================output===================================== +\`111111111 222222222 333333333 444444444 555555555 666666666 777777777 \${ + 1 ? 1 : 2 +}\`; + +================================================================================ +`; + exports[`css-prop.js 1`] = ` ====================================options===================================== parsers: ["babel", "flow", "typescript"] @@ -191,6 +231,49 @@ throw new Error( ================================================================================ `; +exports[`logical-expressions.js 1`] = ` +====================================options===================================== +parsers: ["babel", "flow", "typescript"] +printWidth: 80 + | printWidth +=====================================input====================================== +\`111111111 222222222 333333333 444444444 555555555 666666666 777777777 \${1 ?? +2}\`; +\`111111111 222222222 333333333 444444444 555555555 666666666 777777777 \${1 && +2}\`; +\`111111111 222222222 333333333 444444444 555555555 666666666 777777777 \${1 || +2}\`; + +=====================================output===================================== +\`111111111 222222222 333333333 444444444 555555555 666666666 777777777 \${ + 1 ?? 2 +}\`; +\`111111111 222222222 333333333 444444444 555555555 666666666 777777777 \${ + 1 && 2 +}\`; +\`111111111 222222222 333333333 444444444 555555555 666666666 777777777 \${ + 1 || 2 +}\`; + +================================================================================ +`; + +exports[`sequence-expressions.js 1`] = ` +====================================options===================================== +parsers: ["babel", "flow", "typescript"] +printWidth: 80 + | printWidth +=====================================input====================================== +\`111111111 222222222 333333333 444444444 555555555 666666666 777777777 \${(1, 2)}\`; + +=====================================output===================================== +\`111111111 222222222 333333333 444444444 555555555 666666666 777777777 \${ + (1, 2) +}\`; + +================================================================================ +`; + exports[`styled-components-with-expressions.js 1`] = ` ====================================options===================================== parsers: ["babel", "flow", "typescript"] diff --git a/tests/template_literals/binary-exporessions.js b/tests/template_literals/binary-exporessions.js new file mode 100644 index 000000000..7507623e0 --- /dev/null +++ b/tests/template_literals/binary-exporessions.js @@ -0,0 +1,4 @@ +`111111111 222222222 333333333 444444444 555555555 666666666 777777777 ${1 | +2}`; +`111111111 222222222 333333333 444444444 555555555 666666666 777777777 ${1 & +2}`; diff --git a/tests/template_literals/conditional-expressions.js b/tests/template_literals/conditional-expressions.js new file mode 100644 index 000000000..5da7c3bd5 --- /dev/null +++ b/tests/template_literals/conditional-expressions.js @@ -0,0 +1,3 @@ +`111111111 222222222 333333333 444444444 555555555 666666666 777777777 ${ + 1 ? 1 : 2 +}`; diff --git a/tests/template_literals/logical-expressions.js b/tests/template_literals/logical-expressions.js new file mode 100644 index 000000000..f2964d8f1 --- /dev/null +++ b/tests/template_literals/logical-expressions.js @@ -0,0 +1,6 @@ +`111111111 222222222 333333333 444444444 555555555 666666666 777777777 ${1 ?? +2}`; +`111111111 222222222 333333333 444444444 555555555 666666666 777777777 ${1 && +2}`; +`111111111 222222222 333333333 444444444 555555555 666666666 777777777 ${1 || +2}`; diff --git a/tests/template_literals/sequence-expressions.js b/tests/template_literals/sequence-expressions.js new file mode 100644 index 000000000..ab20d4972 --- /dev/null +++ b/tests/template_literals/sequence-expressions.js @@ -0,0 +1 @@ +`111111111 222222222 333333333 444444444 555555555 666666666 777777777 ${(1, 2)}`; diff --git a/tests/typescript_template_literals/__snapshots__/jsfmt.spec.js.snap b/tests/typescript_template_literals/__snapshots__/jsfmt.spec.js.snap new file mode 100644 index 000000000..abb2f5474 --- /dev/null +++ b/tests/typescript_template_literals/__snapshots__/jsfmt.spec.js.snap @@ -0,0 +1,32 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`as-expression.ts 1`] = ` +====================================options===================================== +parsers: ["typescript"] +printWidth: 80 + | printWidth +=====================================input====================================== +const a = \`\${(foo + bar) as baz}\`; +const b = \`\${(veryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryLongFoo + bar) as baz}\`; +const b = \`\${(foo + veryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryLongBar) as baz}\`; +const b = \`\${(foo + bar) as veryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryLongBaz}\`; +const b = \`\${(veryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryLongFoo + veryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryLongBar) as veryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryLongBaz}\`; + +=====================================output===================================== +const a = \`\${(foo + bar) as baz}\`; +const b = \`\${ + (veryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryLongFoo + bar) as baz +}\`; +const b = \`\${ + (foo + veryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryLongBar) as baz +}\`; +const b = \`\${ + (foo + bar) as veryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryLongBaz +}\`; +const b = \`\${ + (veryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryLongFoo + + veryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryLongBar) as veryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryLongBaz +}\`; + +================================================================================ +`; diff --git a/tests/typescript_template_literals/as-expression.ts b/tests/typescript_template_literals/as-expression.ts new file mode 100644 index 000000000..3c2edeff8 --- /dev/null +++ b/tests/typescript_template_literals/as-expression.ts @@ -0,0 +1,5 @@ +const a = `${(foo + bar) as baz}`; +const b = `${(veryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryLongFoo + bar) as baz}`; +const b = `${(foo + veryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryLongBar) as baz}`; +const b = `${(foo + bar) as veryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryLongBaz}`; +const b = `${(veryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryLongFoo + veryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryLongBar) as veryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryVeryLongBaz}`; diff --git a/tests/typescript_template_literals/jsfmt.spec.js b/tests/typescript_template_literals/jsfmt.spec.js new file mode 100644 index 000000000..2ea3bb6eb --- /dev/null +++ b/tests/typescript_template_literals/jsfmt.spec.js @@ -0,0 +1 @@ +run_spec(__dirname, ["typescript"]); From b7e6d7cf26f25e9b773dd1a778a9f6ed0d574191 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Fri, 22 Nov 2019 15:56:02 +0100 Subject: [PATCH 33/88] Bump resolve from 1.12.0 to 1.12.2 (#7032) Bumps [resolve](https://github.com/browserify/resolve) from 1.12.0 to 1.12.2. - [Release notes](https://github.com/browserify/resolve/releases) - [Commits](https://github.com/browserify/resolve/compare/v1.12.0...v1.12.2) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index e55beb112..81895b820 100644 --- a/package.json +++ b/package.json @@ -64,7 +64,7 @@ "regexp-util": "1.2.2", "remark-math": "1.0.6", "remark-parse": "5.0.0", - "resolve": "1.12.0", + "resolve": "1.12.2", "semver": "6.3.0", "string-width": "4.1.0", "typescript": "3.7.2", diff --git a/yarn.lock b/yarn.lock index a967d0b53..a323c78eb 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5832,10 +5832,10 @@ resolve@1.1.7: version "1.1.7" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" -resolve@1.12.0, resolve@^1.1.6, resolve@^1.11.0, resolve@^1.11.1, resolve@^1.12.0, resolve@^1.3.2, resolve@^1.5.0: - version "1.12.0" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.12.0.tgz#3fc644a35c84a48554609ff26ec52b66fa577df6" - integrity sha512-B/dOmuoAik5bKcD6s6nXDCjzUKnaDvdkRyAk6rsmsKLipWj4797iothd7jmmUhWTfinVMU+wc56rYKsit2Qy4w== +resolve@1.12.2, resolve@^1.1.6, resolve@^1.11.0, resolve@^1.11.1, resolve@^1.12.0, resolve@^1.3.2, resolve@^1.5.0: + version "1.12.2" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.12.2.tgz#08b12496d9aa8659c75f534a8f05f0d892fff594" + integrity sha512-cAVTI2VLHWYsGOirfeYVVQ7ZDejtQ9fp4YhYckWDEkFfqbVjaT11iM8k6xSAfGFMM+gDpZjMnFssPu8we+mqFw== dependencies: path-parse "^1.0.6" From 3b782eb9766a54183759300d0fcdb1ada3909c3d Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Sat, 23 Nov 2019 20:04:37 +0100 Subject: [PATCH 34/88] Bump @babel/preset-env from 7.7.1 to 7.7.4 (#7035) Bumps [@babel/preset-env](https://github.com/babel/babel) from 7.7.1 to 7.7.4. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md) - [Commits](https://github.com/babel/babel/compare/v7.7.1...v7.7.4) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 746 ++++++++++++++++++++++++++++----------------------- 2 files changed, 413 insertions(+), 335 deletions(-) diff --git a/package.json b/package.json index 81895b820..f1ebec2ee 100644 --- a/package.json +++ b/package.json @@ -75,7 +75,7 @@ }, "devDependencies": { "@babel/core": "7.7.2", - "@babel/preset-env": "7.7.1", + "@babel/preset-env": "7.7.4", "@rollup/plugin-alias": "2.2.0", "@rollup/plugin-json": "4.0.0", "@rollup/plugin-replace": "2.2.1", diff --git a/yarn.lock b/yarn.lock index a323c78eb..fa025df83 100644 --- a/yarn.lock +++ b/yarn.lock @@ -58,52 +58,64 @@ lodash "^4.17.13" source-map "^0.5.0" -"@babel/helper-annotate-as-pure@^7.0.0", "@babel/helper-annotate-as-pure@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.7.0.tgz#efc54032d43891fe267679e63f6860aa7dbf4a5e" - integrity sha512-k50CQxMlYTYo+GGyUGFwpxKVtxVJi9yh61sXZji3zYHccK9RYliZGSTOgci85T+r+0VFN2nWbGM04PIqwfrpMg== +"@babel/generator@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.7.4.tgz#db651e2840ca9aa66f327dcec1dc5f5fa9611369" + integrity sha512-m5qo2WgdOJeyYngKImbkyQrnUN1mPceaG5BV+G0E3gWsa4l/jCSryWJdM2x8OuGAOyh+3d5pVYfZWCiNFtynxg== dependencies: - "@babel/types" "^7.7.0" + "@babel/types" "^7.7.4" + jsesc "^2.5.1" + lodash "^4.17.13" + source-map "^0.5.0" -"@babel/helper-builder-binary-assignment-operator-visitor@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.1.0.tgz#6b69628dfe4087798e0c4ed98e3d4a6b2fbd2f5f" +"@babel/helper-annotate-as-pure@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.7.4.tgz#bb3faf1e74b74bd547e867e48f551fa6b098b6ce" + integrity sha512-2BQmQgECKzYKFPpiycoF9tlb5HA4lrVyAmLLVK177EcQAqjVLciUb2/R+n1boQ9y5ENV3uz2ZqiNw7QMBBw1Og== dependencies: - "@babel/helper-explode-assignable-expression" "^7.1.0" - "@babel/types" "^7.0.0" + "@babel/types" "^7.7.4" -"@babel/helper-call-delegate@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/helper-call-delegate/-/helper-call-delegate-7.4.4.tgz#87c1f8ca19ad552a736a7a27b1c1fcf8b1ff1f43" - integrity sha512-l79boDFJ8S1c5hvQvG+rc+wHw6IuH7YldmRKsYtpbawsxURu/paVy57FZMomGK22/JckepaikOkY0MoAmdyOlQ== +"@babel/helper-builder-binary-assignment-operator-visitor@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.7.4.tgz#5f73f2b28580e224b5b9bd03146a4015d6217f5f" + integrity sha512-Biq/d/WtvfftWZ9Uf39hbPBYDUo986m5Bb4zhkeYDGUllF43D+nUe5M6Vuo6/8JDK/0YX/uBdeoQpyaNhNugZQ== dependencies: - "@babel/helper-hoist-variables" "^7.4.4" - "@babel/traverse" "^7.4.4" - "@babel/types" "^7.4.4" + "@babel/helper-explode-assignable-expression" "^7.7.4" + "@babel/types" "^7.7.4" -"@babel/helper-create-regexp-features-plugin@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.7.0.tgz#2e8badfe201cfafb5d930f46cf1e0b6f1cdcab23" - integrity sha512-ZhagAAVGD3L6MPM9/zZi7RRteonfBFLVUz3kjsnYsMAtr9hOJCKI9BAKIMpqn3NyWicPieoX779UL+7/3BEAOA== +"@babel/helper-call-delegate@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-call-delegate/-/helper-call-delegate-7.7.4.tgz#621b83e596722b50c0066f9dc37d3232e461b801" + integrity sha512-8JH9/B7J7tCYJ2PpWVpw9JhPuEVHztagNVuQAFBVFYluRMlpG7F1CgKEgGeL6KFqcsIa92ZYVj6DSc0XwmN1ZA== + dependencies: + "@babel/helper-hoist-variables" "^7.7.4" + "@babel/traverse" "^7.7.4" + "@babel/types" "^7.7.4" + +"@babel/helper-create-regexp-features-plugin@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.7.4.tgz#6d5762359fd34f4da1500e4cff9955b5299aaf59" + integrity sha512-Mt+jBKaxL0zfOIWrfQpnfYCN7/rS6GKx6CCCfuoqVVd+17R8zNDlzVYmIi9qyb2wOk002NsmSTDymkIygDUH7A== dependencies: "@babel/helper-regex" "^7.4.4" regexpu-core "^4.6.0" -"@babel/helper-define-map@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.7.0.tgz#60b0e9fd60def9de5054c38afde8c8ee409c7529" - integrity sha512-kPKWPb0dMpZi+ov1hJiwse9dWweZsz3V9rP4KdytnX1E7z3cTNmFGglwklzFPuqIcHLIY3bgKSs4vkwXXdflQA== +"@babel/helper-define-map@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.7.4.tgz#2841bf92eb8bd9c906851546fe6b9d45e162f176" + integrity sha512-v5LorqOa0nVQUvAUTUF3KPastvUt/HzByXNamKQ6RdJRTV7j8rLL+WB5C/MzzWAwOomxDhYFb1wLLxHqox86lg== dependencies: - "@babel/helper-function-name" "^7.7.0" - "@babel/types" "^7.7.0" + "@babel/helper-function-name" "^7.7.4" + "@babel/types" "^7.7.4" lodash "^4.17.13" -"@babel/helper-explode-assignable-expression@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.1.0.tgz#537fa13f6f1674df745b0c00ec8fe4e99681c8f6" +"@babel/helper-explode-assignable-expression@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.7.4.tgz#fa700878e008d85dc51ba43e9fb835cddfe05c84" + integrity sha512-2/SicuFrNSXsZNBxe5UGdLr+HZg+raWBLE9vC98bdYOKX/U6PY0mdGlYUJdtTDPSU0Lw0PNbKKDpwYHJLn2jLg== dependencies: - "@babel/traverse" "^7.1.0" - "@babel/types" "^7.0.0" + "@babel/traverse" "^7.7.4" + "@babel/types" "^7.7.4" "@babel/helper-function-name@^7.7.0": version "7.7.0" @@ -114,52 +126,68 @@ "@babel/template" "^7.7.0" "@babel/types" "^7.7.0" -"@babel/helper-get-function-arity@^7.0.0", "@babel/helper-get-function-arity@^7.7.0": +"@babel/helper-function-name@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.7.4.tgz#ab6e041e7135d436d8f0a3eca15de5b67a341a2e" + integrity sha512-AnkGIdiBhEuiwdoMnKm7jfPfqItZhgRaZfMg1XX3bS25INOnLPjPG1Ppnajh8eqgt5kPJnfqrRHqFqmjKDZLzQ== + dependencies: + "@babel/helper-get-function-arity" "^7.7.4" + "@babel/template" "^7.7.4" + "@babel/types" "^7.7.4" + +"@babel/helper-get-function-arity@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.7.0.tgz#c604886bc97287a1d1398092bc666bc3d7d7aa2d" integrity sha512-tLdojOTz4vWcEnHWHCuPN5P85JLZWbm5Fx5ZsMEMPhF3Uoe3O7awrbM2nQ04bDOUToH/2tH/ezKEOR8zEYzqyw== dependencies: "@babel/types" "^7.7.0" -"@babel/helper-hoist-variables@^7.4.4", "@babel/helper-hoist-variables@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.7.0.tgz#b4552e4cfe5577d7de7b183e193e84e4ec538c81" - integrity sha512-LUe/92NqsDAkJjjCEWkNe+/PcpnisvnqdlRe19FahVapa4jndeuJ+FBiTX1rcAKWKcJGE+C3Q3tuEuxkSmCEiQ== +"@babel/helper-get-function-arity@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.7.4.tgz#cb46348d2f8808e632f0ab048172130e636005f0" + integrity sha512-QTGKEdCkjgzgfJ3bAyRwF4yyT3pg+vDgan8DSivq1eS0gwi+KGKE5x8kRcbeFTb/673mkO5SN1IZfmCfA5o+EA== dependencies: - "@babel/types" "^7.7.0" + "@babel/types" "^7.7.4" -"@babel/helper-member-expression-to-functions@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.7.0.tgz#472b93003a57071f95a541ea6c2b098398bcad8a" - integrity sha512-QaCZLO2RtBcmvO/ekOLp8p7R5X2JriKRizeDpm5ChATAFWrrYDcDxPuCIBXKyBjY+i1vYSdcUTMIb8psfxHDPA== +"@babel/helper-hoist-variables@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.7.4.tgz#612384e3d823fdfaaf9fce31550fe5d4db0f3d12" + integrity sha512-wQC4xyvc1Jo/FnLirL6CEgPgPCa8M74tOdjWpRhQYapz5JC7u3NYU1zCVoVAGCE3EaIP9T1A3iW0WLJ+reZlpQ== dependencies: - "@babel/types" "^7.7.0" + "@babel/types" "^7.7.4" -"@babel/helper-module-imports@^7.0.0", "@babel/helper-module-imports@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.7.0.tgz#99c095889466e5f7b6d66d98dffc58baaf42654d" - integrity sha512-Dv3hLKIC1jyfTkClvyEkYP2OlkzNvWs5+Q8WgPbxM5LMeorons7iPP91JM+DU7tRbhqA1ZeooPaMFvQrn23RHw== +"@babel/helper-member-expression-to-functions@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.7.4.tgz#356438e2569df7321a8326644d4b790d2122cb74" + integrity sha512-9KcA1X2E3OjXl/ykfMMInBK+uVdfIVakVe7W7Lg3wfXUNyS3Q1HWLFRwZIjhqiCGbslummPDnmb7vIekS0C1vw== dependencies: - "@babel/types" "^7.7.0" + "@babel/types" "^7.7.4" -"@babel/helper-module-transforms@^7.1.0", "@babel/helper-module-transforms@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.7.0.tgz#154a69f0c5b8fd4d39e49750ff7ac4faa3f36786" - integrity sha512-rXEefBuheUYQyX4WjV19tuknrJFwyKw0HgzRwbkyTbB+Dshlq7eqkWbyjzToLrMZk/5wKVKdWFluiAsVkHXvuQ== +"@babel/helper-module-imports@^7.0.0", "@babel/helper-module-imports@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.7.4.tgz#e5a92529f8888bf319a6376abfbd1cebc491ad91" + integrity sha512-dGcrX6K9l8258WFjyDLJwuVKxR4XZfU0/vTUgOQYWEnRD8mgr+p4d6fCUMq/ys0h4CCt/S5JhbvtyErjWouAUQ== dependencies: - "@babel/helper-module-imports" "^7.7.0" - "@babel/helper-simple-access" "^7.7.0" - "@babel/helper-split-export-declaration" "^7.7.0" - "@babel/template" "^7.7.0" - "@babel/types" "^7.7.0" + "@babel/types" "^7.7.4" + +"@babel/helper-module-transforms@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.7.4.tgz#8d7cdb1e1f8ea3d8c38b067345924ac4f8e0879a" + integrity sha512-ehGBu4mXrhs0FxAqN8tWkzF8GSIGAiEumu4ONZ/hD9M88uHcD+Yu2ttKfOCgwzoesJOJrtQh7trI5YPbRtMmnA== + dependencies: + "@babel/helper-module-imports" "^7.7.4" + "@babel/helper-simple-access" "^7.7.4" + "@babel/helper-split-export-declaration" "^7.7.4" + "@babel/template" "^7.7.4" + "@babel/types" "^7.7.4" lodash "^4.17.13" -"@babel/helper-optimise-call-expression@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.7.0.tgz#4f66a216116a66164135dc618c5d8b7a959f9365" - integrity sha512-48TeqmbazjNU/65niiiJIJRc5JozB8acui1OS7bSd6PgxfuovWsvjfWSzlgx+gPFdVveNzUdpdIg5l56Pl5jqg== +"@babel/helper-optimise-call-expression@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.7.4.tgz#034af31370d2995242aa4df402c3b7794b2dcdf2" + integrity sha512-VB7gWZ2fDkSuqW6b1AKXkJWO5NyNI3bFL/kK79/30moK57blr6NbH8xcl2XcKCwOmJosftWunZqfO84IGq3ZZg== dependencies: - "@babel/types" "^7.7.0" + "@babel/types" "^7.7.4" "@babel/helper-plugin-utils@^7.0.0": version "7.0.0" @@ -172,34 +200,34 @@ dependencies: lodash "^4.17.11" -"@babel/helper-remap-async-to-generator@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.7.0.tgz#4d69ec653e8bff5bce62f5d33fc1508f223c75a7" - integrity sha512-pHx7RN8X0UNHPB/fnuDnRXVZ316ZigkO8y8D835JlZ2SSdFKb6yH9MIYRU4fy/KPe5sPHDFOPvf8QLdbAGGiyw== +"@babel/helper-remap-async-to-generator@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.7.4.tgz#c68c2407350d9af0e061ed6726afb4fff16d0234" + integrity sha512-Sk4xmtVdM9sA/jCI80f+KS+Md+ZHIpjuqmYPk1M7F/upHou5e4ReYmExAiu6PVe65BhJPZA2CY9x9k4BqE5klw== dependencies: - "@babel/helper-annotate-as-pure" "^7.7.0" - "@babel/helper-wrap-function" "^7.7.0" - "@babel/template" "^7.7.0" - "@babel/traverse" "^7.7.0" - "@babel/types" "^7.7.0" + "@babel/helper-annotate-as-pure" "^7.7.4" + "@babel/helper-wrap-function" "^7.7.4" + "@babel/template" "^7.7.4" + "@babel/traverse" "^7.7.4" + "@babel/types" "^7.7.4" -"@babel/helper-replace-supers@^7.5.5", "@babel/helper-replace-supers@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.7.0.tgz#d5365c8667fe7cbd13b8ddddceb9bd7f2b387512" - integrity sha512-5ALYEul5V8xNdxEeWvRsBzLMxQksT7MaStpxjJf9KsnLxpAKBtfw5NeMKZJSYDa0lKdOcy0g+JT/f5mPSulUgg== +"@babel/helper-replace-supers@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.7.4.tgz#3c881a6a6a7571275a72d82e6107126ec9e2cdd2" + integrity sha512-pP0tfgg9hsZWo5ZboYGuBn/bbYT/hdLPVSS4NMmiRJdwWhP0IznPwN9AE1JwyGsjSPLC364I0Qh5p+EPkGPNpg== dependencies: - "@babel/helper-member-expression-to-functions" "^7.7.0" - "@babel/helper-optimise-call-expression" "^7.7.0" - "@babel/traverse" "^7.7.0" - "@babel/types" "^7.7.0" + "@babel/helper-member-expression-to-functions" "^7.7.4" + "@babel/helper-optimise-call-expression" "^7.7.4" + "@babel/traverse" "^7.7.4" + "@babel/types" "^7.7.4" -"@babel/helper-simple-access@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.7.0.tgz#97a8b6c52105d76031b86237dc1852b44837243d" - integrity sha512-AJ7IZD7Eem3zZRuj5JtzFAptBw7pMlS3y8Qv09vaBWoFsle0d1kAn5Wq6Q9MyBXITPOKnxwkZKoAm4bopmv26g== +"@babel/helper-simple-access@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.7.4.tgz#a169a0adb1b5f418cfc19f22586b2ebf58a9a294" + integrity sha512-zK7THeEXfan7UlWsG2A6CI/L9jVnI5+xxKZOdej39Y0YtDYKx9raHk5F2EtK9K8DHRTihYwg20ADt9S36GR78A== dependencies: - "@babel/template" "^7.7.0" - "@babel/types" "^7.7.0" + "@babel/template" "^7.7.4" + "@babel/types" "^7.7.4" "@babel/helper-split-export-declaration@^7.7.0": version "7.7.0" @@ -208,15 +236,22 @@ dependencies: "@babel/types" "^7.7.0" -"@babel/helper-wrap-function@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.7.0.tgz#15af3d3e98f8417a60554acbb6c14e75e0b33b74" - integrity sha512-sd4QjeMgQqzshSjecZjOp8uKfUtnpmCyQhKQrVJBBgeHAB/0FPi33h3AbVlVp07qQtMD4QgYSzaMI7VwncNK/w== +"@babel/helper-split-export-declaration@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.7.4.tgz#57292af60443c4a3622cf74040ddc28e68336fd8" + integrity sha512-guAg1SXFcVr04Guk9eq0S4/rWS++sbmyqosJzVs8+1fH5NI+ZcmkaSkc7dmtAFbHFva6yRJnjW3yAcGxjueDug== dependencies: - "@babel/helper-function-name" "^7.7.0" - "@babel/template" "^7.7.0" - "@babel/traverse" "^7.7.0" - "@babel/types" "^7.7.0" + "@babel/types" "^7.7.4" + +"@babel/helper-wrap-function@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.7.4.tgz#37ab7fed5150e22d9d7266e830072c0cdd8baace" + integrity sha512-VsfzZt6wmsocOaVU0OokwrIytHND55yvyT4BPB9AIIgwr8+x7617hetdJTsuGwygN5RC6mxA9EJztTjuwm2ofg== + dependencies: + "@babel/helper-function-name" "^7.7.4" + "@babel/template" "^7.7.4" + "@babel/traverse" "^7.7.4" + "@babel/types" "^7.7.4" "@babel/helpers@^7.7.0": version "7.7.0" @@ -249,378 +284,397 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.7.3.tgz#5fad457c2529de476a248f75b0f090b3060af043" integrity sha512-bqv+iCo9i+uLVbI0ILzKkvMorqxouI+GbV13ivcARXn9NNEabi2IEz912IgNpT/60BNXac5dgcfjb94NjsF33A== -"@babel/plugin-proposal-async-generator-functions@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.7.0.tgz#83ef2d6044496b4c15d8b4904e2219e6dccc6971" - integrity sha512-ot/EZVvf3mXtZq0Pd0+tSOfGWMizqmOohXmNZg6LNFjHOV+wOPv7BvVYh8oPR8LhpIP3ye8nNooKL50YRWxpYA== +"@babel/parser@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.7.4.tgz#75ab2d7110c2cf2fa949959afb05fa346d2231bb" + integrity sha512-jIwvLO0zCL+O/LmEJQjWA75MQTWwx3c3u2JOTDK5D3/9egrWRRA0/0hk9XXywYnXZVVpzrBYeIQTmhwUaePI9g== + +"@babel/plugin-proposal-async-generator-functions@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.7.4.tgz#0351c5ac0a9e927845fffd5b82af476947b7ce6d" + integrity sha512-1ypyZvGRXriY/QP668+s8sFr2mqinhkRDMPSQLNghCQE+GAkFtp+wkHVvg2+Hdki8gwP+NFzJBJ/N1BfzCCDEw== dependencies: "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-remap-async-to-generator" "^7.7.0" - "@babel/plugin-syntax-async-generators" "^7.2.0" + "@babel/helper-remap-async-to-generator" "^7.7.4" + "@babel/plugin-syntax-async-generators" "^7.7.4" -"@babel/plugin-proposal-dynamic-import@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.7.0.tgz#dc02a8bad8d653fb59daf085516fa416edd2aa7f" - integrity sha512-7poL3Xi+QFPC7sGAzEIbXUyYzGJwbc2+gSD0AkiC5k52kH2cqHdqxm5hNFfLW3cRSTcx9bN0Fl7/6zWcLLnKAQ== +"@babel/plugin-proposal-dynamic-import@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.7.4.tgz#dde64a7f127691758cbfed6cf70de0fa5879d52d" + integrity sha512-StH+nGAdO6qDB1l8sZ5UBV8AC3F2VW2I8Vfld73TMKyptMU9DY5YsJAS8U81+vEtxcH3Y/La0wG0btDrhpnhjQ== dependencies: "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-dynamic-import" "^7.2.0" + "@babel/plugin-syntax-dynamic-import" "^7.7.4" -"@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" +"@babel/plugin-proposal-json-strings@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.7.4.tgz#7700a6bfda771d8dc81973249eac416c6b4c697d" + integrity sha512-wQvt3akcBTfLU/wYoqm/ws7YOAQKu8EVJEvHip/mzkNtjaclQoCCIqKXFP5/eyfnfbQCDV3OLRIK3mIVyXuZlw== dependencies: "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-json-strings" "^7.2.0" + "@babel/plugin-syntax-json-strings" "^7.7.4" -"@babel/plugin-proposal-object-rest-spread@^7.6.2": - version "7.6.2" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.6.2.tgz#8ffccc8f3a6545e9f78988b6bf4fe881b88e8096" - integrity sha512-LDBXlmADCsMZV1Y9OQwMc0MyGZ8Ta/zlD9N67BfQT8uYwkRswiu2hU6nJKrjrt/58aH/vqfQlR/9yId/7A2gWw== +"@babel/plugin-proposal-object-rest-spread@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.7.4.tgz#cc57849894a5c774214178c8ab64f6334ec8af71" + integrity sha512-rnpnZR3/iWKmiQyJ3LKJpSwLDcX/nSXhdLk4Aq/tXOApIvyu7qoabrige0ylsAJffaUC51WiBu209Q0U+86OWQ== dependencies: "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-object-rest-spread" "^7.2.0" + "@babel/plugin-syntax-object-rest-spread" "^7.7.4" -"@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" +"@babel/plugin-proposal-optional-catch-binding@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.7.4.tgz#ec21e8aeb09ec6711bc0a39ca49520abee1de379" + integrity sha512-DyM7U2bnsQerCQ+sejcTNZh8KQEUuC3ufzdnVnSiUv/qoGJp2Z3hanKL18KDhsBT5Wj6a7CMT5mdyCNJsEaA9w== dependencies: "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-optional-catch-binding" "^7.2.0" + "@babel/plugin-syntax-optional-catch-binding" "^7.7.4" -"@babel/plugin-proposal-unicode-property-regex@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.7.0.tgz#549fe1717a1bd0a2a7e63163841cb37e78179d5d" - integrity sha512-mk34H+hp7kRBWJOOAR0ZMGCydgKMD4iN9TpDRp3IIcbunltxEY89XSimc6WbtSLCDrwcdy/EEw7h5CFCzxTchw== +"@babel/plugin-proposal-unicode-property-regex@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.7.4.tgz#7c239ccaf09470dbe1d453d50057460e84517ebb" + integrity sha512-cHgqHgYvffluZk85dJ02vloErm3Y6xtH+2noOBOJ2kXOJH3aVCDnj5eR/lVNlTnYu4hndAPJD3rTFjW3qee0PA== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.7.0" + "@babel/helper-create-regexp-features-plugin" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-syntax-async-generators@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.2.0.tgz#69e1f0db34c6f5a0cf7e2b3323bf159a76c8cb7f" +"@babel/plugin-syntax-async-generators@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.7.4.tgz#331aaf310a10c80c44a66b238b6e49132bd3c889" + integrity sha512-Li4+EjSpBgxcsmeEF8IFcfV/+yJGxHXDirDkEoyFjumuwbmfCVHUt0HuowD/iGM7OhIRyXJH9YXxqiH6N815+g== dependencies: "@babel/helper-plugin-utils" "^7.0.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== +"@babel/plugin-syntax-dynamic-import@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.7.4.tgz#29ca3b4415abfe4a5ec381e903862ad1a54c3aec" + integrity sha512-jHQW0vbRGvwQNgyVxwDh4yuXu4bH1f5/EICJLAhl1SblLs2CDhrsmCk+v5XLdE9wxtAFRyxx+P//Iw+a5L/tTg== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-syntax-json-strings@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.2.0.tgz#72bd13f6ffe1d25938129d2a186b11fd62951470" +"@babel/plugin-syntax-json-strings@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.7.4.tgz#86e63f7d2e22f9e27129ac4e83ea989a382e86cc" + integrity sha512-QpGupahTQW1mHRXddMG5srgpHWqRLwJnJZKXTigB9RPFCCGbDGCgBeM/iC82ICXp414WeYx/tD54w7M2qRqTMg== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-syntax-object-rest-spread@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.2.0.tgz#3b7a3e733510c57e820b9142a6579ac8b0dfad2e" +"@babel/plugin-syntax-object-rest-spread@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.7.4.tgz#47cf220d19d6d0d7b154304701f468fc1cc6ff46" + integrity sha512-mObR+r+KZq0XhRVS2BrBKBpr5jqrqzlPvS9C9vuOf5ilSwzloAl7RPWLrgKdWS6IreaVrjHxTjtyqFiOisaCwg== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-syntax-optional-catch-binding@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.2.0.tgz#a94013d6eda8908dfe6a477e7f9eda85656ecf5c" +"@babel/plugin-syntax-optional-catch-binding@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.7.4.tgz#a3e38f59f4b6233867b4a92dcb0ee05b2c334aa6" + integrity sha512-4ZSuzWgFxqHRE31Glu+fEr/MirNZOMYmD/0BhBWyLyOOQz/gTAl7QmWm2hX1QxEIXsr2vkdlwxIzTyiYRC4xcQ== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-syntax-top-level-await@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.7.0.tgz#f5699549f50bbe8d12b1843a4e82f0a37bb65f4d" - integrity sha512-hi8FUNiFIY1fnUI2n1ViB1DR0R4QeK4iHcTlW6aJkrPoTdb8Rf1EMQ6GT3f67DDkYyWgew9DFoOZ6gOoEsdzTA== +"@babel/plugin-syntax-top-level-await@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.7.4.tgz#bd7d8fa7b9fee793a36e4027fd6dd1aa32f946da" + integrity sha512-wdsOw0MvkL1UIgiQ/IFr3ETcfv1xb8RMM0H9wbiDyLaJFyiDg5oZvDLCXosIXmFeIlweML5iOBXAkqddkYNizg== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-arrow-functions@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.2.0.tgz#9aeafbe4d6ffc6563bf8f8372091628f00779550" +"@babel/plugin-transform-arrow-functions@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.7.4.tgz#76309bd578addd8aee3b379d809c802305a98a12" + integrity sha512-zUXy3e8jBNPiffmqkHRNDdZM2r8DWhCB7HhcoyZjiK1TxYEluLHAvQuYnTT+ARqRpabWqy/NHkO6e3MsYB5YfA== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-async-to-generator@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.7.0.tgz#e2b84f11952cf5913fe3438b7d2585042772f492" - integrity sha512-vLI2EFLVvRBL3d8roAMqtVY0Bm9C1QzLkdS57hiKrjUBSqsQYrBsMCeOg/0KK7B0eK9V71J5mWcha9yyoI2tZw== +"@babel/plugin-transform-async-to-generator@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.7.4.tgz#694cbeae6d613a34ef0292713fa42fb45c4470ba" + integrity sha512-zpUTZphp5nHokuy8yLlyafxCJ0rSlFoSHypTUWgpdwoDXWQcseaect7cJ8Ppk6nunOM6+5rPMkod4OYKPR5MUg== dependencies: - "@babel/helper-module-imports" "^7.7.0" + "@babel/helper-module-imports" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-remap-async-to-generator" "^7.7.0" + "@babel/helper-remap-async-to-generator" "^7.7.4" -"@babel/plugin-transform-block-scoped-functions@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.2.0.tgz#5d3cc11e8d5ddd752aa64c9148d0db6cb79fd190" +"@babel/plugin-transform-block-scoped-functions@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.7.4.tgz#d0d9d5c269c78eaea76227ace214b8d01e4d837b" + integrity sha512-kqtQzwtKcpPclHYjLK//3lH8OFsCDuDJBaFhVwf8kqdnF6MN4l618UDlcA7TfRs3FayrHj+svYnSX8MC9zmUyQ== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-block-scoping@^7.6.3": - version "7.6.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.6.3.tgz#6e854e51fbbaa84351b15d4ddafe342f3a5d542a" - integrity sha512-7hvrg75dubcO3ZI2rjYTzUrEuh1E9IyDEhhB6qfcooxhDA33xx2MasuLVgdxzcP6R/lipAC6n9ub9maNW6RKdw== +"@babel/plugin-transform-block-scoping@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.7.4.tgz#200aad0dcd6bb80372f94d9e628ea062c58bf224" + integrity sha512-2VBe9u0G+fDt9B5OV5DQH4KBf5DoiNkwFKOz0TCvBWvdAN2rOykCTkrL+jTLxfCAm76l9Qo5OqL7HBOx2dWggg== dependencies: "@babel/helper-plugin-utils" "^7.0.0" lodash "^4.17.13" -"@babel/plugin-transform-classes@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.7.0.tgz#b411ecc1b8822d24b81e5d184f24149136eddd4a" - integrity sha512-/b3cKIZwGeUesZheU9jNYcwrEA7f/Bo4IdPmvp7oHgvks2majB5BoT5byAql44fiNQYOPzhk2w8DbgfuafkMoA== +"@babel/plugin-transform-classes@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.7.4.tgz#c92c14be0a1399e15df72667067a8f510c9400ec" + integrity sha512-sK1mjWat7K+buWRuImEzjNf68qrKcrddtpQo3swi9j7dUcG6y6R6+Di039QN2bD1dykeswlagupEmpOatFHHUg== dependencies: - "@babel/helper-annotate-as-pure" "^7.7.0" - "@babel/helper-define-map" "^7.7.0" - "@babel/helper-function-name" "^7.7.0" - "@babel/helper-optimise-call-expression" "^7.7.0" + "@babel/helper-annotate-as-pure" "^7.7.4" + "@babel/helper-define-map" "^7.7.4" + "@babel/helper-function-name" "^7.7.4" + "@babel/helper-optimise-call-expression" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-replace-supers" "^7.7.0" - "@babel/helper-split-export-declaration" "^7.7.0" + "@babel/helper-replace-supers" "^7.7.4" + "@babel/helper-split-export-declaration" "^7.7.4" globals "^11.1.0" -"@babel/plugin-transform-computed-properties@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.2.0.tgz#83a7df6a658865b1c8f641d510c6f3af220216da" +"@babel/plugin-transform-computed-properties@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.7.4.tgz#e856c1628d3238ffe12d668eb42559f79a81910d" + integrity sha512-bSNsOsZnlpLLyQew35rl4Fma3yKWqK3ImWMSC/Nc+6nGjC9s5NFWAer1YQ899/6s9HxO2zQC1WoFNfkOqRkqRQ== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-destructuring@^7.6.0": - version "7.6.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.6.0.tgz#44bbe08b57f4480094d57d9ffbcd96d309075ba6" - integrity sha512-2bGIS5P1v4+sWTCnKNDZDxbGvEqi0ijeqM/YqHtVGrvG2y0ySgnEEhXErvE9dA0bnIzY9bIzdFK0jFA46ASIIQ== +"@babel/plugin-transform-destructuring@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.7.4.tgz#2b713729e5054a1135097b6a67da1b6fe8789267" + integrity sha512-4jFMXI1Cu2aXbcXXl8Lr6YubCn6Oc7k9lLsu8v61TZh+1jny2BWmdtvY9zSUlLdGUvcy9DMAWyZEOqjsbeg/wA== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-dotall-regex@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.7.0.tgz#c5c9ecacab3a5e0c11db6981610f0c32fd698b3b" - integrity sha512-3QQlF7hSBnSuM1hQ0pS3pmAbWLax/uGNCbPBND9y+oJ4Y776jsyujG2k0Sn2Aj2a0QwVOiOFL5QVPA7spjvzSA== +"@babel/plugin-transform-dotall-regex@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.7.4.tgz#f7ccda61118c5b7a2599a72d5e3210884a021e96" + integrity sha512-mk0cH1zyMa/XHeb6LOTXTbG7uIJ8Rrjlzu91pUx/KS3JpcgaTDwMS8kM+ar8SLOvlL2Lofi4CGBAjCo3a2x+lw== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.7.0" + "@babel/helper-create-regexp-features-plugin" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.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== +"@babel/plugin-transform-duplicate-keys@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.7.4.tgz#3d21731a42e3f598a73835299dd0169c3b90ac91" + integrity sha512-g1y4/G6xGWMD85Tlft5XedGaZBCIVN+/P0bs6eabmcPP9egFleMAo65OOjlhcz1njpwagyY3t0nsQC9oTFegJA== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-exponentiation-operator@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.2.0.tgz#a63868289e5b4007f7054d46491af51435766008" +"@babel/plugin-transform-exponentiation-operator@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.7.4.tgz#dd30c0191e3a1ba19bcc7e389bdfddc0729d5db9" + integrity sha512-MCqiLfCKm6KEA1dglf6Uqq1ElDIZwFuzz1WH5mTf8k2uQSxEJMbOIEh7IZv7uichr7PMfi5YVSrr1vz+ipp7AQ== dependencies: - "@babel/helper-builder-binary-assignment-operator-visitor" "^7.1.0" + "@babel/helper-builder-binary-assignment-operator-visitor" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-for-of@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.4.4.tgz#0267fc735e24c808ba173866c6c4d1440fc3c556" - integrity sha512-9T/5Dlr14Z9TIEXLXkt8T1DU7F24cbhwhMNUziN3hB1AXoZcdzPcTiKGRn/6iOymDqtTKWnr/BtRKN9JwbKtdQ== +"@babel/plugin-transform-for-of@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.7.4.tgz#248800e3a5e507b1f103d8b4ca998e77c63932bc" + integrity sha512-zZ1fD1B8keYtEcKF+M1TROfeHTKnijcVQm0yO/Yu1f7qoDoxEIc/+GX6Go430Bg84eM/xwPFp0+h4EbZg7epAA== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-function-name@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.7.0.tgz#0fa786f1eef52e3b7d4fc02e54b2129de8a04c2a" - integrity sha512-P5HKu0d9+CzZxP5jcrWdpe7ZlFDe24bmqP6a6X8BHEBl/eizAsY8K6LX8LASZL0Jxdjm5eEfzp+FIrxCm/p8bA== +"@babel/plugin-transform-function-name@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.7.4.tgz#75a6d3303d50db638ff8b5385d12451c865025b1" + integrity sha512-E/x09TvjHNhsULs2IusN+aJNRV5zKwxu1cpirZyRPw+FyyIKEHPXTsadj48bVpc1R5Qq1B5ZkzumuFLytnbT6g== dependencies: - "@babel/helper-function-name" "^7.7.0" + "@babel/helper-function-name" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-literals@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.2.0.tgz#690353e81f9267dad4fd8cfd77eafa86aba53ea1" +"@babel/plugin-transform-literals@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.7.4.tgz#27fe87d2b5017a2a5a34d1c41a6b9f6a6262643e" + integrity sha512-X2MSV7LfJFm4aZfxd0yLVFrEXAgPqYoDG53Br/tCKiKYfX0MjVjQeWPIhPHHsCqzwQANq+FLN786fF5rgLS+gw== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-member-expression-literals@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.2.0.tgz#fa10aa5c58a2cb6afcf2c9ffa8cb4d8b3d489a2d" - integrity sha512-HiU3zKkSU6scTidmnFJ0bMX8hz5ixC93b4MHMiYebmk2lUVNGOboPsqQvx5LzooihijUoLR/v7Nc1rbBtnc7FA== +"@babel/plugin-transform-member-expression-literals@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.7.4.tgz#aee127f2f3339fc34ce5e3055d7ffbf7aa26f19a" + integrity sha512-9VMwMO7i69LHTesL0RdGy93JU6a+qOPuvB4F4d0kR0zyVjJRVJRaoaGjhtki6SzQUu8yen/vxPKN6CWnCUw6bA== dependencies: "@babel/helper-plugin-utils" "^7.0.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== +"@babel/plugin-transform-modules-amd@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.7.4.tgz#276b3845ca2b228f2995e453adc2e6f54d72fb71" + integrity sha512-/542/5LNA18YDtg1F+QHvvUSlxdvjZoD/aldQwkq+E3WCkbEjNSN9zdrOXaSlfg3IfGi22ijzecklF/A7kVZFQ== dependencies: - "@babel/helper-module-transforms" "^7.1.0" + "@babel/helper-module-transforms" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" babel-plugin-dynamic-import-node "^2.3.0" -"@babel/plugin-transform-modules-commonjs@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.7.0.tgz#3e5ffb4fd8c947feede69cbe24c9554ab4113fe3" - integrity sha512-KEMyWNNWnjOom8vR/1+d+Ocz/mILZG/eyHHO06OuBQ2aNhxT62fr4y6fGOplRx+CxCSp3IFwesL8WdINfY/3kg== +"@babel/plugin-transform-modules-commonjs@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.7.4.tgz#bee4386e550446343dd52a571eda47851ff857a3" + integrity sha512-k8iVS7Jhc367IcNF53KCwIXtKAH7czev866ThsTgy8CwlXjnKZna2VHwChglzLleYrcHz1eQEIJlGRQxB53nqA== dependencies: - "@babel/helper-module-transforms" "^7.7.0" + "@babel/helper-module-transforms" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-simple-access" "^7.7.0" + "@babel/helper-simple-access" "^7.7.4" babel-plugin-dynamic-import-node "^2.3.0" -"@babel/plugin-transform-modules-systemjs@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.7.0.tgz#9baf471213af9761c1617bb12fd278e629041417" - integrity sha512-ZAuFgYjJzDNv77AjXRqzQGlQl4HdUM6j296ee4fwKVZfhDR9LAGxfvXjBkb06gNETPnN0sLqRm9Gxg4wZH6dXg== +"@babel/plugin-transform-modules-systemjs@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.7.4.tgz#cd98152339d3e763dfe838b7d4273edaf520bb30" + integrity sha512-y2c96hmcsUi6LrMqvmNDPBBiGCiQu0aYqpHatVVu6kD4mFEXKjyNxd/drc18XXAf9dv7UXjrZwBVmTTGaGP8iw== dependencies: - "@babel/helper-hoist-variables" "^7.7.0" + "@babel/helper-hoist-variables" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" babel-plugin-dynamic-import-node "^2.3.0" -"@babel/plugin-transform-modules-umd@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.7.0.tgz#d62c7da16670908e1d8c68ca0b5d4c0097b69966" - integrity sha512-u7eBA03zmUswQ9LQ7Qw0/ieC1pcAkbp5OQatbWUzY1PaBccvuJXUkYzoN1g7cqp7dbTu6Dp9bXyalBvD04AANA== +"@babel/plugin-transform-modules-umd@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.7.4.tgz#1027c355a118de0aae9fee00ad7813c584d9061f" + integrity sha512-u2B8TIi0qZI4j8q4C51ktfO7E3cQ0qnaXFI1/OXITordD40tt17g/sXqgNNCcMTcBFKrUPcGDx+TBJuZxLx7tw== dependencies: - "@babel/helper-module-transforms" "^7.7.0" + "@babel/helper-module-transforms" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-named-capturing-groups-regex@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.7.0.tgz#358e6fd869b9a4d8f5cbc79e4ed4fc340e60dcaf" - integrity sha512-+SicSJoKouPctL+j1pqktRVCgy+xAch1hWWTMy13j0IflnyNjaoskj+DwRQFimHbLqO3sq2oN2CXMvXq3Bgapg== +"@babel/plugin-transform-named-capturing-groups-regex@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.7.4.tgz#fb3bcc4ee4198e7385805007373d6b6f42c98220" + integrity sha512-jBUkiqLKvUWpv9GLSuHUFYdmHg0ujC1JEYoZUfeOOfNydZXp1sXObgyPatpcwjWgsdBGsagWW0cdJpX/DO2jMw== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.7.0" + "@babel/helper-create-regexp-features-plugin" "^7.7.4" -"@babel/plugin-transform-new-target@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.4.4.tgz#18d120438b0cc9ee95a47f2c72bc9768fbed60a5" - integrity sha512-r1z3T2DNGQwwe2vPGZMBNjioT2scgWzK9BCnDEh+46z8EEwXBq24uRzd65I7pjtugzPSj921aM15RpESgzsSuA== +"@babel/plugin-transform-new-target@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.7.4.tgz#4a0753d2d60639437be07b592a9e58ee00720167" + integrity sha512-CnPRiNtOG1vRodnsyGX37bHQleHE14B9dnnlgSeEs3ek3fHN1A1SScglTCg1sfbe7sRQ2BUcpgpTpWSfMKz3gg== dependencies: "@babel/helper-plugin-utils" "^7.0.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== +"@babel/plugin-transform-object-super@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.7.4.tgz#48488937a2d586c0148451bf51af9d7dda567262" + integrity sha512-ho+dAEhC2aRnff2JCA0SAK7V2R62zJd/7dmtoe7MHcso4C2mS+vZjn1Pb1pCVZvJs1mgsvv5+7sT+m3Bysb6eg== dependencies: "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-replace-supers" "^7.5.5" + "@babel/helper-replace-supers" "^7.7.4" -"@babel/plugin-transform-parameters@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.4.4.tgz#7556cf03f318bd2719fe4c922d2d808be5571e16" - integrity sha512-oMh5DUO1V63nZcu/ZVLQFqiihBGo4OpxJxR1otF50GMeCLiRx5nUdtokd+u9SuVJrvvuIh9OosRFPP4pIPnwmw== +"@babel/plugin-transform-parameters@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.7.4.tgz#da4555c97f39b51ac089d31c7380f03bca4075ce" + integrity sha512-VJwhVePWPa0DqE9vcfptaJSzNDKrWU/4FbYCjZERtmqEs05g3UMXnYMZoXja7JAJ7Y7sPZipwm/pGApZt7wHlw== dependencies: - "@babel/helper-call-delegate" "^7.4.4" - "@babel/helper-get-function-arity" "^7.0.0" + "@babel/helper-call-delegate" "^7.7.4" + "@babel/helper-get-function-arity" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-property-literals@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.2.0.tgz#03e33f653f5b25c4eb572c98b9485055b389e905" - integrity sha512-9q7Dbk4RhgcLp8ebduOpCbtjh7C0itoLYHXd9ueASKAG/is5PQtMR5VJGka9NKqGhYEGn5ITahd4h9QeBMylWQ== +"@babel/plugin-transform-property-literals@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.7.4.tgz#2388d6505ef89b266103f450f9167e6bd73f98c2" + integrity sha512-MatJhlC4iHsIskWYyawl53KuHrt+kALSADLQQ/HkhTjX954fkxIEh4q5slL4oRAnsm/eDoZ4q0CIZpcqBuxhJQ== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-regenerator@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.7.0.tgz#f1b20b535e7716b622c99e989259d7dd942dd9cc" - integrity sha512-AXmvnC+0wuj/cFkkS/HFHIojxH3ffSXE+ttulrqWjZZRaUOonfJc60e1wSNT4rV8tIunvu/R3wCp71/tLAa9xg== +"@babel/plugin-transform-regenerator@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.7.4.tgz#d18eac0312a70152d7d914cbed2dc3999601cfc0" + integrity sha512-e7MWl5UJvmPEwFJTwkBlPmqixCtr9yAASBqff4ggXTNicZiwbF8Eefzm6NVgfiBp7JdAGItecnctKTgH44q2Jw== dependencies: regenerator-transform "^0.14.0" -"@babel/plugin-transform-reserved-words@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.2.0.tgz#4792af87c998a49367597d07fedf02636d2e1634" - integrity sha512-fz43fqW8E1tAB3DKF19/vxbpib1fuyCwSPE418ge5ZxILnBhWyhtPgz8eh1RCGGJlwvksHkyxMxh0eenFi+kFw== +"@babel/plugin-transform-reserved-words@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.7.4.tgz#6a7cf123ad175bb5c69aec8f6f0770387ed3f1eb" + integrity sha512-OrPiUB5s5XvkCO1lS7D8ZtHcswIC57j62acAnJZKqGGnHP+TIc/ljQSrgdX/QyOTdEK5COAhuc820Hi1q2UgLQ== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@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" +"@babel/plugin-transform-shorthand-properties@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.7.4.tgz#74a0a9b2f6d67a684c6fbfd5f0458eb7ba99891e" + integrity sha512-q+suddWRfIcnyG5YiDP58sT65AJDZSUhXQDZE3r04AuqD6d/XLaQPPXSBzP2zGerkgBivqtQm9XKGLuHqBID6Q== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-spread@^7.6.2": - version "7.6.2" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.6.2.tgz#fc77cf798b24b10c46e1b51b1b88c2bf661bb8dd" - integrity sha512-DpSvPFryKdK1x+EDJYCy28nmAaIMdxmhot62jAXF/o99iA33Zj2Lmcp3vDmz+MUh0LNYVPvfj5iC3feb3/+PFg== +"@babel/plugin-transform-spread@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.7.4.tgz#aa673b356fe6b7e70d69b6e33a17fef641008578" + integrity sha512-8OSs0FLe5/80cndziPlg4R0K6HcWSM0zyNhHhLsmw/Nc5MaA49cAsnoJ/t/YZf8qkG7fD+UjTRaApVDB526d7Q== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-sticky-regex@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.2.0.tgz#a1e454b5995560a9c1e0d537dfc15061fd2687e1" +"@babel/plugin-transform-sticky-regex@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.7.4.tgz#ffb68c05090c30732076b1285dc1401b404a123c" + integrity sha512-Ls2NASyL6qtVe1H1hXts9yuEeONV2TJZmplLONkMPUG158CtmnrzW5Q5teibM5UVOFjG0D3IC5mzXR6pPpUY7A== dependencies: "@babel/helper-plugin-utils" "^7.0.0" "@babel/helper-regex" "^7.0.0" -"@babel/plugin-transform-template-literals@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.4.4.tgz#9d28fea7bbce637fb7612a0750989d8321d4bcb0" - integrity sha512-mQrEC4TWkhLN0z8ygIvEL9ZEToPhG5K7KDW3pzGqOfIGZ28Jb0POUkeWcoz8HnHvhFy6dwAT1j8OzqN8s804+g== +"@babel/plugin-transform-template-literals@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.7.4.tgz#1eb6411736dd3fe87dbd20cc6668e5121c17d604" + integrity sha512-sA+KxLwF3QwGj5abMHkHgshp9+rRz+oY9uoRil4CyLtgEuE/88dpkeWgNk5qKVsJE9iSfly3nvHapdRiIS2wnQ== dependencies: - "@babel/helper-annotate-as-pure" "^7.0.0" + "@babel/helper-annotate-as-pure" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-typeof-symbol@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.2.0.tgz#117d2bcec2fbf64b4b59d1f9819894682d29f2b2" +"@babel/plugin-transform-typeof-symbol@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.7.4.tgz#3174626214f2d6de322882e498a38e8371b2140e" + integrity sha512-KQPUQ/7mqe2m0B8VecdyaW5XcQYaePyl9R7IsKd+irzj6jvbhoGnRE+M0aNkyAzI07VfUQ9266L5xMARitV3wg== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-unicode-regex@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.7.0.tgz#743d9bcc44080e3cc7d49259a066efa30f9187a3" - integrity sha512-RrThb0gdrNwFAqEAAx9OWgtx6ICK69x7i9tCnMdVrxQwSDp/Abu9DXFU5Hh16VP33Rmxh04+NGW28NsIkFvFKA== +"@babel/plugin-transform-unicode-regex@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.7.4.tgz#a3c0f65b117c4c81c5b6484f2a5e7b95346b83ae" + integrity sha512-N77UUIV+WCvE+5yHw+oks3m18/umd7y392Zv7mYTpFqHtkpcc+QUz+gLJNTWVlWROIWeLqY0f3OjZxV5TcXnRw== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.7.0" + "@babel/helper-create-regexp-features-plugin" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" -"@babel/preset-env@7.7.1": - version "7.7.1" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.7.1.tgz#04a2ff53552c5885cf1083e291c8dd5490f744bb" - integrity sha512-/93SWhi3PxcVTDpSqC+Dp4YxUu3qZ4m7I76k0w73wYfn7bGVuRIO4QUz95aJksbS+AD1/mT1Ie7rbkT0wSplaA== +"@babel/preset-env@7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.7.4.tgz#ccaf309ae8d1ee2409c85a4e2b5e280ceee830f8" + integrity sha512-Dg+ciGJjwvC1NIe/DGblMbcGq1HOtKbw8RLl4nIjlfcILKEOkWT/vRqPpumswABEBVudii6dnVwrBtzD7ibm4g== dependencies: - "@babel/helper-module-imports" "^7.7.0" + "@babel/helper-module-imports" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-proposal-async-generator-functions" "^7.7.0" - "@babel/plugin-proposal-dynamic-import" "^7.7.0" - "@babel/plugin-proposal-json-strings" "^7.2.0" - "@babel/plugin-proposal-object-rest-spread" "^7.6.2" - "@babel/plugin-proposal-optional-catch-binding" "^7.2.0" - "@babel/plugin-proposal-unicode-property-regex" "^7.7.0" - "@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-syntax-top-level-await" "^7.7.0" - "@babel/plugin-transform-arrow-functions" "^7.2.0" - "@babel/plugin-transform-async-to-generator" "^7.7.0" - "@babel/plugin-transform-block-scoped-functions" "^7.2.0" - "@babel/plugin-transform-block-scoping" "^7.6.3" - "@babel/plugin-transform-classes" "^7.7.0" - "@babel/plugin-transform-computed-properties" "^7.2.0" - "@babel/plugin-transform-destructuring" "^7.6.0" - "@babel/plugin-transform-dotall-regex" "^7.7.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.7.0" - "@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.7.0" - "@babel/plugin-transform-modules-systemjs" "^7.7.0" - "@babel/plugin-transform-modules-umd" "^7.7.0" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.7.0" - "@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.7.0" - "@babel/plugin-transform-reserved-words" "^7.2.0" - "@babel/plugin-transform-shorthand-properties" "^7.2.0" - "@babel/plugin-transform-spread" "^7.6.2" - "@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.7.0" - "@babel/types" "^7.7.1" + "@babel/plugin-proposal-async-generator-functions" "^7.7.4" + "@babel/plugin-proposal-dynamic-import" "^7.7.4" + "@babel/plugin-proposal-json-strings" "^7.7.4" + "@babel/plugin-proposal-object-rest-spread" "^7.7.4" + "@babel/plugin-proposal-optional-catch-binding" "^7.7.4" + "@babel/plugin-proposal-unicode-property-regex" "^7.7.4" + "@babel/plugin-syntax-async-generators" "^7.7.4" + "@babel/plugin-syntax-dynamic-import" "^7.7.4" + "@babel/plugin-syntax-json-strings" "^7.7.4" + "@babel/plugin-syntax-object-rest-spread" "^7.7.4" + "@babel/plugin-syntax-optional-catch-binding" "^7.7.4" + "@babel/plugin-syntax-top-level-await" "^7.7.4" + "@babel/plugin-transform-arrow-functions" "^7.7.4" + "@babel/plugin-transform-async-to-generator" "^7.7.4" + "@babel/plugin-transform-block-scoped-functions" "^7.7.4" + "@babel/plugin-transform-block-scoping" "^7.7.4" + "@babel/plugin-transform-classes" "^7.7.4" + "@babel/plugin-transform-computed-properties" "^7.7.4" + "@babel/plugin-transform-destructuring" "^7.7.4" + "@babel/plugin-transform-dotall-regex" "^7.7.4" + "@babel/plugin-transform-duplicate-keys" "^7.7.4" + "@babel/plugin-transform-exponentiation-operator" "^7.7.4" + "@babel/plugin-transform-for-of" "^7.7.4" + "@babel/plugin-transform-function-name" "^7.7.4" + "@babel/plugin-transform-literals" "^7.7.4" + "@babel/plugin-transform-member-expression-literals" "^7.7.4" + "@babel/plugin-transform-modules-amd" "^7.7.4" + "@babel/plugin-transform-modules-commonjs" "^7.7.4" + "@babel/plugin-transform-modules-systemjs" "^7.7.4" + "@babel/plugin-transform-modules-umd" "^7.7.4" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.7.4" + "@babel/plugin-transform-new-target" "^7.7.4" + "@babel/plugin-transform-object-super" "^7.7.4" + "@babel/plugin-transform-parameters" "^7.7.4" + "@babel/plugin-transform-property-literals" "^7.7.4" + "@babel/plugin-transform-regenerator" "^7.7.4" + "@babel/plugin-transform-reserved-words" "^7.7.4" + "@babel/plugin-transform-shorthand-properties" "^7.7.4" + "@babel/plugin-transform-spread" "^7.7.4" + "@babel/plugin-transform-sticky-regex" "^7.7.4" + "@babel/plugin-transform-template-literals" "^7.7.4" + "@babel/plugin-transform-typeof-symbol" "^7.7.4" + "@babel/plugin-transform-unicode-regex" "^7.7.4" + "@babel/types" "^7.7.4" browserslist "^4.6.0" core-js-compat "^3.1.1" invariant "^2.2.2" @@ -643,7 +697,16 @@ "@babel/parser" "^7.7.0" "@babel/types" "^7.7.0" -"@babel/traverse@^7.1.0", "@babel/traverse@^7.4.4", "@babel/traverse@^7.7.0", "@babel/traverse@^7.7.2": +"@babel/template@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.7.4.tgz#428a7d9eecffe27deac0a98e23bf8e3675d2a77b" + integrity sha512-qUzihgVPguAzXCK7WXw8pqs6cEwi54s3E+HrejlkuWO6ivMKx9hZl3Y2fSXp9i5HgyWmj7RKP+ulaYnKM4yYxw== + dependencies: + "@babel/code-frame" "^7.0.0" + "@babel/parser" "^7.7.4" + "@babel/types" "^7.7.4" + +"@babel/traverse@^7.7.0", "@babel/traverse@^7.7.2": version "7.7.2" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.7.2.tgz#ef0a65e07a2f3c550967366b3d9b62a2dcbeae09" integrity sha512-TM01cXib2+rgIZrGJOLaHV/iZUAxf4A0dt5auY6KNZ+cm6aschuJGqKJM3ROTt3raPUdIDk9siAufIFEleRwtw== @@ -658,10 +721,25 @@ globals "^11.1.0" lodash "^4.17.13" -"@babel/types@^7.0.0", "@babel/types@^7.4.4", "@babel/types@^7.7.0", "@babel/types@^7.7.1", "@babel/types@^7.7.2": - version "7.7.2" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.7.2.tgz#550b82e5571dcd174af576e23f0adba7ffc683f7" - integrity sha512-YTf6PXoh3+eZgRCBzzP25Bugd2ngmpQVrk7kXX0i5N9BO7TFBtIgZYs7WtxtOGs8e6A4ZI7ECkbBCEHeXocvOA== +"@babel/traverse@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.7.4.tgz#9c1e7c60fb679fe4fcfaa42500833333c2058558" + integrity sha512-P1L58hQyupn8+ezVA2z5KBm4/Zr4lCC8dwKCMYzsa5jFMDMQAzaBNy9W5VjB+KAmBjb40U7a/H6ao+Xo+9saIw== + dependencies: + "@babel/code-frame" "^7.5.5" + "@babel/generator" "^7.7.4" + "@babel/helper-function-name" "^7.7.4" + "@babel/helper-split-export-declaration" "^7.7.4" + "@babel/parser" "^7.7.4" + "@babel/types" "^7.7.4" + debug "^4.1.0" + globals "^11.1.0" + lodash "^4.17.13" + +"@babel/types@^7.7.0", "@babel/types@^7.7.2", "@babel/types@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.7.4.tgz#516570d539e44ddf308c07569c258ff94fde9193" + integrity sha512-cz5Ji23KCi4T+YIE/BolWosrJuSmoZeN1EFnRtBwF+KKLi8GG/Z2c2hOJJeCXPk4mwk4QFvTmwIodJowXgttRA== dependencies: esutils "^2.0.2" lodash "^4.17.13" From 4ea67fa7061c23b24b4e9b85dbb0e8aea86b3895 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Sat, 23 Nov 2019 20:04:55 +0100 Subject: [PATCH 35/88] Bump @babel/parser from 7.7.3 to 7.7.4 (#7034) Bumps [@babel/parser](https://github.com/babel/babel) from 7.7.3 to 7.7.4. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md) - [Commits](https://github.com/babel/babel/compare/v7.7.3...v7.7.4) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index f1ebec2ee..2c291375f 100644 --- a/package.json +++ b/package.json @@ -16,7 +16,7 @@ "dependencies": { "@angular/compiler": "8.2.14", "@babel/code-frame": "7.5.5", - "@babel/parser": "7.7.3", + "@babel/parser": "7.7.4", "@glimmer/syntax": "0.41.0", "@iarna/toml": "2.2.3", "@typescript-eslint/typescript-estree": "2.8.0", diff --git a/yarn.lock b/yarn.lock index fa025df83..afcd0af9c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -279,10 +279,10 @@ esutils "^2.0.2" js-tokens "^4.0.0" -"@babel/parser@7.7.3", "@babel/parser@^7.7.0", "@babel/parser@^7.7.2": - version "7.7.3" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.7.3.tgz#5fad457c2529de476a248f75b0f090b3060af043" - integrity sha512-bqv+iCo9i+uLVbI0ILzKkvMorqxouI+GbV13ivcARXn9NNEabi2IEz912IgNpT/60BNXac5dgcfjb94NjsF33A== +"@babel/parser@7.7.4", "@babel/parser@^7.7.0", "@babel/parser@^7.7.2": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.7.4.tgz#75ab2d7110c2cf2fa949959afb05fa346d2231bb" + integrity sha512-jIwvLO0zCL+O/LmEJQjWA75MQTWwx3c3u2JOTDK5D3/9egrWRRA0/0hk9XXywYnXZVVpzrBYeIQTmhwUaePI9g== "@babel/parser@^7.7.4": version "7.7.4" From 4b6c6801a5f2a1f81e9bd45fce32007db01abbc3 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 25 Nov 2019 10:11:46 +0100 Subject: [PATCH 36/88] Bump rollup from 1.27.3 to 1.27.5 (#7047) Bumps [rollup](https://github.com/rollup/rollup) from 1.27.3 to 1.27.5. - [Release notes](https://github.com/rollup/rollup/releases) - [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md) - [Commits](https://github.com/rollup/rollup/compare/v1.27.3...v1.27.5) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 15 +++++---------- 2 files changed, 6 insertions(+), 11 deletions(-) diff --git a/package.json b/package.json index 2c291375f..fd0b3ea40 100644 --- a/package.json +++ b/package.json @@ -99,7 +99,7 @@ "mkdirp": "0.5.1", "prettier": "1.19.1", "rimraf": "3.0.0", - "rollup": "1.27.3", + "rollup": "1.27.5", "rollup-plugin-babel": "4.3.3", "rollup-plugin-commonjs": "10.1.0", "rollup-plugin-node-globals": "1.4.0", diff --git a/yarn.lock b/yarn.lock index afcd0af9c..c056c988a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -279,12 +279,7 @@ esutils "^2.0.2" js-tokens "^4.0.0" -"@babel/parser@7.7.4", "@babel/parser@^7.7.0", "@babel/parser@^7.7.2": - version "7.7.4" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.7.4.tgz#75ab2d7110c2cf2fa949959afb05fa346d2231bb" - integrity sha512-jIwvLO0zCL+O/LmEJQjWA75MQTWwx3c3u2JOTDK5D3/9egrWRRA0/0hk9XXywYnXZVVpzrBYeIQTmhwUaePI9g== - -"@babel/parser@^7.7.4": +"@babel/parser@7.7.4", "@babel/parser@^7.7.0", "@babel/parser@^7.7.2", "@babel/parser@^7.7.4": version "7.7.4" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.7.4.tgz#75ab2d7110c2cf2fa949959afb05fa346d2231bb" integrity sha512-jIwvLO0zCL+O/LmEJQjWA75MQTWwx3c3u2JOTDK5D3/9egrWRRA0/0hk9XXywYnXZVVpzrBYeIQTmhwUaePI9g== @@ -6017,10 +6012,10 @@ rollup-pluginutils@^2.3.1, rollup-pluginutils@^2.5.0, rollup-pluginutils@^2.6.0, dependencies: estree-walker "^0.6.1" -rollup@1.27.3: - version "1.27.3" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-1.27.3.tgz#0e427d9bee9e30e6017e89b942d88276ce26f9e2" - integrity sha512-79AEh4m5NPCz97GTuIoXpSFIMPyk2AiqVQp040baSRPXk/I4YMGt5/CR9GX5oEYEkxwBZoWLheaS1/w/FidfJw== +rollup@1.27.5: + version "1.27.5" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-1.27.5.tgz#d100fb0ffd8353575cb2057152547b9abfddfe59" + integrity sha512-8rfVdzuTg2kt8ObD9LNJpEwUN7B6lsl3sHc5fddtgICpLjpYeSf4m2+RftBzcCaBTMi1iYX3Ez8zFT4Gj2nJjg== dependencies: "@types/estree" "*" "@types/node" "*" From b43bb40400985abaed644a32b0c45792b6a99ee3 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 25 Nov 2019 10:12:12 +0100 Subject: [PATCH 37/88] Bump @babel/preset-env from 7.7.1 to 7.7.4 in /website (#7045) Bumps [@babel/preset-env](https://github.com/babel/babel) from 7.7.1 to 7.7.4. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md) - [Commits](https://github.com/babel/babel/compare/v7.7.1...v7.7.4) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- website/package.json | 2 +- website/yarn.lock | 818 +++++++++++++++++++++---------------------- 2 files changed, 410 insertions(+), 410 deletions(-) diff --git a/website/package.json b/website/package.json index 76696680e..6759c315e 100644 --- a/website/package.json +++ b/website/package.json @@ -19,7 +19,7 @@ "react-dom": "16.12.0" }, "devDependencies": { - "@babel/preset-env": "7.7.1", + "@babel/preset-env": "7.7.4", "@babel/preset-react": "7.7.0", "@sandhose/prettier-animated-logo": "1.0.3", "babel-loader": "8.0.6", diff --git a/website/yarn.lock b/website/yarn.lock index 03365fd90..401f63e62 100644 --- a/website/yarn.lock +++ b/website/yarn.lock @@ -46,27 +46,30 @@ lodash "^4.17.13" source-map "^0.5.0" -"@babel/helper-annotate-as-pure@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.0.0.tgz#323d39dd0b50e10c7c06ca7d7638e6864d8c5c32" - integrity sha512-3UYcJUj9kvSLbLbUIfQTqzcy5VX7GRZ/CCDrnOaZorFFM01aXp1+GJwuFGV4NDDoAS+mOUyHcO6UD/RfqOks3Q== +"@babel/generator@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.7.4.tgz#db651e2840ca9aa66f327dcec1dc5f5fa9611369" + integrity sha512-m5qo2WgdOJeyYngKImbkyQrnUN1mPceaG5BV+G0E3gWsa4l/jCSryWJdM2x8OuGAOyh+3d5pVYfZWCiNFtynxg== dependencies: - "@babel/types" "^7.0.0" + "@babel/types" "^7.7.4" + jsesc "^2.5.1" + lodash "^4.17.13" + source-map "^0.5.0" -"@babel/helper-annotate-as-pure@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.7.0.tgz#efc54032d43891fe267679e63f6860aa7dbf4a5e" - integrity sha512-k50CQxMlYTYo+GGyUGFwpxKVtxVJi9yh61sXZji3zYHccK9RYliZGSTOgci85T+r+0VFN2nWbGM04PIqwfrpMg== +"@babel/helper-annotate-as-pure@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.7.4.tgz#bb3faf1e74b74bd547e867e48f551fa6b098b6ce" + integrity sha512-2BQmQgECKzYKFPpiycoF9tlb5HA4lrVyAmLLVK177EcQAqjVLciUb2/R+n1boQ9y5ENV3uz2ZqiNw7QMBBw1Og== dependencies: - "@babel/types" "^7.7.0" + "@babel/types" "^7.7.4" -"@babel/helper-builder-binary-assignment-operator-visitor@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.1.0.tgz#6b69628dfe4087798e0c4ed98e3d4a6b2fbd2f5f" - integrity sha512-qNSR4jrmJ8M1VMM9tibvyRAHXQs2PmaksQF7c1CGJNipfe3D8p+wgNwgso/P2A2r2mdgBWAXljNWR0QRZAMW8w== +"@babel/helper-builder-binary-assignment-operator-visitor@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.7.4.tgz#5f73f2b28580e224b5b9bd03146a4015d6217f5f" + integrity sha512-Biq/d/WtvfftWZ9Uf39hbPBYDUo986m5Bb4zhkeYDGUllF43D+nUe5M6Vuo6/8JDK/0YX/uBdeoQpyaNhNugZQ== dependencies: - "@babel/helper-explode-assignable-expression" "^7.1.0" - "@babel/types" "^7.0.0" + "@babel/helper-explode-assignable-expression" "^7.7.4" + "@babel/types" "^7.7.4" "@babel/helper-builder-react-jsx@^7.7.0": version "7.7.0" @@ -76,14 +79,14 @@ "@babel/types" "^7.7.0" esutils "^2.0.0" -"@babel/helper-call-delegate@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/helper-call-delegate/-/helper-call-delegate-7.4.4.tgz#87c1f8ca19ad552a736a7a27b1c1fcf8b1ff1f43" - integrity sha512-l79boDFJ8S1c5hvQvG+rc+wHw6IuH7YldmRKsYtpbawsxURu/paVy57FZMomGK22/JckepaikOkY0MoAmdyOlQ== +"@babel/helper-call-delegate@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-call-delegate/-/helper-call-delegate-7.7.4.tgz#621b83e596722b50c0066f9dc37d3232e461b801" + integrity sha512-8JH9/B7J7tCYJ2PpWVpw9JhPuEVHztagNVuQAFBVFYluRMlpG7F1CgKEgGeL6KFqcsIa92ZYVj6DSc0XwmN1ZA== dependencies: - "@babel/helper-hoist-variables" "^7.4.4" - "@babel/traverse" "^7.4.4" - "@babel/types" "^7.4.4" + "@babel/helper-hoist-variables" "^7.7.4" + "@babel/traverse" "^7.7.4" + "@babel/types" "^7.7.4" "@babel/helper-create-class-features-plugin@^7.7.0": version "7.7.0" @@ -97,30 +100,30 @@ "@babel/helper-replace-supers" "^7.7.0" "@babel/helper-split-export-declaration" "^7.7.0" -"@babel/helper-create-regexp-features-plugin@^7.7.0": - version "7.7.2" - resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.7.2.tgz#6f20443778c8fce2af2ff4206284afc0ced65db6" - integrity sha512-pAil/ZixjTlrzNpjx+l/C/wJk002Wo7XbbZ8oujH/AoJ3Juv0iN/UTcPUHXKMFLqsfS0Hy6Aow8M31brUYBlQQ== +"@babel/helper-create-regexp-features-plugin@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.7.4.tgz#6d5762359fd34f4da1500e4cff9955b5299aaf59" + integrity sha512-Mt+jBKaxL0zfOIWrfQpnfYCN7/rS6GKx6CCCfuoqVVd+17R8zNDlzVYmIi9qyb2wOk002NsmSTDymkIygDUH7A== dependencies: "@babel/helper-regex" "^7.4.4" regexpu-core "^4.6.0" -"@babel/helper-define-map@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.7.0.tgz#60b0e9fd60def9de5054c38afde8c8ee409c7529" - integrity sha512-kPKWPb0dMpZi+ov1hJiwse9dWweZsz3V9rP4KdytnX1E7z3cTNmFGglwklzFPuqIcHLIY3bgKSs4vkwXXdflQA== +"@babel/helper-define-map@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.7.4.tgz#2841bf92eb8bd9c906851546fe6b9d45e162f176" + integrity sha512-v5LorqOa0nVQUvAUTUF3KPastvUt/HzByXNamKQ6RdJRTV7j8rLL+WB5C/MzzWAwOomxDhYFb1wLLxHqox86lg== dependencies: - "@babel/helper-function-name" "^7.7.0" - "@babel/types" "^7.7.0" + "@babel/helper-function-name" "^7.7.4" + "@babel/types" "^7.7.4" lodash "^4.17.13" -"@babel/helper-explode-assignable-expression@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.1.0.tgz#537fa13f6f1674df745b0c00ec8fe4e99681c8f6" - integrity sha512-NRQpfHrJ1msCHtKjbzs9YcMmJZOg6mQMmGRB+hbamEdG5PNpaSm95275VD92DvJKuyl0s2sFiDmMZ+EnnvufqA== +"@babel/helper-explode-assignable-expression@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.7.4.tgz#fa700878e008d85dc51ba43e9fb835cddfe05c84" + integrity sha512-2/SicuFrNSXsZNBxe5UGdLr+HZg+raWBLE9vC98bdYOKX/U6PY0mdGlYUJdtTDPSU0Lw0PNbKKDpwYHJLn2jLg== dependencies: - "@babel/traverse" "^7.1.0" - "@babel/types" "^7.0.0" + "@babel/traverse" "^7.7.4" + "@babel/types" "^7.7.4" "@babel/helper-function-name@^7.7.0": version "7.7.0" @@ -131,12 +134,14 @@ "@babel/template" "^7.7.0" "@babel/types" "^7.7.0" -"@babel/helper-get-function-arity@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz#83572d4320e2a4657263734113c42868b64e49c3" - integrity sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ== +"@babel/helper-function-name@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.7.4.tgz#ab6e041e7135d436d8f0a3eca15de5b67a341a2e" + integrity sha512-AnkGIdiBhEuiwdoMnKm7jfPfqItZhgRaZfMg1XX3bS25INOnLPjPG1Ppnajh8eqgt5kPJnfqrRHqFqmjKDZLzQ== dependencies: - "@babel/types" "^7.0.0" + "@babel/helper-get-function-arity" "^7.7.4" + "@babel/template" "^7.7.4" + "@babel/types" "^7.7.4" "@babel/helper-get-function-arity@^7.7.0": version "7.7.0" @@ -145,26 +150,19 @@ dependencies: "@babel/types" "^7.7.0" -"@babel/helper-hoist-variables@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.4.4.tgz#0298b5f25c8c09c53102d52ac4a98f773eb2850a" - integrity sha512-VYk2/H/BnYbZDDg39hr3t2kKyifAm1W6zHRfhx8jGjIHpQEBv9dry7oQ2f3+J703TLu69nYdxsovl0XYfcnK4w== +"@babel/helper-get-function-arity@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.7.4.tgz#cb46348d2f8808e632f0ab048172130e636005f0" + integrity sha512-QTGKEdCkjgzgfJ3bAyRwF4yyT3pg+vDgan8DSivq1eS0gwi+KGKE5x8kRcbeFTb/673mkO5SN1IZfmCfA5o+EA== dependencies: - "@babel/types" "^7.4.4" + "@babel/types" "^7.7.4" -"@babel/helper-hoist-variables@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.7.0.tgz#b4552e4cfe5577d7de7b183e193e84e4ec538c81" - integrity sha512-LUe/92NqsDAkJjjCEWkNe+/PcpnisvnqdlRe19FahVapa4jndeuJ+FBiTX1rcAKWKcJGE+C3Q3tuEuxkSmCEiQ== +"@babel/helper-hoist-variables@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.7.4.tgz#612384e3d823fdfaaf9fce31550fe5d4db0f3d12" + integrity sha512-wQC4xyvc1Jo/FnLirL6CEgPgPCa8M74tOdjWpRhQYapz5JC7u3NYU1zCVoVAGCE3EaIP9T1A3iW0WLJ+reZlpQ== dependencies: - "@babel/types" "^7.7.0" - -"@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.5.5" + "@babel/types" "^7.7.4" "@babel/helper-member-expression-to-functions@^7.7.0": version "7.7.0" @@ -173,44 +171,32 @@ dependencies: "@babel/types" "^7.7.0" -"@babel/helper-module-imports@^7.0.0", "@babel/helper-module-imports@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.7.0.tgz#99c095889466e5f7b6d66d98dffc58baaf42654d" - integrity sha512-Dv3hLKIC1jyfTkClvyEkYP2OlkzNvWs5+Q8WgPbxM5LMeorons7iPP91JM+DU7tRbhqA1ZeooPaMFvQrn23RHw== +"@babel/helper-member-expression-to-functions@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.7.4.tgz#356438e2569df7321a8326644d4b790d2122cb74" + integrity sha512-9KcA1X2E3OjXl/ykfMMInBK+uVdfIVakVe7W7Lg3wfXUNyS3Q1HWLFRwZIjhqiCGbslummPDnmb7vIekS0C1vw== dependencies: - "@babel/types" "^7.7.0" + "@babel/types" "^7.7.4" -"@babel/helper-module-transforms@^7.1.0": - version "7.2.2" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.2.2.tgz#ab2f8e8d231409f8370c883d20c335190284b963" - integrity sha512-YRD7I6Wsv+IHuTPkAmAS4HhY0dkPobgLftHp0cRGZSdrRvmZY8rFvae/GVu3bD00qscuvK3WPHB3YdNpBXUqrA== +"@babel/helper-module-imports@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.7.4.tgz#e5a92529f8888bf319a6376abfbd1cebc491ad91" + integrity sha512-dGcrX6K9l8258WFjyDLJwuVKxR4XZfU0/vTUgOQYWEnRD8mgr+p4d6fCUMq/ys0h4CCt/S5JhbvtyErjWouAUQ== dependencies: - "@babel/helper-module-imports" "^7.0.0" - "@babel/helper-simple-access" "^7.1.0" - "@babel/helper-split-export-declaration" "^7.0.0" - "@babel/template" "^7.2.2" - "@babel/types" "^7.2.2" - lodash "^4.17.10" + "@babel/types" "^7.7.4" -"@babel/helper-module-transforms@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.7.0.tgz#154a69f0c5b8fd4d39e49750ff7ac4faa3f36786" - integrity sha512-rXEefBuheUYQyX4WjV19tuknrJFwyKw0HgzRwbkyTbB+Dshlq7eqkWbyjzToLrMZk/5wKVKdWFluiAsVkHXvuQ== +"@babel/helper-module-transforms@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.7.4.tgz#8d7cdb1e1f8ea3d8c38b067345924ac4f8e0879a" + integrity sha512-ehGBu4mXrhs0FxAqN8tWkzF8GSIGAiEumu4ONZ/hD9M88uHcD+Yu2ttKfOCgwzoesJOJrtQh7trI5YPbRtMmnA== dependencies: - "@babel/helper-module-imports" "^7.7.0" - "@babel/helper-simple-access" "^7.7.0" - "@babel/helper-split-export-declaration" "^7.7.0" - "@babel/template" "^7.7.0" - "@babel/types" "^7.7.0" + "@babel/helper-module-imports" "^7.7.4" + "@babel/helper-simple-access" "^7.7.4" + "@babel/helper-split-export-declaration" "^7.7.4" + "@babel/template" "^7.7.4" + "@babel/types" "^7.7.4" lodash "^4.17.13" -"@babel/helper-optimise-call-expression@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.0.0.tgz#a2920c5702b073c15de51106200aa8cad20497d5" - integrity sha512-u8nd9NQePYNQV8iPWu/pLLYBqZBa4ZaY1YWRFMuxrid94wKI1QNt67NEZ7GAe5Kc/0LLScbim05xZFWkAdrj9g== - dependencies: - "@babel/types" "^7.0.0" - "@babel/helper-optimise-call-expression@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.7.0.tgz#4f66a216116a66164135dc618c5d8b7a959f9365" @@ -218,6 +204,13 @@ dependencies: "@babel/types" "^7.7.0" +"@babel/helper-optimise-call-expression@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.7.4.tgz#034af31370d2995242aa4df402c3b7794b2dcdf2" + integrity sha512-VB7gWZ2fDkSuqW6b1AKXkJWO5NyNI3bFL/kK79/30moK57blr6NbH8xcl2XcKCwOmJosftWunZqfO84IGq3ZZg== + dependencies: + "@babel/types" "^7.7.4" + "@babel/helper-plugin-utils@^7.0.0": version "7.0.0" resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz#bbb3fbee98661c569034237cc03967ba99b4f250" @@ -237,26 +230,16 @@ dependencies: lodash "^4.17.13" -"@babel/helper-remap-async-to-generator@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.7.0.tgz#4d69ec653e8bff5bce62f5d33fc1508f223c75a7" - integrity sha512-pHx7RN8X0UNHPB/fnuDnRXVZ316ZigkO8y8D835JlZ2SSdFKb6yH9MIYRU4fy/KPe5sPHDFOPvf8QLdbAGGiyw== +"@babel/helper-remap-async-to-generator@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.7.4.tgz#c68c2407350d9af0e061ed6726afb4fff16d0234" + integrity sha512-Sk4xmtVdM9sA/jCI80f+KS+Md+ZHIpjuqmYPk1M7F/upHou5e4ReYmExAiu6PVe65BhJPZA2CY9x9k4BqE5klw== dependencies: - "@babel/helper-annotate-as-pure" "^7.7.0" - "@babel/helper-wrap-function" "^7.7.0" - "@babel/template" "^7.7.0" - "@babel/traverse" "^7.7.0" - "@babel/types" "^7.7.0" - -"@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.5.5" - "@babel/helper-optimise-call-expression" "^7.0.0" - "@babel/traverse" "^7.5.5" - "@babel/types" "^7.5.5" + "@babel/helper-annotate-as-pure" "^7.7.4" + "@babel/helper-wrap-function" "^7.7.4" + "@babel/template" "^7.7.4" + "@babel/traverse" "^7.7.4" + "@babel/types" "^7.7.4" "@babel/helper-replace-supers@^7.7.0": version "7.7.0" @@ -268,28 +251,23 @@ "@babel/traverse" "^7.7.0" "@babel/types" "^7.7.0" -"@babel/helper-simple-access@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.1.0.tgz#65eeb954c8c245beaa4e859da6188f39d71e585c" - integrity sha512-Vk+78hNjRbsiu49zAPALxTb+JUQCz1aolpd8osOF16BGnLtseD21nbHgLPGUwrXEurZgiCOUmvs3ExTu4F5x6w== +"@babel/helper-replace-supers@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.7.4.tgz#3c881a6a6a7571275a72d82e6107126ec9e2cdd2" + integrity sha512-pP0tfgg9hsZWo5ZboYGuBn/bbYT/hdLPVSS4NMmiRJdwWhP0IznPwN9AE1JwyGsjSPLC364I0Qh5p+EPkGPNpg== dependencies: - "@babel/template" "^7.1.0" - "@babel/types" "^7.0.0" + "@babel/helper-member-expression-to-functions" "^7.7.4" + "@babel/helper-optimise-call-expression" "^7.7.4" + "@babel/traverse" "^7.7.4" + "@babel/types" "^7.7.4" -"@babel/helper-simple-access@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.7.0.tgz#97a8b6c52105d76031b86237dc1852b44837243d" - integrity sha512-AJ7IZD7Eem3zZRuj5JtzFAptBw7pMlS3y8Qv09vaBWoFsle0d1kAn5Wq6Q9MyBXITPOKnxwkZKoAm4bopmv26g== +"@babel/helper-simple-access@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.7.4.tgz#a169a0adb1b5f418cfc19f22586b2ebf58a9a294" + integrity sha512-zK7THeEXfan7UlWsG2A6CI/L9jVnI5+xxKZOdej39Y0YtDYKx9raHk5F2EtK9K8DHRTihYwg20ADt9S36GR78A== dependencies: - "@babel/template" "^7.7.0" - "@babel/types" "^7.7.0" - -"@babel/helper-split-export-declaration@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0.tgz#3aae285c0311c2ab095d997b8c9a94cad547d813" - integrity sha512-MXkOJqva62dfC0w85mEf/LucPPS/1+04nmmRMPEBUB++hiiThQ2zPtX/mEWQ3mtzCEjIJvPY8nuwxXtQeQwUag== - dependencies: - "@babel/types" "^7.0.0" + "@babel/template" "^7.7.4" + "@babel/types" "^7.7.4" "@babel/helper-split-export-declaration@^7.7.0": version "7.7.0" @@ -298,15 +276,22 @@ dependencies: "@babel/types" "^7.7.0" -"@babel/helper-wrap-function@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.7.0.tgz#15af3d3e98f8417a60554acbb6c14e75e0b33b74" - integrity sha512-sd4QjeMgQqzshSjecZjOp8uKfUtnpmCyQhKQrVJBBgeHAB/0FPi33h3AbVlVp07qQtMD4QgYSzaMI7VwncNK/w== +"@babel/helper-split-export-declaration@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.7.4.tgz#57292af60443c4a3622cf74040ddc28e68336fd8" + integrity sha512-guAg1SXFcVr04Guk9eq0S4/rWS++sbmyqosJzVs8+1fH5NI+ZcmkaSkc7dmtAFbHFva6yRJnjW3yAcGxjueDug== dependencies: - "@babel/helper-function-name" "^7.7.0" - "@babel/template" "^7.7.0" - "@babel/traverse" "^7.7.0" - "@babel/types" "^7.7.0" + "@babel/types" "^7.7.4" + +"@babel/helper-wrap-function@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.7.4.tgz#37ab7fed5150e22d9d7266e830072c0cdd8baace" + integrity sha512-VsfzZt6wmsocOaVU0OokwrIytHND55yvyT4BPB9AIIgwr8+x7617hetdJTsuGwygN5RC6mxA9EJztTjuwm2ofg== + dependencies: + "@babel/helper-function-name" "^7.7.4" + "@babel/template" "^7.7.4" + "@babel/traverse" "^7.7.4" + "@babel/types" "^7.7.4" "@babel/helpers@^7.7.0": version "7.7.0" @@ -326,24 +311,24 @@ esutils "^2.0.2" js-tokens "^4.0.0" -"@babel/parser@^7.2.2": - version "7.2.3" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.2.3.tgz#32f5df65744b70888d17872ec106b02434ba1489" - integrity sha512-0LyEcVlfCoFmci8mXx8A5oIkpkOgyo8dRHtxBnK9RRBwxO2+JZPNsqtVEZQ7mJFPxnXF9lfmU24mHOPI0qnlkA== - "@babel/parser@^7.7.0", "@babel/parser@^7.7.2": version "7.7.2" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.7.2.tgz#ea8334dc77416bfd9473eb470fd00d8245b3943b" integrity sha512-DDaR5e0g4ZTb9aP7cpSZLkACEBdoLGwJDWgHtBhrGX7Q1RjhdoMOfexICj5cqTAtpowjGQWfcvfnQG7G2kAB5w== -"@babel/plugin-proposal-async-generator-functions@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.7.0.tgz#83ef2d6044496b4c15d8b4904e2219e6dccc6971" - integrity sha512-ot/EZVvf3mXtZq0Pd0+tSOfGWMizqmOohXmNZg6LNFjHOV+wOPv7BvVYh8oPR8LhpIP3ye8nNooKL50YRWxpYA== +"@babel/parser@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.7.4.tgz#75ab2d7110c2cf2fa949959afb05fa346d2231bb" + integrity sha512-jIwvLO0zCL+O/LmEJQjWA75MQTWwx3c3u2JOTDK5D3/9egrWRRA0/0hk9XXywYnXZVVpzrBYeIQTmhwUaePI9g== + +"@babel/plugin-proposal-async-generator-functions@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.7.4.tgz#0351c5ac0a9e927845fffd5b82af476947b7ce6d" + integrity sha512-1ypyZvGRXriY/QP668+s8sFr2mqinhkRDMPSQLNghCQE+GAkFtp+wkHVvg2+Hdki8gwP+NFzJBJ/N1BfzCCDEw== dependencies: "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-remap-async-to-generator" "^7.7.0" - "@babel/plugin-syntax-async-generators" "^7.2.0" + "@babel/helper-remap-async-to-generator" "^7.7.4" + "@babel/plugin-syntax-async-generators" "^7.7.4" "@babel/plugin-proposal-class-properties@^7.7.0": version "7.7.0" @@ -353,64 +338,64 @@ "@babel/helper-create-class-features-plugin" "^7.7.0" "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-proposal-dynamic-import@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.7.0.tgz#dc02a8bad8d653fb59daf085516fa416edd2aa7f" - integrity sha512-7poL3Xi+QFPC7sGAzEIbXUyYzGJwbc2+gSD0AkiC5k52kH2cqHdqxm5hNFfLW3cRSTcx9bN0Fl7/6zWcLLnKAQ== +"@babel/plugin-proposal-dynamic-import@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.7.4.tgz#dde64a7f127691758cbfed6cf70de0fa5879d52d" + integrity sha512-StH+nGAdO6qDB1l8sZ5UBV8AC3F2VW2I8Vfld73TMKyptMU9DY5YsJAS8U81+vEtxcH3Y/La0wG0btDrhpnhjQ== dependencies: "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-dynamic-import" "^7.2.0" + "@babel/plugin-syntax-dynamic-import" "^7.7.4" -"@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" - integrity sha512-MAFV1CA/YVmYwZG0fBQyXhmj0BHCB5egZHCKWIFVv/XCxAeVGIHfos3SwDck4LvCllENIAg7xMKOG5kH0dzyUg== +"@babel/plugin-proposal-json-strings@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.7.4.tgz#7700a6bfda771d8dc81973249eac416c6b4c697d" + integrity sha512-wQvt3akcBTfLU/wYoqm/ws7YOAQKu8EVJEvHip/mzkNtjaclQoCCIqKXFP5/eyfnfbQCDV3OLRIK3mIVyXuZlw== dependencies: "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-json-strings" "^7.2.0" + "@babel/plugin-syntax-json-strings" "^7.7.4" -"@babel/plugin-proposal-object-rest-spread@^7.6.2": - version "7.6.2" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.6.2.tgz#8ffccc8f3a6545e9f78988b6bf4fe881b88e8096" - integrity sha512-LDBXlmADCsMZV1Y9OQwMc0MyGZ8Ta/zlD9N67BfQT8uYwkRswiu2hU6nJKrjrt/58aH/vqfQlR/9yId/7A2gWw== +"@babel/plugin-proposal-object-rest-spread@^7.6.2", "@babel/plugin-proposal-object-rest-spread@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.7.4.tgz#cc57849894a5c774214178c8ab64f6334ec8af71" + integrity sha512-rnpnZR3/iWKmiQyJ3LKJpSwLDcX/nSXhdLk4Aq/tXOApIvyu7qoabrige0ylsAJffaUC51WiBu209Q0U+86OWQ== dependencies: "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-object-rest-spread" "^7.2.0" + "@babel/plugin-syntax-object-rest-spread" "^7.7.4" -"@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" - integrity sha512-mgYj3jCcxug6KUcX4OBoOJz3CMrwRfQELPQ5560F70YQUBZB7uac9fqaWamKR1iWUzGiK2t0ygzjTScZnVz75g== +"@babel/plugin-proposal-optional-catch-binding@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.7.4.tgz#ec21e8aeb09ec6711bc0a39ca49520abee1de379" + integrity sha512-DyM7U2bnsQerCQ+sejcTNZh8KQEUuC3ufzdnVnSiUv/qoGJp2Z3hanKL18KDhsBT5Wj6a7CMT5mdyCNJsEaA9w== dependencies: "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-optional-catch-binding" "^7.2.0" + "@babel/plugin-syntax-optional-catch-binding" "^7.7.4" -"@babel/plugin-proposal-unicode-property-regex@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.7.0.tgz#549fe1717a1bd0a2a7e63163841cb37e78179d5d" - integrity sha512-mk34H+hp7kRBWJOOAR0ZMGCydgKMD4iN9TpDRp3IIcbunltxEY89XSimc6WbtSLCDrwcdy/EEw7h5CFCzxTchw== +"@babel/plugin-proposal-unicode-property-regex@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.7.4.tgz#7c239ccaf09470dbe1d453d50057460e84517ebb" + integrity sha512-cHgqHgYvffluZk85dJ02vloErm3Y6xtH+2noOBOJ2kXOJH3aVCDnj5eR/lVNlTnYu4hndAPJD3rTFjW3qee0PA== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.7.0" + "@babel/helper-create-regexp-features-plugin" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-syntax-async-generators@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.2.0.tgz#69e1f0db34c6f5a0cf7e2b3323bf159a76c8cb7f" - integrity sha512-1ZrIRBv2t0GSlcwVoQ6VgSLpLgiN/FVQUzt9znxo7v2Ov4jJrs8RY8tv0wvDmFN3qIdMKWrmMMW6yZ0G19MfGg== +"@babel/plugin-syntax-async-generators@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.7.4.tgz#331aaf310a10c80c44a66b238b6e49132bd3c889" + integrity sha512-Li4+EjSpBgxcsmeEF8IFcfV/+yJGxHXDirDkEoyFjumuwbmfCVHUt0HuowD/iGM7OhIRyXJH9YXxqiH6N815+g== dependencies: "@babel/helper-plugin-utils" "^7.0.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== +"@babel/plugin-syntax-dynamic-import@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.7.4.tgz#29ca3b4415abfe4a5ec381e903862ad1a54c3aec" + integrity sha512-jHQW0vbRGvwQNgyVxwDh4yuXu4bH1f5/EICJLAhl1SblLs2CDhrsmCk+v5XLdE9wxtAFRyxx+P//Iw+a5L/tTg== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-syntax-json-strings@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.2.0.tgz#72bd13f6ffe1d25938129d2a186b11fd62951470" - integrity sha512-5UGYnMSLRE1dqqZwug+1LISpA403HzlSfsg6P9VXU6TBjcSHeNlw4DxDx7LgpF+iKZoOG/+uzqoRHTdcUpiZNg== +"@babel/plugin-syntax-json-strings@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.7.4.tgz#86e63f7d2e22f9e27129ac4e83ea989a382e86cc" + integrity sha512-QpGupahTQW1mHRXddMG5srgpHWqRLwJnJZKXTigB9RPFCCGbDGCgBeM/iC82ICXp414WeYx/tD54w7M2qRqTMg== dependencies: "@babel/helper-plugin-utils" "^7.0.0" @@ -421,209 +406,209 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-syntax-object-rest-spread@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.2.0.tgz#3b7a3e733510c57e820b9142a6579ac8b0dfad2e" - integrity sha512-t0JKGgqk2We+9may3t0xDdmneaXmyxq0xieYcKHxIsrJO64n1OiMWNUtc5gQK1PA0NpdCRrtZp4z+IUaKugrSA== +"@babel/plugin-syntax-object-rest-spread@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.7.4.tgz#47cf220d19d6d0d7b154304701f468fc1cc6ff46" + integrity sha512-mObR+r+KZq0XhRVS2BrBKBpr5jqrqzlPvS9C9vuOf5ilSwzloAl7RPWLrgKdWS6IreaVrjHxTjtyqFiOisaCwg== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-syntax-optional-catch-binding@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.2.0.tgz#a94013d6eda8908dfe6a477e7f9eda85656ecf5c" - integrity sha512-bDe4xKNhb0LI7IvZHiA13kff0KEfaGX/Hv4lMA9+7TEc63hMNvfKo6ZFpXhKuEp+II/q35Gc4NoMeDZyaUbj9w== +"@babel/plugin-syntax-optional-catch-binding@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.7.4.tgz#a3e38f59f4b6233867b4a92dcb0ee05b2c334aa6" + integrity sha512-4ZSuzWgFxqHRE31Glu+fEr/MirNZOMYmD/0BhBWyLyOOQz/gTAl7QmWm2hX1QxEIXsr2vkdlwxIzTyiYRC4xcQ== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-syntax-top-level-await@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.7.0.tgz#f5699549f50bbe8d12b1843a4e82f0a37bb65f4d" - integrity sha512-hi8FUNiFIY1fnUI2n1ViB1DR0R4QeK4iHcTlW6aJkrPoTdb8Rf1EMQ6GT3f67DDkYyWgew9DFoOZ6gOoEsdzTA== +"@babel/plugin-syntax-top-level-await@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.7.4.tgz#bd7d8fa7b9fee793a36e4027fd6dd1aa32f946da" + integrity sha512-wdsOw0MvkL1UIgiQ/IFr3ETcfv1xb8RMM0H9wbiDyLaJFyiDg5oZvDLCXosIXmFeIlweML5iOBXAkqddkYNizg== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-arrow-functions@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.2.0.tgz#9aeafbe4d6ffc6563bf8f8372091628f00779550" - integrity sha512-ER77Cax1+8/8jCB9fo4Ud161OZzWN5qawi4GusDuRLcDbDG+bIGYY20zb2dfAFdTRGzrfq2xZPvF0R64EHnimg== +"@babel/plugin-transform-arrow-functions@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.7.4.tgz#76309bd578addd8aee3b379d809c802305a98a12" + integrity sha512-zUXy3e8jBNPiffmqkHRNDdZM2r8DWhCB7HhcoyZjiK1TxYEluLHAvQuYnTT+ARqRpabWqy/NHkO6e3MsYB5YfA== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-async-to-generator@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.7.0.tgz#e2b84f11952cf5913fe3438b7d2585042772f492" - integrity sha512-vLI2EFLVvRBL3d8roAMqtVY0Bm9C1QzLkdS57hiKrjUBSqsQYrBsMCeOg/0KK7B0eK9V71J5mWcha9yyoI2tZw== +"@babel/plugin-transform-async-to-generator@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.7.4.tgz#694cbeae6d613a34ef0292713fa42fb45c4470ba" + integrity sha512-zpUTZphp5nHokuy8yLlyafxCJ0rSlFoSHypTUWgpdwoDXWQcseaect7cJ8Ppk6nunOM6+5rPMkod4OYKPR5MUg== dependencies: - "@babel/helper-module-imports" "^7.7.0" + "@babel/helper-module-imports" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-remap-async-to-generator" "^7.7.0" + "@babel/helper-remap-async-to-generator" "^7.7.4" -"@babel/plugin-transform-block-scoped-functions@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.2.0.tgz#5d3cc11e8d5ddd752aa64c9148d0db6cb79fd190" - integrity sha512-ntQPR6q1/NKuphly49+QiQiTN0O63uOwjdD6dhIjSWBI5xlrbUFh720TIpzBhpnrLfv2tNH/BXvLIab1+BAI0w== +"@babel/plugin-transform-block-scoped-functions@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.7.4.tgz#d0d9d5c269c78eaea76227ace214b8d01e4d837b" + integrity sha512-kqtQzwtKcpPclHYjLK//3lH8OFsCDuDJBaFhVwf8kqdnF6MN4l618UDlcA7TfRs3FayrHj+svYnSX8MC9zmUyQ== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-block-scoping@^7.6.3": - version "7.6.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.6.3.tgz#6e854e51fbbaa84351b15d4ddafe342f3a5d542a" - integrity sha512-7hvrg75dubcO3ZI2rjYTzUrEuh1E9IyDEhhB6qfcooxhDA33xx2MasuLVgdxzcP6R/lipAC6n9ub9maNW6RKdw== +"@babel/plugin-transform-block-scoping@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.7.4.tgz#200aad0dcd6bb80372f94d9e628ea062c58bf224" + integrity sha512-2VBe9u0G+fDt9B5OV5DQH4KBf5DoiNkwFKOz0TCvBWvdAN2rOykCTkrL+jTLxfCAm76l9Qo5OqL7HBOx2dWggg== dependencies: "@babel/helper-plugin-utils" "^7.0.0" lodash "^4.17.13" -"@babel/plugin-transform-classes@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.7.0.tgz#b411ecc1b8822d24b81e5d184f24149136eddd4a" - integrity sha512-/b3cKIZwGeUesZheU9jNYcwrEA7f/Bo4IdPmvp7oHgvks2majB5BoT5byAql44fiNQYOPzhk2w8DbgfuafkMoA== +"@babel/plugin-transform-classes@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.7.4.tgz#c92c14be0a1399e15df72667067a8f510c9400ec" + integrity sha512-sK1mjWat7K+buWRuImEzjNf68qrKcrddtpQo3swi9j7dUcG6y6R6+Di039QN2bD1dykeswlagupEmpOatFHHUg== dependencies: - "@babel/helper-annotate-as-pure" "^7.7.0" - "@babel/helper-define-map" "^7.7.0" - "@babel/helper-function-name" "^7.7.0" - "@babel/helper-optimise-call-expression" "^7.7.0" + "@babel/helper-annotate-as-pure" "^7.7.4" + "@babel/helper-define-map" "^7.7.4" + "@babel/helper-function-name" "^7.7.4" + "@babel/helper-optimise-call-expression" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-replace-supers" "^7.7.0" - "@babel/helper-split-export-declaration" "^7.7.0" + "@babel/helper-replace-supers" "^7.7.4" + "@babel/helper-split-export-declaration" "^7.7.4" globals "^11.1.0" -"@babel/plugin-transform-computed-properties@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.2.0.tgz#83a7df6a658865b1c8f641d510c6f3af220216da" - integrity sha512-kP/drqTxY6Xt3NNpKiMomfgkNn4o7+vKxK2DDKcBG9sHj51vHqMBGy8wbDS/J4lMxnqs153/T3+DmCEAkC5cpA== +"@babel/plugin-transform-computed-properties@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.7.4.tgz#e856c1628d3238ffe12d668eb42559f79a81910d" + integrity sha512-bSNsOsZnlpLLyQew35rl4Fma3yKWqK3ImWMSC/Nc+6nGjC9s5NFWAer1YQ899/6s9HxO2zQC1WoFNfkOqRkqRQ== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-destructuring@^7.6.0": - version "7.6.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.6.0.tgz#44bbe08b57f4480094d57d9ffbcd96d309075ba6" - integrity sha512-2bGIS5P1v4+sWTCnKNDZDxbGvEqi0ijeqM/YqHtVGrvG2y0ySgnEEhXErvE9dA0bnIzY9bIzdFK0jFA46ASIIQ== +"@babel/plugin-transform-destructuring@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.7.4.tgz#2b713729e5054a1135097b6a67da1b6fe8789267" + integrity sha512-4jFMXI1Cu2aXbcXXl8Lr6YubCn6Oc7k9lLsu8v61TZh+1jny2BWmdtvY9zSUlLdGUvcy9DMAWyZEOqjsbeg/wA== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-dotall-regex@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.7.0.tgz#c5c9ecacab3a5e0c11db6981610f0c32fd698b3b" - integrity sha512-3QQlF7hSBnSuM1hQ0pS3pmAbWLax/uGNCbPBND9y+oJ4Y776jsyujG2k0Sn2Aj2a0QwVOiOFL5QVPA7spjvzSA== +"@babel/plugin-transform-dotall-regex@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.7.4.tgz#f7ccda61118c5b7a2599a72d5e3210884a021e96" + integrity sha512-mk0cH1zyMa/XHeb6LOTXTbG7uIJ8Rrjlzu91pUx/KS3JpcgaTDwMS8kM+ar8SLOvlL2Lofi4CGBAjCo3a2x+lw== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.7.0" + "@babel/helper-create-regexp-features-plugin" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.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== +"@babel/plugin-transform-duplicate-keys@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.7.4.tgz#3d21731a42e3f598a73835299dd0169c3b90ac91" + integrity sha512-g1y4/G6xGWMD85Tlft5XedGaZBCIVN+/P0bs6eabmcPP9egFleMAo65OOjlhcz1njpwagyY3t0nsQC9oTFegJA== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-exponentiation-operator@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.2.0.tgz#a63868289e5b4007f7054d46491af51435766008" - integrity sha512-umh4hR6N7mu4Elq9GG8TOu9M0bakvlsREEC+ialrQN6ABS4oDQ69qJv1VtR3uxlKMCQMCvzk7vr17RHKcjx68A== +"@babel/plugin-transform-exponentiation-operator@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.7.4.tgz#dd30c0191e3a1ba19bcc7e389bdfddc0729d5db9" + integrity sha512-MCqiLfCKm6KEA1dglf6Uqq1ElDIZwFuzz1WH5mTf8k2uQSxEJMbOIEh7IZv7uichr7PMfi5YVSrr1vz+ipp7AQ== dependencies: - "@babel/helper-builder-binary-assignment-operator-visitor" "^7.1.0" + "@babel/helper-builder-binary-assignment-operator-visitor" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-for-of@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.4.4.tgz#0267fc735e24c808ba173866c6c4d1440fc3c556" - integrity sha512-9T/5Dlr14Z9TIEXLXkt8T1DU7F24cbhwhMNUziN3hB1AXoZcdzPcTiKGRn/6iOymDqtTKWnr/BtRKN9JwbKtdQ== +"@babel/plugin-transform-for-of@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.7.4.tgz#248800e3a5e507b1f103d8b4ca998e77c63932bc" + integrity sha512-zZ1fD1B8keYtEcKF+M1TROfeHTKnijcVQm0yO/Yu1f7qoDoxEIc/+GX6Go430Bg84eM/xwPFp0+h4EbZg7epAA== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-function-name@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.7.0.tgz#0fa786f1eef52e3b7d4fc02e54b2129de8a04c2a" - integrity sha512-P5HKu0d9+CzZxP5jcrWdpe7ZlFDe24bmqP6a6X8BHEBl/eizAsY8K6LX8LASZL0Jxdjm5eEfzp+FIrxCm/p8bA== +"@babel/plugin-transform-function-name@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.7.4.tgz#75a6d3303d50db638ff8b5385d12451c865025b1" + integrity sha512-E/x09TvjHNhsULs2IusN+aJNRV5zKwxu1cpirZyRPw+FyyIKEHPXTsadj48bVpc1R5Qq1B5ZkzumuFLytnbT6g== dependencies: - "@babel/helper-function-name" "^7.7.0" + "@babel/helper-function-name" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-literals@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.2.0.tgz#690353e81f9267dad4fd8cfd77eafa86aba53ea1" - integrity sha512-2ThDhm4lI4oV7fVQ6pNNK+sx+c/GM5/SaML0w/r4ZB7sAneD/piDJtwdKlNckXeyGK7wlwg2E2w33C/Hh+VFCg== +"@babel/plugin-transform-literals@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.7.4.tgz#27fe87d2b5017a2a5a34d1c41a6b9f6a6262643e" + integrity sha512-X2MSV7LfJFm4aZfxd0yLVFrEXAgPqYoDG53Br/tCKiKYfX0MjVjQeWPIhPHHsCqzwQANq+FLN786fF5rgLS+gw== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-member-expression-literals@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.2.0.tgz#fa10aa5c58a2cb6afcf2c9ffa8cb4d8b3d489a2d" - integrity sha512-HiU3zKkSU6scTidmnFJ0bMX8hz5ixC93b4MHMiYebmk2lUVNGOboPsqQvx5LzooihijUoLR/v7Nc1rbBtnc7FA== +"@babel/plugin-transform-member-expression-literals@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.7.4.tgz#aee127f2f3339fc34ce5e3055d7ffbf7aa26f19a" + integrity sha512-9VMwMO7i69LHTesL0RdGy93JU6a+qOPuvB4F4d0kR0zyVjJRVJRaoaGjhtki6SzQUu8yen/vxPKN6CWnCUw6bA== dependencies: "@babel/helper-plugin-utils" "^7.0.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== +"@babel/plugin-transform-modules-amd@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.7.4.tgz#276b3845ca2b228f2995e453adc2e6f54d72fb71" + integrity sha512-/542/5LNA18YDtg1F+QHvvUSlxdvjZoD/aldQwkq+E3WCkbEjNSN9zdrOXaSlfg3IfGi22ijzecklF/A7kVZFQ== dependencies: - "@babel/helper-module-transforms" "^7.1.0" + "@babel/helper-module-transforms" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" babel-plugin-dynamic-import-node "^2.3.0" -"@babel/plugin-transform-modules-commonjs@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.7.0.tgz#3e5ffb4fd8c947feede69cbe24c9554ab4113fe3" - integrity sha512-KEMyWNNWnjOom8vR/1+d+Ocz/mILZG/eyHHO06OuBQ2aNhxT62fr4y6fGOplRx+CxCSp3IFwesL8WdINfY/3kg== +"@babel/plugin-transform-modules-commonjs@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.7.4.tgz#bee4386e550446343dd52a571eda47851ff857a3" + integrity sha512-k8iVS7Jhc367IcNF53KCwIXtKAH7czev866ThsTgy8CwlXjnKZna2VHwChglzLleYrcHz1eQEIJlGRQxB53nqA== dependencies: - "@babel/helper-module-transforms" "^7.7.0" + "@babel/helper-module-transforms" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-simple-access" "^7.7.0" + "@babel/helper-simple-access" "^7.7.4" babel-plugin-dynamic-import-node "^2.3.0" -"@babel/plugin-transform-modules-systemjs@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.7.0.tgz#9baf471213af9761c1617bb12fd278e629041417" - integrity sha512-ZAuFgYjJzDNv77AjXRqzQGlQl4HdUM6j296ee4fwKVZfhDR9LAGxfvXjBkb06gNETPnN0sLqRm9Gxg4wZH6dXg== +"@babel/plugin-transform-modules-systemjs@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.7.4.tgz#cd98152339d3e763dfe838b7d4273edaf520bb30" + integrity sha512-y2c96hmcsUi6LrMqvmNDPBBiGCiQu0aYqpHatVVu6kD4mFEXKjyNxd/drc18XXAf9dv7UXjrZwBVmTTGaGP8iw== dependencies: - "@babel/helper-hoist-variables" "^7.7.0" + "@babel/helper-hoist-variables" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" babel-plugin-dynamic-import-node "^2.3.0" -"@babel/plugin-transform-modules-umd@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.7.0.tgz#d62c7da16670908e1d8c68ca0b5d4c0097b69966" - integrity sha512-u7eBA03zmUswQ9LQ7Qw0/ieC1pcAkbp5OQatbWUzY1PaBccvuJXUkYzoN1g7cqp7dbTu6Dp9bXyalBvD04AANA== +"@babel/plugin-transform-modules-umd@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.7.4.tgz#1027c355a118de0aae9fee00ad7813c584d9061f" + integrity sha512-u2B8TIi0qZI4j8q4C51ktfO7E3cQ0qnaXFI1/OXITordD40tt17g/sXqgNNCcMTcBFKrUPcGDx+TBJuZxLx7tw== dependencies: - "@babel/helper-module-transforms" "^7.7.0" + "@babel/helper-module-transforms" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-named-capturing-groups-regex@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.7.0.tgz#358e6fd869b9a4d8f5cbc79e4ed4fc340e60dcaf" - integrity sha512-+SicSJoKouPctL+j1pqktRVCgy+xAch1hWWTMy13j0IflnyNjaoskj+DwRQFimHbLqO3sq2oN2CXMvXq3Bgapg== +"@babel/plugin-transform-named-capturing-groups-regex@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.7.4.tgz#fb3bcc4ee4198e7385805007373d6b6f42c98220" + integrity sha512-jBUkiqLKvUWpv9GLSuHUFYdmHg0ujC1JEYoZUfeOOfNydZXp1sXObgyPatpcwjWgsdBGsagWW0cdJpX/DO2jMw== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.7.0" + "@babel/helper-create-regexp-features-plugin" "^7.7.4" -"@babel/plugin-transform-new-target@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.4.4.tgz#18d120438b0cc9ee95a47f2c72bc9768fbed60a5" - integrity sha512-r1z3T2DNGQwwe2vPGZMBNjioT2scgWzK9BCnDEh+46z8EEwXBq24uRzd65I7pjtugzPSj921aM15RpESgzsSuA== +"@babel/plugin-transform-new-target@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.7.4.tgz#4a0753d2d60639437be07b592a9e58ee00720167" + integrity sha512-CnPRiNtOG1vRodnsyGX37bHQleHE14B9dnnlgSeEs3ek3fHN1A1SScglTCg1sfbe7sRQ2BUcpgpTpWSfMKz3gg== dependencies: "@babel/helper-plugin-utils" "^7.0.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== +"@babel/plugin-transform-object-super@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.7.4.tgz#48488937a2d586c0148451bf51af9d7dda567262" + integrity sha512-ho+dAEhC2aRnff2JCA0SAK7V2R62zJd/7dmtoe7MHcso4C2mS+vZjn1Pb1pCVZvJs1mgsvv5+7sT+m3Bysb6eg== dependencies: "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-replace-supers" "^7.5.5" + "@babel/helper-replace-supers" "^7.7.4" -"@babel/plugin-transform-parameters@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.4.4.tgz#7556cf03f318bd2719fe4c922d2d808be5571e16" - integrity sha512-oMh5DUO1V63nZcu/ZVLQFqiihBGo4OpxJxR1otF50GMeCLiRx5nUdtokd+u9SuVJrvvuIh9OosRFPP4pIPnwmw== +"@babel/plugin-transform-parameters@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.7.4.tgz#da4555c97f39b51ac089d31c7380f03bca4075ce" + integrity sha512-VJwhVePWPa0DqE9vcfptaJSzNDKrWU/4FbYCjZERtmqEs05g3UMXnYMZoXja7JAJ7Y7sPZipwm/pGApZt7wHlw== dependencies: - "@babel/helper-call-delegate" "^7.4.4" - "@babel/helper-get-function-arity" "^7.0.0" + "@babel/helper-call-delegate" "^7.7.4" + "@babel/helper-get-function-arity" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-property-literals@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.2.0.tgz#03e33f653f5b25c4eb572c98b9485055b389e905" - integrity sha512-9q7Dbk4RhgcLp8ebduOpCbtjh7C0itoLYHXd9ueASKAG/is5PQtMR5VJGka9NKqGhYEGn5ITahd4h9QeBMylWQ== +"@babel/plugin-transform-property-literals@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.7.4.tgz#2388d6505ef89b266103f450f9167e6bd73f98c2" + integrity sha512-MatJhlC4iHsIskWYyawl53KuHrt+kALSADLQQ/HkhTjX954fkxIEh4q5slL4oRAnsm/eDoZ4q0CIZpcqBuxhJQ== dependencies: "@babel/helper-plugin-utils" "^7.0.0" @@ -659,63 +644,63 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-syntax-jsx" "^7.2.0" -"@babel/plugin-transform-regenerator@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.7.0.tgz#f1b20b535e7716b622c99e989259d7dd942dd9cc" - integrity sha512-AXmvnC+0wuj/cFkkS/HFHIojxH3ffSXE+ttulrqWjZZRaUOonfJc60e1wSNT4rV8tIunvu/R3wCp71/tLAa9xg== +"@babel/plugin-transform-regenerator@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.7.4.tgz#d18eac0312a70152d7d914cbed2dc3999601cfc0" + integrity sha512-e7MWl5UJvmPEwFJTwkBlPmqixCtr9yAASBqff4ggXTNicZiwbF8Eefzm6NVgfiBp7JdAGItecnctKTgH44q2Jw== dependencies: regenerator-transform "^0.14.0" -"@babel/plugin-transform-reserved-words@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.2.0.tgz#4792af87c998a49367597d07fedf02636d2e1634" - integrity sha512-fz43fqW8E1tAB3DKF19/vxbpib1fuyCwSPE418ge5ZxILnBhWyhtPgz8eh1RCGGJlwvksHkyxMxh0eenFi+kFw== +"@babel/plugin-transform-reserved-words@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.7.4.tgz#6a7cf123ad175bb5c69aec8f6f0770387ed3f1eb" + integrity sha512-OrPiUB5s5XvkCO1lS7D8ZtHcswIC57j62acAnJZKqGGnHP+TIc/ljQSrgdX/QyOTdEK5COAhuc820Hi1q2UgLQ== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@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" - integrity sha512-QP4eUM83ha9zmYtpbnyjTLAGKQritA5XW/iG9cjtuOI8s1RuL/3V6a3DeSHfKutJQ+ayUfeZJPcnCYEQzaPQqg== +"@babel/plugin-transform-shorthand-properties@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.7.4.tgz#74a0a9b2f6d67a684c6fbfd5f0458eb7ba99891e" + integrity sha512-q+suddWRfIcnyG5YiDP58sT65AJDZSUhXQDZE3r04AuqD6d/XLaQPPXSBzP2zGerkgBivqtQm9XKGLuHqBID6Q== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-spread@^7.6.2": - version "7.6.2" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.6.2.tgz#fc77cf798b24b10c46e1b51b1b88c2bf661bb8dd" - integrity sha512-DpSvPFryKdK1x+EDJYCy28nmAaIMdxmhot62jAXF/o99iA33Zj2Lmcp3vDmz+MUh0LNYVPvfj5iC3feb3/+PFg== +"@babel/plugin-transform-spread@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.7.4.tgz#aa673b356fe6b7e70d69b6e33a17fef641008578" + integrity sha512-8OSs0FLe5/80cndziPlg4R0K6HcWSM0zyNhHhLsmw/Nc5MaA49cAsnoJ/t/YZf8qkG7fD+UjTRaApVDB526d7Q== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-sticky-regex@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.2.0.tgz#a1e454b5995560a9c1e0d537dfc15061fd2687e1" - integrity sha512-KKYCoGaRAf+ckH8gEL3JHUaFVyNHKe3ASNsZ+AlktgHevvxGigoIttrEJb8iKN03Q7Eazlv1s6cx2B2cQ3Jabw== +"@babel/plugin-transform-sticky-regex@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.7.4.tgz#ffb68c05090c30732076b1285dc1401b404a123c" + integrity sha512-Ls2NASyL6qtVe1H1hXts9yuEeONV2TJZmplLONkMPUG158CtmnrzW5Q5teibM5UVOFjG0D3IC5mzXR6pPpUY7A== dependencies: "@babel/helper-plugin-utils" "^7.0.0" "@babel/helper-regex" "^7.0.0" -"@babel/plugin-transform-template-literals@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.4.4.tgz#9d28fea7bbce637fb7612a0750989d8321d4bcb0" - integrity sha512-mQrEC4TWkhLN0z8ygIvEL9ZEToPhG5K7KDW3pzGqOfIGZ28Jb0POUkeWcoz8HnHvhFy6dwAT1j8OzqN8s804+g== +"@babel/plugin-transform-template-literals@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.7.4.tgz#1eb6411736dd3fe87dbd20cc6668e5121c17d604" + integrity sha512-sA+KxLwF3QwGj5abMHkHgshp9+rRz+oY9uoRil4CyLtgEuE/88dpkeWgNk5qKVsJE9iSfly3nvHapdRiIS2wnQ== dependencies: - "@babel/helper-annotate-as-pure" "^7.0.0" + "@babel/helper-annotate-as-pure" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-typeof-symbol@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.2.0.tgz#117d2bcec2fbf64b4b59d1f9819894682d29f2b2" - integrity sha512-2LNhETWYxiYysBtrBTqL8+La0jIoQQnIScUJc74OYvUGRmkskNY4EzLCnjHBzdmb38wqtTaixpo1NctEcvMDZw== +"@babel/plugin-transform-typeof-symbol@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.7.4.tgz#3174626214f2d6de322882e498a38e8371b2140e" + integrity sha512-KQPUQ/7mqe2m0B8VecdyaW5XcQYaePyl9R7IsKd+irzj6jvbhoGnRE+M0aNkyAzI07VfUQ9266L5xMARitV3wg== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-unicode-regex@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.7.0.tgz#743d9bcc44080e3cc7d49259a066efa30f9187a3" - integrity sha512-RrThb0gdrNwFAqEAAx9OWgtx6ICK69x7i9tCnMdVrxQwSDp/Abu9DXFU5Hh16VP33Rmxh04+NGW28NsIkFvFKA== +"@babel/plugin-transform-unicode-regex@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.7.4.tgz#a3c0f65b117c4c81c5b6484f2a5e7b95346b83ae" + integrity sha512-N77UUIV+WCvE+5yHw+oks3m18/umd7y392Zv7mYTpFqHtkpcc+QUz+gLJNTWVlWROIWeLqY0f3OjZxV5TcXnRw== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.7.0" + "@babel/helper-create-regexp-features-plugin" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" "@babel/polyfill@^7.6.0": @@ -726,57 +711,57 @@ core-js "^2.6.5" regenerator-runtime "^0.13.2" -"@babel/preset-env@7.7.1", "@babel/preset-env@^7.7.1": - version "7.7.1" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.7.1.tgz#04a2ff53552c5885cf1083e291c8dd5490f744bb" - integrity sha512-/93SWhi3PxcVTDpSqC+Dp4YxUu3qZ4m7I76k0w73wYfn7bGVuRIO4QUz95aJksbS+AD1/mT1Ie7rbkT0wSplaA== +"@babel/preset-env@7.7.4", "@babel/preset-env@^7.7.1": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.7.4.tgz#ccaf309ae8d1ee2409c85a4e2b5e280ceee830f8" + integrity sha512-Dg+ciGJjwvC1NIe/DGblMbcGq1HOtKbw8RLl4nIjlfcILKEOkWT/vRqPpumswABEBVudii6dnVwrBtzD7ibm4g== dependencies: - "@babel/helper-module-imports" "^7.7.0" + "@babel/helper-module-imports" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-proposal-async-generator-functions" "^7.7.0" - "@babel/plugin-proposal-dynamic-import" "^7.7.0" - "@babel/plugin-proposal-json-strings" "^7.2.0" - "@babel/plugin-proposal-object-rest-spread" "^7.6.2" - "@babel/plugin-proposal-optional-catch-binding" "^7.2.0" - "@babel/plugin-proposal-unicode-property-regex" "^7.7.0" - "@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-syntax-top-level-await" "^7.7.0" - "@babel/plugin-transform-arrow-functions" "^7.2.0" - "@babel/plugin-transform-async-to-generator" "^7.7.0" - "@babel/plugin-transform-block-scoped-functions" "^7.2.0" - "@babel/plugin-transform-block-scoping" "^7.6.3" - "@babel/plugin-transform-classes" "^7.7.0" - "@babel/plugin-transform-computed-properties" "^7.2.0" - "@babel/plugin-transform-destructuring" "^7.6.0" - "@babel/plugin-transform-dotall-regex" "^7.7.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.7.0" - "@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.7.0" - "@babel/plugin-transform-modules-systemjs" "^7.7.0" - "@babel/plugin-transform-modules-umd" "^7.7.0" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.7.0" - "@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.7.0" - "@babel/plugin-transform-reserved-words" "^7.2.0" - "@babel/plugin-transform-shorthand-properties" "^7.2.0" - "@babel/plugin-transform-spread" "^7.6.2" - "@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.7.0" - "@babel/types" "^7.7.1" + "@babel/plugin-proposal-async-generator-functions" "^7.7.4" + "@babel/plugin-proposal-dynamic-import" "^7.7.4" + "@babel/plugin-proposal-json-strings" "^7.7.4" + "@babel/plugin-proposal-object-rest-spread" "^7.7.4" + "@babel/plugin-proposal-optional-catch-binding" "^7.7.4" + "@babel/plugin-proposal-unicode-property-regex" "^7.7.4" + "@babel/plugin-syntax-async-generators" "^7.7.4" + "@babel/plugin-syntax-dynamic-import" "^7.7.4" + "@babel/plugin-syntax-json-strings" "^7.7.4" + "@babel/plugin-syntax-object-rest-spread" "^7.7.4" + "@babel/plugin-syntax-optional-catch-binding" "^7.7.4" + "@babel/plugin-syntax-top-level-await" "^7.7.4" + "@babel/plugin-transform-arrow-functions" "^7.7.4" + "@babel/plugin-transform-async-to-generator" "^7.7.4" + "@babel/plugin-transform-block-scoped-functions" "^7.7.4" + "@babel/plugin-transform-block-scoping" "^7.7.4" + "@babel/plugin-transform-classes" "^7.7.4" + "@babel/plugin-transform-computed-properties" "^7.7.4" + "@babel/plugin-transform-destructuring" "^7.7.4" + "@babel/plugin-transform-dotall-regex" "^7.7.4" + "@babel/plugin-transform-duplicate-keys" "^7.7.4" + "@babel/plugin-transform-exponentiation-operator" "^7.7.4" + "@babel/plugin-transform-for-of" "^7.7.4" + "@babel/plugin-transform-function-name" "^7.7.4" + "@babel/plugin-transform-literals" "^7.7.4" + "@babel/plugin-transform-member-expression-literals" "^7.7.4" + "@babel/plugin-transform-modules-amd" "^7.7.4" + "@babel/plugin-transform-modules-commonjs" "^7.7.4" + "@babel/plugin-transform-modules-systemjs" "^7.7.4" + "@babel/plugin-transform-modules-umd" "^7.7.4" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.7.4" + "@babel/plugin-transform-new-target" "^7.7.4" + "@babel/plugin-transform-object-super" "^7.7.4" + "@babel/plugin-transform-parameters" "^7.7.4" + "@babel/plugin-transform-property-literals" "^7.7.4" + "@babel/plugin-transform-regenerator" "^7.7.4" + "@babel/plugin-transform-reserved-words" "^7.7.4" + "@babel/plugin-transform-shorthand-properties" "^7.7.4" + "@babel/plugin-transform-spread" "^7.7.4" + "@babel/plugin-transform-sticky-regex" "^7.7.4" + "@babel/plugin-transform-template-literals" "^7.7.4" + "@babel/plugin-transform-typeof-symbol" "^7.7.4" + "@babel/plugin-transform-unicode-regex" "^7.7.4" + "@babel/types" "^7.7.4" browserslist "^4.6.0" core-js-compat "^3.1.1" invariant "^2.2.2" @@ -805,15 +790,6 @@ pirates "^4.0.0" source-map-support "^0.5.16" -"@babel/template@^7.1.0", "@babel/template@^7.2.2": - version "7.2.2" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.2.2.tgz#005b3fdf0ed96e88041330379e0da9a708eb2907" - integrity sha512-zRL0IMM02AUDwghf5LMSSDEz7sBCO2YnNmpg3uWTZj/v1rcG2BmQUvaGU8GhU8BvfMh1k2KIAYZ7Ji9KXPUg7g== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/parser" "^7.2.2" - "@babel/types" "^7.2.2" - "@babel/template@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.7.0.tgz#4fadc1b8e734d97f56de39c77de76f2562e597d0" @@ -823,7 +799,16 @@ "@babel/parser" "^7.7.0" "@babel/types" "^7.7.0" -"@babel/traverse@^7.1.0", "@babel/traverse@^7.4.4", "@babel/traverse@^7.5.5", "@babel/traverse@^7.7.0", "@babel/traverse@^7.7.2": +"@babel/template@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.7.4.tgz#428a7d9eecffe27deac0a98e23bf8e3675d2a77b" + integrity sha512-qUzihgVPguAzXCK7WXw8pqs6cEwi54s3E+HrejlkuWO6ivMKx9hZl3Y2fSXp9i5HgyWmj7RKP+ulaYnKM4yYxw== + dependencies: + "@babel/code-frame" "^7.0.0" + "@babel/parser" "^7.7.4" + "@babel/types" "^7.7.4" + +"@babel/traverse@^7.7.0", "@babel/traverse@^7.7.2": version "7.7.2" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.7.2.tgz#ef0a65e07a2f3c550967366b3d9b62a2dcbeae09" integrity sha512-TM01cXib2+rgIZrGJOLaHV/iZUAxf4A0dt5auY6KNZ+cm6aschuJGqKJM3ROTt3raPUdIDk9siAufIFEleRwtw== @@ -838,10 +823,25 @@ globals "^11.1.0" lodash "^4.17.13" -"@babel/types@^7.0.0", "@babel/types@^7.2.2", "@babel/types@^7.4.4", "@babel/types@^7.5.5", "@babel/types@^7.7.0", "@babel/types@^7.7.1", "@babel/types@^7.7.2": - version "7.7.2" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.7.2.tgz#550b82e5571dcd174af576e23f0adba7ffc683f7" - integrity sha512-YTf6PXoh3+eZgRCBzzP25Bugd2ngmpQVrk7kXX0i5N9BO7TFBtIgZYs7WtxtOGs8e6A4ZI7ECkbBCEHeXocvOA== +"@babel/traverse@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.7.4.tgz#9c1e7c60fb679fe4fcfaa42500833333c2058558" + integrity sha512-P1L58hQyupn8+ezVA2z5KBm4/Zr4lCC8dwKCMYzsa5jFMDMQAzaBNy9W5VjB+KAmBjb40U7a/H6ao+Xo+9saIw== + dependencies: + "@babel/code-frame" "^7.5.5" + "@babel/generator" "^7.7.4" + "@babel/helper-function-name" "^7.7.4" + "@babel/helper-split-export-declaration" "^7.7.4" + "@babel/parser" "^7.7.4" + "@babel/types" "^7.7.4" + debug "^4.1.0" + globals "^11.1.0" + lodash "^4.17.13" + +"@babel/types@^7.7.0", "@babel/types@^7.7.2", "@babel/types@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.7.4.tgz#516570d539e44ddf308c07569c258ff94fde9193" + integrity sha512-cz5Ji23KCi4T+YIE/BolWosrJuSmoZeN1EFnRtBwF+KKLi8GG/Z2c2hOJJeCXPk4mwk4QFvTmwIodJowXgttRA== dependencies: esutils "^2.0.2" lodash "^4.17.13" @@ -1560,7 +1560,7 @@ browserify-zlib@^0.2.0: dependencies: pako "~1.0.5" -browserslist@4.7.0, browserslist@^4.0.0, browserslist@^4.6.0, browserslist@^4.6.6: +browserslist@4.7.0: version "4.7.0" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.7.0.tgz#9ee89225ffc07db03409f2fee524dc8227458a17" integrity sha512-9rGNDtnj+HaahxiVV38Gn8n8Lr8REKsel68v1sPFfIGEK6uSXTY3h9acgiT1dZVtOOUtifo/Dn8daDQ5dUgVsA== @@ -1569,7 +1569,7 @@ browserslist@4.7.0, browserslist@^4.0.0, browserslist@^4.6.0, browserslist@^4.6. electron-to-chromium "^1.3.247" node-releases "^1.1.29" -browserslist@^4.7.3: +browserslist@^4.0.0, browserslist@^4.6.0, browserslist@^4.6.6, browserslist@^4.7.3: version "4.7.3" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.7.3.tgz#02341f162b6bcc1e1028e30624815d4924442dc3" integrity sha512-jWvmhqYpx+9EZm/FxcZSbUZyDEvDTLDi3nSAKbzEkyWvtI0mNSmUosey+5awDW1RUlrgXbQb5A6qY1xQH9U6MQ== From 674f13123d1ac2321ba0f2cef1d4dcd18643d403 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 25 Nov 2019 13:16:30 +0300 Subject: [PATCH 38/88] Bump @babel/preset-react from 7.7.0 to 7.7.4 in /website (#7044) Bumps [@babel/preset-react](https://github.com/babel/babel) from 7.7.0 to 7.7.4. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md) - [Commits](https://github.com/babel/babel/compare/v7.7.0...v7.7.4) Signed-off-by: dependabot-preview[bot] --- website/package.json | 2 +- website/yarn.lock | 74 ++++++++++++++++++++++---------------------- 2 files changed, 38 insertions(+), 38 deletions(-) diff --git a/website/package.json b/website/package.json index 6759c315e..bb3ed65f3 100644 --- a/website/package.json +++ b/website/package.json @@ -20,7 +20,7 @@ }, "devDependencies": { "@babel/preset-env": "7.7.4", - "@babel/preset-react": "7.7.0", + "@babel/preset-react": "7.7.4", "@sandhose/prettier-animated-logo": "1.0.3", "babel-loader": "8.0.6", "concurrently": "5.0.0", diff --git a/website/yarn.lock b/website/yarn.lock index 401f63e62..a3e10559a 100644 --- a/website/yarn.lock +++ b/website/yarn.lock @@ -71,12 +71,12 @@ "@babel/helper-explode-assignable-expression" "^7.7.4" "@babel/types" "^7.7.4" -"@babel/helper-builder-react-jsx@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.7.0.tgz#c6b8254d305bacd62beb648e4dea7d3ed79f352d" - integrity sha512-LSln3cexwInTMYYoFeVLKnYPPMfWNJ8PubTBs3hkh7wCu9iBaqq1OOyW+xGmEdLxT1nhsl+9SJ+h2oUDYz0l2A== +"@babel/helper-builder-react-jsx@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.7.4.tgz#da188d247508b65375b2c30cf59de187be6b0c66" + integrity sha512-kvbfHJNN9dg4rkEM4xn1s8d1/h6TYNvajy9L1wx4qLn9HFg0IkTsQi4rfBe92nxrPUFcMsHoMV+8rU7MJb3fCA== dependencies: - "@babel/types" "^7.7.0" + "@babel/types" "^7.7.4" esutils "^2.0.0" "@babel/helper-call-delegate@^7.7.4": @@ -399,10 +399,10 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-syntax-jsx@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.2.0.tgz#0b85a3b4bc7cdf4cc4b8bf236335b907ca22e7c7" - integrity sha512-VyN4QANJkRW6lDBmENzRszvZf3/4AXaj9YR7GwrWeeN9tEBPuXbmDYVU9bYBN0D70zCWVwUy0HWq2553VCb6Hw== +"@babel/plugin-syntax-jsx@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.7.4.tgz#dab2b56a36fb6c3c222a1fbc71f7bf97f327a9ec" + integrity sha512-wuy6fiMe9y7HeZBWXYCGt2RGxZOj0BImZ9EyXJVnVGBKO/Br592rbR3rtIQn0eQhAk9vqaKP5n8tVqEFBQMfLg== dependencies: "@babel/helper-plugin-utils" "^7.0.0" @@ -612,37 +612,37 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-react-display-name@^7.0.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.2.0.tgz#ebfaed87834ce8dc4279609a4f0c324c156e3eb0" - integrity sha512-Htf/tPa5haZvRMiNSQSFifK12gtr/8vwfr+A9y69uF0QcU77AVu4K7MiHEkTxF7lQoHOL0F9ErqgfNEAKgXj7A== +"@babel/plugin-transform-react-display-name@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.7.4.tgz#9f2b80b14ebc97eef4a9b29b612c58ed9c0d10dd" + integrity sha512-sBbIvqYkthai0X0vkD2xsAwluBp+LtNHH+/V4a5ydifmTtb8KOVOlrMIk/MYmIc4uTYDnjZUHQildYNo36SRJw== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-react-jsx-self@^7.0.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.2.0.tgz#461e21ad9478f1031dd5e276108d027f1b5240ba" - integrity sha512-v6S5L/myicZEy+jr6ielB0OR8h+EH/1QFx/YJ7c7Ua+7lqsjj/vW6fD5FR9hB/6y7mGbfT4vAURn3xqBxsUcdg== +"@babel/plugin-transform-react-jsx-self@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.7.4.tgz#81b8fbfd14b2215e8f1c2c3adfba266127b0231c" + integrity sha512-PWYjSfqrO273mc1pKCRTIJXyqfc9vWYBax88yIhQb+bpw3XChVC7VWS4VwRVs63wFHKxizvGSd00XEr+YB9Q2A== dependencies: "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-jsx" "^7.2.0" + "@babel/plugin-syntax-jsx" "^7.7.4" -"@babel/plugin-transform-react-jsx-source@^7.0.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.2.0.tgz#20c8c60f0140f5dd3cd63418d452801cf3f7180f" - integrity sha512-A32OkKTp4i5U6aE88GwwcuV4HAprUgHcTq0sSafLxjr6AW0QahrCRCjxogkbbcdtpbXkuTOlgpjophCxb6sh5g== +"@babel/plugin-transform-react-jsx-source@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.7.4.tgz#8994b1bf6014b133f5a46d3b7d1ee5f5e3e72c10" + integrity sha512-5ZU9FnPhqtHsOXxutRtXZAzoEJwDaP32QcobbMP1/qt7NYcsCNK8XgzJcJfoEr/ZnzVvUNInNjIW22Z6I8p9mg== dependencies: "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-jsx" "^7.2.0" + "@babel/plugin-syntax-jsx" "^7.7.4" -"@babel/plugin-transform-react-jsx@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.7.0.tgz#834b0723ba78cd4d24d7d629300c2270f516d0b7" - integrity sha512-mXhBtyVB1Ujfy+0L6934jeJcSXj/VCg6whZzEcgiiZHNS0PGC7vUCsZDQCxxztkpIdF+dY1fUMcjAgEOC3ZOMQ== +"@babel/plugin-transform-react-jsx@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.7.4.tgz#d91205717fae4e2f84d020cd3057ec02a10f11da" + integrity sha512-LixU4BS95ZTEAZdPaIuyg/k8FiiqN9laQ0dMHB4MlpydHY53uQdWCUrwjLr5o6ilS6fAgZey4Q14XBjl5tL6xw== dependencies: - "@babel/helper-builder-react-jsx" "^7.7.0" + "@babel/helper-builder-react-jsx" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-jsx" "^7.2.0" + "@babel/plugin-syntax-jsx" "^7.7.4" "@babel/plugin-transform-regenerator@^7.7.4": version "7.7.4" @@ -768,16 +768,16 @@ js-levenshtein "^1.1.3" semver "^5.5.0" -"@babel/preset-react@7.7.0", "@babel/preset-react@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.7.0.tgz#8ab0c4787d98cf1f5f22dabf115552bf9e4e406c" - integrity sha512-IXXgSUYBPHUGhUkH+89TR6faMcBtuMW0h5OHbMuVbL3/5wK2g6a2M2BBpkLa+Kw0sAHiZ9dNVgqJMDP/O4GRBA== +"@babel/preset-react@7.7.4", "@babel/preset-react@^7.7.0": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.7.4.tgz#3fe2ea698d8fb536d8e7881a592c3c1ee8bf5707" + integrity sha512-j+vZtg0/8pQr1H8wKoaJyGL2IEk3rG/GIvua7Sec7meXVIvGycihlGMx5xcU00kqCJbwzHs18xTu3YfREOqQ+g== dependencies: "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-transform-react-display-name" "^7.0.0" - "@babel/plugin-transform-react-jsx" "^7.7.0" - "@babel/plugin-transform-react-jsx-self" "^7.0.0" - "@babel/plugin-transform-react-jsx-source" "^7.0.0" + "@babel/plugin-transform-react-display-name" "^7.7.4" + "@babel/plugin-transform-react-jsx" "^7.7.4" + "@babel/plugin-transform-react-jsx-self" "^7.7.4" + "@babel/plugin-transform-react-jsx-source" "^7.7.4" "@babel/register@^7.7.0": version "7.7.0" From 3212bb40b0ff0d4c4cb116e2249158faf2a57cf9 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 26 Nov 2019 10:00:44 +0100 Subject: [PATCH 39/88] Bump @typescript-eslint/typescript-estree from 2.8.0 to 2.9.0 (#7054) Bumps [@typescript-eslint/typescript-estree](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-estree) from 2.8.0 to 2.9.0. - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/typescript-estree/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v2.9.0/packages/typescript-estree) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index fd0b3ea40..b6cd1370b 100644 --- a/package.json +++ b/package.json @@ -19,7 +19,7 @@ "@babel/parser": "7.7.4", "@glimmer/syntax": "0.41.0", "@iarna/toml": "2.2.3", - "@typescript-eslint/typescript-estree": "2.8.0", + "@typescript-eslint/typescript-estree": "2.9.0", "angular-estree-parser": "1.1.5", "angular-html-parser": "1.3.0", "camelcase": "5.3.1", diff --git a/yarn.lock b/yarn.lock index c056c988a..72e7925c8 100644 --- a/yarn.lock +++ b/yarn.lock @@ -890,10 +890,10 @@ dependencies: "@types/yargs-parser" "*" -"@typescript-eslint/typescript-estree@2.8.0": - version "2.8.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-2.8.0.tgz#fcc3fe6532840085d29b75432c8a59895876aeca" - integrity sha512-ksvjBDTdbAQ04cR5JyFSDX113k66FxH1tAXmi+dj6hufsl/G0eMc/f1GgLjEVPkYClDbRKv+rnBFuE5EusomUw== +"@typescript-eslint/typescript-estree@2.9.0": + version "2.9.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-2.9.0.tgz#09138daf8f47d0e494ba7db9e77394e928803017" + integrity sha512-v6btSPXEWCP594eZbM+JCXuFoXWXyF/z8kaSBSdCb83DF+Y7+xItW29SsKtSULgLemqJBT+LpT+0ZqdfH7QVmA== dependencies: debug "^4.1.1" eslint-visitor-keys "^1.1.0" From 7bc7b7954033bb91ba7b834dec27da66e7b689b6 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Wed, 27 Nov 2019 11:12:26 +0100 Subject: [PATCH 40/88] Bump execa from 3.3.0 to 3.4.0 (#7059) Bumps [execa](https://github.com/sindresorhus/execa) from 3.3.0 to 3.4.0. - [Release notes](https://github.com/sindresorhus/execa/releases) - [Commits](https://github.com/sindresorhus/execa/compare/v3.3.0...v3.4.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index b6cd1370b..90faea8f4 100644 --- a/package.json +++ b/package.json @@ -90,7 +90,7 @@ "eslint-plugin-import": "2.18.2", "eslint-plugin-prettier": "3.1.1", "eslint-plugin-react": "7.16.0", - "execa": "3.3.0", + "execa": "3.4.0", "jest": "23.3.0", "jest-junit": "9.0.0", "jest-snapshot-serializer-ansi": "1.0.0", diff --git a/yarn.lock b/yarn.lock index 72e7925c8..7595d743d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2697,10 +2697,10 @@ exec-sh@^0.2.0: dependencies: merge "^1.1.3" -execa@3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-3.3.0.tgz#7e348eef129a1937f21ecbbd53390942653522c1" - integrity sha512-j5Vit5WZR/cbHlqU97+qcnw9WHRCIL4V1SVe75VcHcD1JRBdt8fv0zw89b7CQHQdUHTt2VjuhcF5ibAgVOxqpg== +execa@3.4.0: + version "3.4.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-3.4.0.tgz#c08ed4550ef65d858fac269ffc8572446f37eb89" + integrity sha512-r9vdGQk4bmCuK1yKQu1KTwcT2zwfWdbdaXfCtAh+5nU/4fSX+JAb7vZGvI5naJrQlvONrEB20jeruESI69530g== dependencies: cross-spawn "^7.0.0" get-stream "^5.0.0" From 77a12672aaff78688aae1dcee834de4d1567a19e Mon Sep 17 00:00:00 2001 From: "imgbot[bot]" <31301654+imgbot[bot]@users.noreply.github.com> Date: Wed, 27 Nov 2019 17:52:38 +0100 Subject: [PATCH 41/88] [ImgBot] Optimize images (#7056) --- website/static/images/editors/editor_atom.svg | 11 +--- .../static/images/editors/editor_emacs.svg | 7 +-- .../static/images/editors/editor_espresso.svg | 4 +- .../static/images/editors/editor_sublime.svg | 4 +- website/static/images/editors/editor_vim.svg | 7 +-- website/static/images/editors/editor_vs.svg | 4 +- .../static/images/editors/editor_vscode.svg | 8 +-- .../static/images/editors/editor_webstorm.svg | 7 +-- website/static/images/get_started_rects.svg | 52 +------------------ website/static/images/github.svg | 4 +- website/static/images/github_grey.svg | 4 +- .../images/languages/css_small_grey.svg | 4 +- .../images/languages/graphql_small_grey.svg | 13 +---- .../static/images/languages/js_small_grey.svg | 4 +- .../images/languages/markdown_small_grey.svg | 7 +-- .../images/languages/python_small_grey.svg | 7 +-- .../images/languages/swift_small_grey.svg | 4 +- website/static/images/languages/tools_css.svg | 4 +- website/static/images/languages/tools_gql.svg | 13 +---- .../static/images/languages/tools_html.svg | 4 +- website/static/images/languages/tools_js.svg | 4 +- website/static/images/languages/tools_md.svg | 4 +- website/static/images/languages/tools_wip.svg | 7 +-- .../static/images/languages/tools_yaml.svg | 4 +- website/static/images/npm.svg | 5 +- website/static/images/npm_grey.svg | 5 +- website/static/images/users/3yourmind.svg | 14 +---- website/static/images/users/buildcom.svg | 10 +--- website/static/images/users/codecarrot.svg | 12 +---- website/static/images/users/computerbase.svg | 8 +-- website/static/images/users/dropbox.svg | 5 +- website/static/images/users/dropbox_grey.svg | 4 +- website/static/images/users/estalee.svg | 12 +---- website/static/images/users/exponea.svg | 4 +- website/static/images/users/heroku.svg | 18 +------ .../static/images/users/housinganywhere.svg | 4 +- website/static/images/users/leesa.svg | 4 +- .../static/images/users/metric-ai-white.svg | 13 +---- website/static/images/users/quip.svg | 9 +--- .../static/images/users/researchanddesign.svg | 4 +- website/static/images/users/salesforce.svg | 10 +--- website/static/images/users/used_by_babel.svg | 4 +- .../static/images/users/used_by_danger.svg | 4 +- .../static/images/users/used_by_facebook.svg | 4 +- website/static/images/users/used_by_jest.svg | 14 +---- website/static/images/users/used_by_react.svg | 11 +--- .../static/images/users/used_by_storybook.svg | 4 +- .../static/images/users/used_by_webpack.svg | 4 +- website/static/images/users/used_by_yarn.svg | 4 +- website/static/images/users/used_by_zeit.svg | 4 +- .../static/prettier-centered-logo-static.svg | 10 +--- 51 files changed, 51 insertions(+), 344 deletions(-) diff --git a/website/static/images/editors/editor_atom.svg b/website/static/images/editors/editor_atom.svg index 84b5691b6..83cb74523 100644 --- a/website/static/images/editors/editor_atom.svg +++ b/website/static/images/editors/editor_atom.svg @@ -1,10 +1 @@ - - - - - - - - - - + \ No newline at end of file diff --git a/website/static/images/editors/editor_emacs.svg b/website/static/images/editors/editor_emacs.svg index 73fa7968b..8670bb9a6 100644 --- a/website/static/images/editors/editor_emacs.svg +++ b/website/static/images/editors/editor_emacs.svg @@ -1,6 +1 @@ - - - - - - + \ No newline at end of file diff --git a/website/static/images/editors/editor_espresso.svg b/website/static/images/editors/editor_espresso.svg index 3246e2876..3237869df 100644 --- a/website/static/images/editors/editor_espresso.svg +++ b/website/static/images/editors/editor_espresso.svg @@ -1,3 +1 @@ - - - + \ No newline at end of file diff --git a/website/static/images/editors/editor_sublime.svg b/website/static/images/editors/editor_sublime.svg index d18ef86b5..dd873be6c 100644 --- a/website/static/images/editors/editor_sublime.svg +++ b/website/static/images/editors/editor_sublime.svg @@ -1,3 +1 @@ - - - + \ No newline at end of file diff --git a/website/static/images/editors/editor_vim.svg b/website/static/images/editors/editor_vim.svg index 31089650b..cdedf09a0 100644 --- a/website/static/images/editors/editor_vim.svg +++ b/website/static/images/editors/editor_vim.svg @@ -1,6 +1 @@ - - - - - - + \ No newline at end of file diff --git a/website/static/images/editors/editor_vs.svg b/website/static/images/editors/editor_vs.svg index aa450e0eb..5b80be7b1 100644 --- a/website/static/images/editors/editor_vs.svg +++ b/website/static/images/editors/editor_vs.svg @@ -1,3 +1 @@ - - - + \ No newline at end of file diff --git a/website/static/images/editors/editor_vscode.svg b/website/static/images/editors/editor_vscode.svg index df1b0352e..4f7bb9806 100644 --- a/website/static/images/editors/editor_vscode.svg +++ b/website/static/images/editors/editor_vscode.svg @@ -1,7 +1 @@ - - - - - - - + \ No newline at end of file diff --git a/website/static/images/editors/editor_webstorm.svg b/website/static/images/editors/editor_webstorm.svg index 0b5334dce..f48143501 100644 --- a/website/static/images/editors/editor_webstorm.svg +++ b/website/static/images/editors/editor_webstorm.svg @@ -1,6 +1 @@ - - - - - - + \ No newline at end of file diff --git a/website/static/images/get_started_rects.svg b/website/static/images/get_started_rects.svg index 8a168c526..07e2beeba 100644 --- a/website/static/images/get_started_rects.svg +++ b/website/static/images/get_started_rects.svg @@ -1,51 +1 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + \ No newline at end of file diff --git a/website/static/images/github.svg b/website/static/images/github.svg index 922b47b66..1ee010bd6 100644 --- a/website/static/images/github.svg +++ b/website/static/images/github.svg @@ -1,3 +1 @@ - - - + \ No newline at end of file diff --git a/website/static/images/github_grey.svg b/website/static/images/github_grey.svg index ee1fc8320..48a73bf27 100644 --- a/website/static/images/github_grey.svg +++ b/website/static/images/github_grey.svg @@ -1,3 +1 @@ - - - + \ No newline at end of file diff --git a/website/static/images/languages/css_small_grey.svg b/website/static/images/languages/css_small_grey.svg index 25bd398f1..474e68c52 100644 --- a/website/static/images/languages/css_small_grey.svg +++ b/website/static/images/languages/css_small_grey.svg @@ -1,3 +1 @@ - - - + \ No newline at end of file diff --git a/website/static/images/languages/graphql_small_grey.svg b/website/static/images/languages/graphql_small_grey.svg index a871ca2a4..94a6ee774 100644 --- a/website/static/images/languages/graphql_small_grey.svg +++ b/website/static/images/languages/graphql_small_grey.svg @@ -1,12 +1 @@ - - - - - - - - - - - - + \ No newline at end of file diff --git a/website/static/images/languages/js_small_grey.svg b/website/static/images/languages/js_small_grey.svg index 6c10c64de..0c4fbfd5f 100644 --- a/website/static/images/languages/js_small_grey.svg +++ b/website/static/images/languages/js_small_grey.svg @@ -1,3 +1 @@ - - - + \ No newline at end of file diff --git a/website/static/images/languages/markdown_small_grey.svg b/website/static/images/languages/markdown_small_grey.svg index 87fdfa8db..31daf953e 100644 --- a/website/static/images/languages/markdown_small_grey.svg +++ b/website/static/images/languages/markdown_small_grey.svg @@ -1,6 +1 @@ - - - - - - + \ No newline at end of file diff --git a/website/static/images/languages/python_small_grey.svg b/website/static/images/languages/python_small_grey.svg index 850e05e10..c0bacb114 100644 --- a/website/static/images/languages/python_small_grey.svg +++ b/website/static/images/languages/python_small_grey.svg @@ -1,6 +1 @@ - - - - - - + \ No newline at end of file diff --git a/website/static/images/languages/swift_small_grey.svg b/website/static/images/languages/swift_small_grey.svg index f116e308e..98979239a 100644 --- a/website/static/images/languages/swift_small_grey.svg +++ b/website/static/images/languages/swift_small_grey.svg @@ -1,3 +1 @@ - - - + \ No newline at end of file diff --git a/website/static/images/languages/tools_css.svg b/website/static/images/languages/tools_css.svg index 689cce48b..695ff489d 100644 --- a/website/static/images/languages/tools_css.svg +++ b/website/static/images/languages/tools_css.svg @@ -1,3 +1 @@ - - - + \ No newline at end of file diff --git a/website/static/images/languages/tools_gql.svg b/website/static/images/languages/tools_gql.svg index 40f20f38c..92c31a131 100644 --- a/website/static/images/languages/tools_gql.svg +++ b/website/static/images/languages/tools_gql.svg @@ -1,12 +1 @@ - - - - - - - - - - - - + \ No newline at end of file diff --git a/website/static/images/languages/tools_html.svg b/website/static/images/languages/tools_html.svg index 8ba7140b5..ccc7280f7 100644 --- a/website/static/images/languages/tools_html.svg +++ b/website/static/images/languages/tools_html.svg @@ -1,3 +1 @@ - - - + \ No newline at end of file diff --git a/website/static/images/languages/tools_js.svg b/website/static/images/languages/tools_js.svg index 008a44d84..5c893fa3e 100644 --- a/website/static/images/languages/tools_js.svg +++ b/website/static/images/languages/tools_js.svg @@ -1,3 +1 @@ - - - + \ No newline at end of file diff --git a/website/static/images/languages/tools_md.svg b/website/static/images/languages/tools_md.svg index 0420fa1ea..63ed2a2d8 100644 --- a/website/static/images/languages/tools_md.svg +++ b/website/static/images/languages/tools_md.svg @@ -1,3 +1 @@ - - - + \ No newline at end of file diff --git a/website/static/images/languages/tools_wip.svg b/website/static/images/languages/tools_wip.svg index 12aff681c..6ab886b8c 100644 --- a/website/static/images/languages/tools_wip.svg +++ b/website/static/images/languages/tools_wip.svg @@ -1,6 +1 @@ - - - - - - + \ No newline at end of file diff --git a/website/static/images/languages/tools_yaml.svg b/website/static/images/languages/tools_yaml.svg index b06631d39..2aaa70877 100644 --- a/website/static/images/languages/tools_yaml.svg +++ b/website/static/images/languages/tools_yaml.svg @@ -1,3 +1 @@ - - - + \ No newline at end of file diff --git a/website/static/images/npm.svg b/website/static/images/npm.svg index 2658484c2..e92cf3f61 100644 --- a/website/static/images/npm.svg +++ b/website/static/images/npm.svg @@ -1,4 +1 @@ - - - - + \ No newline at end of file diff --git a/website/static/images/npm_grey.svg b/website/static/images/npm_grey.svg index 0a48ca1bb..3ffd01d6d 100644 --- a/website/static/images/npm_grey.svg +++ b/website/static/images/npm_grey.svg @@ -1,4 +1 @@ - - - - + \ No newline at end of file diff --git a/website/static/images/users/3yourmind.svg b/website/static/images/users/3yourmind.svg index 9fdf84f12..161838c3d 100644 --- a/website/static/images/users/3yourmind.svg +++ b/website/static/images/users/3yourmind.svg @@ -1,13 +1 @@ - - - - - - - - - - - - - + \ No newline at end of file diff --git a/website/static/images/users/buildcom.svg b/website/static/images/users/buildcom.svg index 6f009691d..d44dcd59c 100644 --- a/website/static/images/users/buildcom.svg +++ b/website/static/images/users/buildcom.svg @@ -1,9 +1 @@ - - - - - - - - - + \ No newline at end of file diff --git a/website/static/images/users/codecarrot.svg b/website/static/images/users/codecarrot.svg index bf3acbe45..f497edcea 100644 --- a/website/static/images/users/codecarrot.svg +++ b/website/static/images/users/codecarrot.svg @@ -1,11 +1 @@ - - - - - - - - - - - + \ No newline at end of file diff --git a/website/static/images/users/computerbase.svg b/website/static/images/users/computerbase.svg index 4e6d6f7cc..8bd98cfaf 100644 --- a/website/static/images/users/computerbase.svg +++ b/website/static/images/users/computerbase.svg @@ -1,7 +1 @@ - - - - - - - + \ No newline at end of file diff --git a/website/static/images/users/dropbox.svg b/website/static/images/users/dropbox.svg index 1acc731bc..9920438e2 100644 --- a/website/static/images/users/dropbox.svg +++ b/website/static/images/users/dropbox.svg @@ -1,4 +1 @@ - - - - + \ No newline at end of file diff --git a/website/static/images/users/dropbox_grey.svg b/website/static/images/users/dropbox_grey.svg index 30367cb0d..f9ce5d554 100644 --- a/website/static/images/users/dropbox_grey.svg +++ b/website/static/images/users/dropbox_grey.svg @@ -1,3 +1 @@ - - - + \ No newline at end of file diff --git a/website/static/images/users/estalee.svg b/website/static/images/users/estalee.svg index cb1f2d5ad..92e7308b9 100644 --- a/website/static/images/users/estalee.svg +++ b/website/static/images/users/estalee.svg @@ -1,11 +1 @@ - - - - - - - - - - - + \ No newline at end of file diff --git a/website/static/images/users/exponea.svg b/website/static/images/users/exponea.svg index c57588547..dd5b61131 100644 --- a/website/static/images/users/exponea.svg +++ b/website/static/images/users/exponea.svg @@ -1,3 +1 @@ - - - + \ No newline at end of file diff --git a/website/static/images/users/heroku.svg b/website/static/images/users/heroku.svg index 1345c03ba..a5581530a 100644 --- a/website/static/images/users/heroku.svg +++ b/website/static/images/users/heroku.svg @@ -1,17 +1 @@ - - - - - - - - - - - - - - - - - + \ No newline at end of file diff --git a/website/static/images/users/housinganywhere.svg b/website/static/images/users/housinganywhere.svg index 94075c65d..15d13ff09 100644 --- a/website/static/images/users/housinganywhere.svg +++ b/website/static/images/users/housinganywhere.svg @@ -1,3 +1 @@ - - - + \ No newline at end of file diff --git a/website/static/images/users/leesa.svg b/website/static/images/users/leesa.svg index dfc94dcd7..8e131eee6 100644 --- a/website/static/images/users/leesa.svg +++ b/website/static/images/users/leesa.svg @@ -1,3 +1 @@ - - - + \ No newline at end of file diff --git a/website/static/images/users/metric-ai-white.svg b/website/static/images/users/metric-ai-white.svg index 7aa55e546..1c6c261e3 100644 --- a/website/static/images/users/metric-ai-white.svg +++ b/website/static/images/users/metric-ai-white.svg @@ -1,12 +1 @@ - - - - - - - - - - - - + \ No newline at end of file diff --git a/website/static/images/users/quip.svg b/website/static/images/users/quip.svg index b0f73a98f..66d0f2ab7 100644 --- a/website/static/images/users/quip.svg +++ b/website/static/images/users/quip.svg @@ -1,8 +1 @@ - - - - - - - - + \ No newline at end of file diff --git a/website/static/images/users/researchanddesign.svg b/website/static/images/users/researchanddesign.svg index 47d10f9f2..14d459691 100644 --- a/website/static/images/users/researchanddesign.svg +++ b/website/static/images/users/researchanddesign.svg @@ -1,3 +1 @@ - - - + \ No newline at end of file diff --git a/website/static/images/users/salesforce.svg b/website/static/images/users/salesforce.svg index f4e92d42a..3e22911bf 100644 --- a/website/static/images/users/salesforce.svg +++ b/website/static/images/users/salesforce.svg @@ -1,9 +1 @@ - - - - - - - - - + \ No newline at end of file diff --git a/website/static/images/users/used_by_babel.svg b/website/static/images/users/used_by_babel.svg index b19aa252d..a427ffe3b 100644 --- a/website/static/images/users/used_by_babel.svg +++ b/website/static/images/users/used_by_babel.svg @@ -1,3 +1 @@ - - - + \ No newline at end of file diff --git a/website/static/images/users/used_by_danger.svg b/website/static/images/users/used_by_danger.svg index a82e4e4a9..1953b8f9c 100644 --- a/website/static/images/users/used_by_danger.svg +++ b/website/static/images/users/used_by_danger.svg @@ -1,3 +1 @@ - - - + \ No newline at end of file diff --git a/website/static/images/users/used_by_facebook.svg b/website/static/images/users/used_by_facebook.svg index 1b4cdba13..a97800e00 100644 --- a/website/static/images/users/used_by_facebook.svg +++ b/website/static/images/users/used_by_facebook.svg @@ -1,3 +1 @@ - - - + \ No newline at end of file diff --git a/website/static/images/users/used_by_jest.svg b/website/static/images/users/used_by_jest.svg index 283449672..d7bcc5ea2 100644 --- a/website/static/images/users/used_by_jest.svg +++ b/website/static/images/users/used_by_jest.svg @@ -1,13 +1 @@ - - - - - - - - - - - - - + \ No newline at end of file diff --git a/website/static/images/users/used_by_react.svg b/website/static/images/users/used_by_react.svg index 4002c26db..18d2620be 100644 --- a/website/static/images/users/used_by_react.svg +++ b/website/static/images/users/used_by_react.svg @@ -1,10 +1 @@ - - - - - - - - - - + \ No newline at end of file diff --git a/website/static/images/users/used_by_storybook.svg b/website/static/images/users/used_by_storybook.svg index 064d192a7..d770ab0ca 100644 --- a/website/static/images/users/used_by_storybook.svg +++ b/website/static/images/users/used_by_storybook.svg @@ -1,3 +1 @@ - - - + \ No newline at end of file diff --git a/website/static/images/users/used_by_webpack.svg b/website/static/images/users/used_by_webpack.svg index 04dee91d0..f63bf0a54 100644 --- a/website/static/images/users/used_by_webpack.svg +++ b/website/static/images/users/used_by_webpack.svg @@ -1,3 +1 @@ - - - + \ No newline at end of file diff --git a/website/static/images/users/used_by_yarn.svg b/website/static/images/users/used_by_yarn.svg index 982b1f709..707d87cec 100644 --- a/website/static/images/users/used_by_yarn.svg +++ b/website/static/images/users/used_by_yarn.svg @@ -1,3 +1 @@ - - - + \ No newline at end of file diff --git a/website/static/images/users/used_by_zeit.svg b/website/static/images/users/used_by_zeit.svg index cdc48f7fd..16c6ab281 100644 --- a/website/static/images/users/used_by_zeit.svg +++ b/website/static/images/users/used_by_zeit.svg @@ -1,3 +1 @@ - - - + \ No newline at end of file diff --git a/website/static/prettier-centered-logo-static.svg b/website/static/prettier-centered-logo-static.svg index fd6b9c54e..f7fdec50d 100644 --- a/website/static/prettier-centered-logo-static.svg +++ b/website/static/prettier-centered-logo-static.svg @@ -1,9 +1 @@ - - - - - - - - - + \ No newline at end of file From 90a454e139beb9521182060785b5b4632c9a65b8 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Thu, 28 Nov 2019 10:44:25 +0100 Subject: [PATCH 42/88] Bump resolve from 1.12.2 to 1.13.1 (#7065) Bumps [resolve](https://github.com/browserify/resolve) from 1.12.2 to 1.13.1. - [Release notes](https://github.com/browserify/resolve/releases) - [Commits](https://github.com/browserify/resolve/compare/v1.12.2...v1.13.1) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 90faea8f4..68282c36e 100644 --- a/package.json +++ b/package.json @@ -64,7 +64,7 @@ "regexp-util": "1.2.2", "remark-math": "1.0.6", "remark-parse": "5.0.0", - "resolve": "1.12.2", + "resolve": "1.13.1", "semver": "6.3.0", "string-width": "4.1.0", "typescript": "3.7.2", diff --git a/yarn.lock b/yarn.lock index 7595d743d..e06c539f5 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5905,10 +5905,10 @@ resolve@1.1.7: version "1.1.7" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" -resolve@1.12.2, resolve@^1.1.6, resolve@^1.11.0, resolve@^1.11.1, resolve@^1.12.0, resolve@^1.3.2, resolve@^1.5.0: - version "1.12.2" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.12.2.tgz#08b12496d9aa8659c75f534a8f05f0d892fff594" - integrity sha512-cAVTI2VLHWYsGOirfeYVVQ7ZDejtQ9fp4YhYckWDEkFfqbVjaT11iM8k6xSAfGFMM+gDpZjMnFssPu8we+mqFw== +resolve@1.13.1, resolve@^1.1.6, resolve@^1.11.0, resolve@^1.11.1, resolve@^1.12.0, resolve@^1.3.2, resolve@^1.5.0: + version "1.13.1" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.13.1.tgz#be0aa4c06acd53083505abb35f4d66932ab35d16" + integrity sha512-CxqObCX8K8YtAhOBRg+lrcdn+LK+WYOS8tSjqSFbjtrI5PnS63QPhZl4+yKfrU9tdsbMu9Anr/amegT87M9Z6w== dependencies: path-parse "^1.0.6" From 021eec8d73f076fb019a3a49591ef4b76ac64592 Mon Sep 17 00:00:00 2001 From: Cyrille David Date: Thu, 28 Nov 2019 17:12:57 +0100 Subject: [PATCH 43/88] Fix a falling mustache issue (#7052) * Add a test highlighting the falling mustache issue * Use concat helper instead of manual concat * Fix the falling mustache issue * Add a CHANGELOG --- changelog_unreleased/handlebars/pr-7052.md | 18 ++++++++++ src/language-handlebars/printer-glimmer.js | 13 +++++--- .../__snapshots__/jsfmt.spec.js.snap | 33 +++++++++++++++++++ .../handlebars-mustache-statement/basics.hbs | 2 ++ 4 files changed, 62 insertions(+), 4 deletions(-) create mode 100644 changelog_unreleased/handlebars/pr-7052.md create mode 100644 tests/handlebars-mustache-statement/basics.hbs diff --git a/changelog_unreleased/handlebars/pr-7052.md b/changelog_unreleased/handlebars/pr-7052.md new file mode 100644 index 000000000..7111bc678 --- /dev/null +++ b/changelog_unreleased/handlebars/pr-7052.md @@ -0,0 +1,18 @@ +#### Fix a falling mustache issue ([#7052](https://github.com/prettier/prettier/pull/7052) by [@dcyriller](https://github.com/dcyriller)) + + +```hbs +{{!-- input --}} + + +{{!-- stable --}} + + +{{!-- master --}} + +``` diff --git a/src/language-handlebars/printer-glimmer.js b/src/language-handlebars/printer-glimmer.js index 55631ea7b..2eca2f448 100644 --- a/src/language-handlebars/printer-glimmer.js +++ b/src/language-handlebars/printer-glimmer.js @@ -173,13 +173,14 @@ function print(path, options, print) { } case "ElementModifierStatement": case "MustacheStatement": { - const pp = path.getParentNode(1); - const isConcat = pp && pp.type === "ConcatStatement"; + const p = path.getParentNode(0); + const isParentConcat = p && p.type === "ConcatStatement"; + const isParentAttr = p && p.type === "AttrNode"; return group( concat([ n.escaped === false ? "{{{" : "{{", printPathParams(path, print, { group: false }), - isConcat ? "" : softline, + isParentConcat || isParentAttr ? "" : softline, n.escaped === false ? "}}}" : "}}" ]) ); @@ -404,7 +405,11 @@ function printStringLiteral(stringLiteral, options) { `\\${enclosingQuote.quote}` ); - return `${enclosingQuote.quote}${escapedStringLiteral}${enclosingQuote.quote}`; + return concat([ + enclosingQuote.quote, + escapedStringLiteral, + enclosingQuote.quote + ]); } function printPath(path, print) { diff --git a/tests/handlebars-mustache-statement/__snapshots__/jsfmt.spec.js.snap b/tests/handlebars-mustache-statement/__snapshots__/jsfmt.spec.js.snap index 13a4e586c..22d286039 100644 --- a/tests/handlebars-mustache-statement/__snapshots__/jsfmt.spec.js.snap +++ b/tests/handlebars-mustache-statement/__snapshots__/jsfmt.spec.js.snap @@ -1,5 +1,38 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP +exports[`basics.hbs 1`] = ` +====================================options===================================== +parsers: ["glimmer"] +printWidth: 80 + | printWidth +=====================================input====================================== + + +=====================================output===================================== + +================================================================================ +`; + +exports[`basics.hbs 2`] = ` +====================================options===================================== +parsers: ["glimmer"] +printWidth: 80 +singleQuote: true + | printWidth +=====================================input====================================== + + +=====================================output===================================== + +================================================================================ +`; + exports[`element-modifier-statement.hbs 1`] = ` ====================================options===================================== parsers: ["glimmer"] diff --git a/tests/handlebars-mustache-statement/basics.hbs b/tests/handlebars-mustache-statement/basics.hbs new file mode 100644 index 000000000..6a4c78680 --- /dev/null +++ b/tests/handlebars-mustache-statement/basics.hbs @@ -0,0 +1,2 @@ + From ca0ff0f2801677f81b149b0381e3de388caaa411 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Fri, 29 Nov 2019 12:31:55 +0300 Subject: [PATCH 44/88] Bump eslint-plugin-react from 7.16.0 to 7.17.0 (#7071) Bumps [eslint-plugin-react](https://github.com/yannickcr/eslint-plugin-react) from 7.16.0 to 7.17.0. - [Release notes](https://github.com/yannickcr/eslint-plugin-react/releases) - [Changelog](https://github.com/yannickcr/eslint-plugin-react/blob/master/CHANGELOG.md) - [Commits](https://github.com/yannickcr/eslint-plugin-react/compare/v7.16.0...v7.17.0) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 93 ++++++++++++++++++++++++++++++++++++++++++---------- 2 files changed, 76 insertions(+), 19 deletions(-) diff --git a/package.json b/package.json index 68282c36e..e7e8449ed 100644 --- a/package.json +++ b/package.json @@ -89,7 +89,7 @@ "eslint-formatter-friendly": "7.0.0", "eslint-plugin-import": "2.18.2", "eslint-plugin-prettier": "3.1.1", - "eslint-plugin-react": "7.16.0", + "eslint-plugin-react": "7.17.0", "execa": "3.4.0", "jest": "23.3.0", "jest-junit": "9.0.0", diff --git a/yarn.lock b/yarn.lock index e06c539f5..966e6378c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2434,7 +2434,7 @@ error-ex@^1.2.0, error-ex@^1.3.1: dependencies: is-arrayish "^0.2.1" -es-abstract@^1.11.0, es-abstract@^1.12.0, es-abstract@^1.5.1, es-abstract@^1.7.0: +es-abstract@^1.12.0, es-abstract@^1.5.1, es-abstract@^1.7.0: version "1.13.0" resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.13.0.tgz#ac86145fdd5099d8dd49558ccba2eaf9b88e24e9" integrity sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg== @@ -2446,6 +2446,22 @@ es-abstract@^1.11.0, es-abstract@^1.12.0, es-abstract@^1.5.1, es-abstract@^1.7.0 is-regex "^1.0.4" object-keys "^1.0.12" +es-abstract@^1.15.0: + version "1.16.2" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.16.2.tgz#4e874331645e9925edef141e74fc4bd144669d34" + integrity sha512-jYo/J8XU2emLXl3OLwfwtuFfuF2w6DYPs+xy9ZfVyPkDcrauu6LYrw/q2TyCtrbc/KUdCiC5e9UajRhgNkVopA== + dependencies: + es-to-primitive "^1.2.1" + function-bind "^1.1.1" + has "^1.0.3" + has-symbols "^1.0.1" + is-callable "^1.1.4" + is-regex "^1.0.4" + object-inspect "^1.7.0" + object-keys "^1.1.1" + string.prototype.trimleft "^2.1.0" + string.prototype.trimright "^2.1.0" + es-to-primitive@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.0.tgz#edf72478033456e8dda8ef09e00ad9650707f377" @@ -2455,6 +2471,15 @@ es-to-primitive@^1.2.0: is-date-object "^1.0.1" is-symbol "^1.0.2" +es-to-primitive@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" + integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== + dependencies: + is-callable "^1.1.4" + is-date-object "^1.0.1" + is-symbol "^1.0.2" + es6-promise@^4.0.3: version "4.2.8" resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.2.8.tgz#4eb21594c972bc40553d276e510539143db53e0a" @@ -2516,6 +2541,11 @@ eslint-module-utils@^2.4.0: debug "^2.6.8" pkg-dir "^2.0.0" +eslint-plugin-eslint-plugin@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-eslint-plugin/-/eslint-plugin-eslint-plugin-2.1.0.tgz#a7a00f15a886957d855feacaafee264f039e62d5" + integrity sha512-kT3A/ZJftt28gbl/Cv04qezb/NQ1dwYIbi8lyf806XMxkus7DvOVCLIfTXMrorp322Pnoez7+zabXH29tADIDg== + 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" @@ -2540,20 +2570,21 @@ eslint-plugin-prettier@3.1.1: dependencies: prettier-linter-helpers "^1.0.0" -eslint-plugin-react@7.16.0: - version "7.16.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.16.0.tgz#9928e4f3e2122ed3ba6a5b56d0303ba3e41d8c09" - integrity sha512-GacBAATewhhptbK3/vTP09CbFrgUJmBSaaRcWdbQLFvUZy9yVcQxigBNHGPU/KE2AyHpzj3AWXpxoMTsIDiHug== +eslint-plugin-react@7.17.0: + version "7.17.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.17.0.tgz#a31b3e134b76046abe3cd278e7482bd35a1d12d7" + integrity sha512-ODB7yg6lxhBVMeiH1c7E95FLD4E/TwmFjltiU+ethv7KPdCwgiFuOZg9zNRHyufStTDLl/dEFqI2Q1VPmCd78A== dependencies: array-includes "^3.0.3" doctrine "^2.1.0" + eslint-plugin-eslint-plugin "^2.1.0" has "^1.0.3" - jsx-ast-utils "^2.2.1" + jsx-ast-utils "^2.2.3" object.entries "^1.1.0" - object.fromentries "^2.0.0" + object.fromentries "^2.0.1" object.values "^1.1.0" prop-types "^15.7.2" - resolve "^1.12.0" + resolve "^1.13.1" eslint-scope@^4.0.3: version "4.0.3" @@ -3225,6 +3256,11 @@ has-symbols@^1.0.0: resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44" integrity sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q= +has-symbols@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.1.tgz#9f5214758a44196c406d9bd76cebf81ec2dd31e8" + integrity sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg== + has-unicode@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" @@ -4387,7 +4423,7 @@ jsprim@^1.2.2: json-schema "0.2.3" verror "1.3.6" -jsx-ast-utils@^2.2.1: +jsx-ast-utils@^2.2.3: version "2.2.3" resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-2.2.3.tgz#8a9364e402448a3ce7f14d357738310d9248054f" integrity sha512-EdIHFMm+1BPynpKOpdPqiOsvnIrInRGJD7bzPZdPkjitQEqpdpUuFpq4T0npZFKTiB3RhWFdGN+oqOJIdhDhQA== @@ -5029,7 +5065,12 @@ object-copy@^0.1.0: define-property "^0.2.5" kind-of "^3.0.3" -object-keys@^1.0.11, object-keys@^1.0.12: +object-inspect@^1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.7.0.tgz#f4f6bd181ad77f006b5ece60bd0b6f398ff74a67" + integrity sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw== + +object-keys@^1.0.11, object-keys@^1.0.12, object-keys@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== @@ -5060,15 +5101,15 @@ object.entries@^1.1.0: function-bind "^1.1.1" has "^1.0.3" -object.fromentries@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.0.tgz#49a543d92151f8277b3ac9600f1e930b189d30ab" - integrity sha512-9iLiI6H083uiqUuvzyY6qrlmc/Gz8hLQFOcb/Ri/0xXFkSNS3ctV+CbE6yM2+AnkYfOB3dGjdzC0wrMLIhQICA== +object.fromentries@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.1.tgz#050f077855c7af8ae6649f45c80b16ee2d31e704" + integrity sha512-PUQv8Hbg3j2QX0IQYv3iAGCbGcu4yY4KQ92/dhA4sFSixBmSmp13UpDLs6jGK8rBtbmhNNIK99LD2k293jpiGA== dependencies: - define-properties "^1.1.2" - es-abstract "^1.11.0" + define-properties "^1.1.3" + es-abstract "^1.15.0" function-bind "^1.1.1" - has "^1.0.1" + has "^1.0.3" object.getownpropertydescriptors@^2.0.3: version "2.0.3" @@ -5905,7 +5946,7 @@ resolve@1.1.7: version "1.1.7" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" -resolve@1.13.1, resolve@^1.1.6, resolve@^1.11.0, resolve@^1.11.1, resolve@^1.12.0, resolve@^1.3.2, resolve@^1.5.0: +resolve@1.13.1, resolve@^1.1.6, resolve@^1.11.0, resolve@^1.11.1, resolve@^1.13.1, resolve@^1.3.2, resolve@^1.5.0: version "1.13.1" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.13.1.tgz#be0aa4c06acd53083505abb35f4d66932ab35d16" integrity sha512-CxqObCX8K8YtAhOBRg+lrcdn+LK+WYOS8tSjqSFbjtrI5PnS63QPhZl4+yKfrU9tdsbMu9Anr/amegT87M9Z6w== @@ -6462,6 +6503,22 @@ string-width@^3.0.0: is-fullwidth-code-point "^2.0.0" strip-ansi "^5.1.0" +string.prototype.trimleft@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/string.prototype.trimleft/-/string.prototype.trimleft-2.1.0.tgz#6cc47f0d7eb8d62b0f3701611715a3954591d634" + integrity sha512-FJ6b7EgdKxxbDxc79cOlok6Afd++TTs5szo+zJTUyow3ycrRfJVE2pq3vcN53XexvKZu/DJMDfeI/qMiZTrjTw== + dependencies: + define-properties "^1.1.3" + function-bind "^1.1.1" + +string.prototype.trimright@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/string.prototype.trimright/-/string.prototype.trimright-2.1.0.tgz#669d164be9df9b6f7559fa8e89945b168a5a6c58" + integrity sha512-fXZTSV55dNBwv16uw+hh5jkghxSnc5oHq+5K/gXgizHwAvMetdAJlHqqoFC1FSDVPYWLkAKl2cxpUT41sV7nSg== + dependencies: + define-properties "^1.1.3" + function-bind "^1.1.1" + string_decoder@^1.0.0: version "1.3.0" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" From 2eca6193d71b022502cb4c1aa112390b39fa6731 Mon Sep 17 00:00:00 2001 From: Sosuke Suzuki Date: Sun, 1 Dec 2019 20:59:15 +0900 Subject: [PATCH 45/88] JavaScript: Format ThrowStatement like ReturnStatement (#7070) --- changelog_unreleased/javascript/pr-7070.md | 24 +++ src/language-js/needs-parens.js | 1 + src/language-js/printer-estree.js | 100 +++++----- .../__snapshots__/jsfmt.spec.js.snap | 173 ++++++++++++++++++ tests/throw_statement/binaryish.js | 23 +++ tests/throw_statement/comment.js | 21 +++ tests/throw_statement/jsfmt.spec.js | 1 + tests/throw_statement/jsx.js | 23 +++ 8 files changed, 323 insertions(+), 43 deletions(-) create mode 100644 changelog_unreleased/javascript/pr-7070.md create mode 100644 tests/throw_statement/__snapshots__/jsfmt.spec.js.snap create mode 100644 tests/throw_statement/binaryish.js create mode 100644 tests/throw_statement/comment.js create mode 100644 tests/throw_statement/jsfmt.spec.js create mode 100644 tests/throw_statement/jsx.js diff --git a/changelog_unreleased/javascript/pr-7070.md b/changelog_unreleased/javascript/pr-7070.md new file mode 100644 index 000000000..e105b65f2 --- /dev/null +++ b/changelog_unreleased/javascript/pr-7070.md @@ -0,0 +1,24 @@ +# Format `throw` like `return` ([#7070](https://github.com/prettier/prettier/pull/7070) by [@sosukesuzuki](https://github.com/sosukesuzuki)) + + +```js +// Input +function foo() { + throw this.hasPlugin("dynamicImports") && this.lookahead().type === tt.parenLeft.right; +} + +// Prettier stable +function foo() { + throw this.hasPlugin("dynamicImports") && + this.lookahead().type === tt.parenLeft.right; +} + + +// Prettier master +function foo() { + throw ( + this.hasPlugin("dynamicImports") && + this.lookahead().type === tt.parenLeft.right + ); +} +``` diff --git a/src/language-js/needs-parens.js b/src/language-js/needs-parens.js index 9ff9bba87..207103988 100644 --- a/src/language-js/needs-parens.js +++ b/src/language-js/needs-parens.js @@ -759,6 +759,7 @@ function needsParens(path, options) { parent.type !== "OptionalCallExpression" && parent.type !== "Property" && parent.type !== "ReturnStatement" && + parent.type !== "ThrowStatement" && parent.type !== "TypeCastExpression" && parent.type !== "VariableDeclarator") ); diff --git a/src/language-js/printer-estree.js b/src/language-js/printer-estree.js index 49b4552e3..784786a7c 100644 --- a/src/language-js/printer-estree.js +++ b/src/language-js/printer-estree.js @@ -597,6 +597,7 @@ function printPathNoParens(path, options, print, args) { // indented accordingly. We should indent sub-expressions where the first case isn't indented. const shouldNotIndent = parent.type === "ReturnStatement" || + parent.type === "ThrowStatement" || (parent.type === "JSXExpressionContainer" && parentParent.type === "JSXAttribute") || (n.type !== "NGPipeExpression" && @@ -608,6 +609,7 @@ function printPathNoParens(path, options, print, args) { (n !== parent.body && parent.type === "ForStatement") || (parent.type === "ConditionalExpression" && parentParent.type !== "ReturnStatement" && + parentParent.type !== "ThrowStatement" && parentParent.type !== "CallExpression" && parentParent.type !== "OptionalCallExpression") || parent.type === "TemplateLiteral"; @@ -1121,48 +1123,10 @@ function printPathNoParens(path, options, print, args) { return concat(parts); } case "ReturnStatement": - parts.push("return"); - - if (n.argument) { - if (returnArgumentHasLeadingComment(options, n.argument)) { - parts.push( - concat([ - " (", - indent(concat([hardline, path.call(print, "argument")])), - hardline, - ")" - ]) - ); - } else if ( - n.argument.type === "LogicalExpression" || - n.argument.type === "BinaryExpression" || - n.argument.type === "SequenceExpression" - ) { - parts.push( - group( - concat([ - ifBreak(" (", " "), - indent(concat([softline, path.call(print, "argument")])), - softline, - ifBreak(")") - ]) - ) - ); - } else { - parts.push(" ", path.call(print, "argument")); - } - } - - if (hasDanglingComments(n)) { - parts.push( - " ", - comments.printDanglingComments(path, options, /* sameIndent */ true) - ); - } - - parts.push(semi); - - return concat(parts); + return concat([ + "return", + printReturnAndThrowArgument(path, options, print) + ]); case "NewExpression": case "OptionalCallExpression": case "CallExpression": { @@ -2030,7 +1994,10 @@ function printPathNoParens(path, options, print, args) { return concat(["catch ", path.call(print, "body")]); case "ThrowStatement": - return concat(["throw ", path.call(print, "argument"), semi]); + return concat([ + "throw", + printReturnAndThrowArgument(path, options, print) + ]); // Note: ignoring n.lexical because it has no printing consequences. case "SwitchStatement": return concat([ @@ -5957,6 +5924,53 @@ function printArrayItems(path, options, printPath, print) { return concat(printedElements); } +function printReturnAndThrowArgument(path, options, print) { + const node = path.getValue(); + const semi = options.semi ? ";" : ""; + const parts = []; + + if (node.argument) { + if (returnArgumentHasLeadingComment(options, node.argument)) { + parts.push( + concat([ + " (", + indent(concat([hardline, path.call(print, "argument")])), + hardline, + ")" + ]) + ); + } else if ( + node.argument.type === "LogicalExpression" || + node.argument.type === "BinaryExpression" || + node.argument.type === "SequenceExpression" + ) { + parts.push( + group( + concat([ + ifBreak(" (", " "), + indent(concat([softline, path.call(print, "argument")])), + softline, + ifBreak(")") + ]) + ) + ); + } else { + parts.push(" ", path.call(print, "argument")); + } + } + + if (hasDanglingComments(node)) { + parts.push( + " ", + comments.printDanglingComments(path, options, /* sameIndent */ true) + ); + } + + parts.push(semi); + + return concat(parts); +} + function willPrintOwnComments(path /*, options */) { const node = path.getValue(); const parent = path.getParentNode(); diff --git a/tests/throw_statement/__snapshots__/jsfmt.spec.js.snap b/tests/throw_statement/__snapshots__/jsfmt.spec.js.snap new file mode 100644 index 000000000..5d7e4ff57 --- /dev/null +++ b/tests/throw_statement/__snapshots__/jsfmt.spec.js.snap @@ -0,0 +1,173 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`binaryish.js 1`] = ` +====================================options===================================== +parsers: ["flow", "typescript", "babel"] +printWidth: 80 + | printWidth +=====================================input====================================== +function f() { + throw ( + property.isIdentifier() && + FUNCTIONS[property.node.name] && + (object.isIdentifier(JEST_GLOBAL) || + (callee.isMemberExpression() && shouldHoistExpression(object))) && + FUNCTIONS[property.node.name](expr.get('arguments')) + ); + + throw ( + chalk.bold( + 'No tests found related to files changed since last commit.\\n', + ) + + chalk.dim( + patternInfo.watch ? + 'Press \`a\` to run all tests, or run Jest with \`--watchAll\`.' : + 'Run Jest without \`-o\` to run all tests.', + ) + ); + + throw !filePath.includes(coverageDirectory) && + !filePath.endsWith(\`.\${SNAPSHOT_EXTENSION}\`); +} + +=====================================output===================================== +function f() { + throw ( + property.isIdentifier() && + FUNCTIONS[property.node.name] && + (object.isIdentifier(JEST_GLOBAL) || + (callee.isMemberExpression() && shouldHoistExpression(object))) && + FUNCTIONS[property.node.name](expr.get("arguments")) + ); + + throw ( + chalk.bold("No tests found related to files changed since last commit.\\n") + + chalk.dim( + patternInfo.watch + ? "Press \`a\` to run all tests, or run Jest with \`--watchAll\`." + : "Run Jest without \`-o\` to run all tests." + ) + ); + + throw ( + !filePath.includes(coverageDirectory) && + !filePath.endsWith(\`.\${SNAPSHOT_EXTENSION}\`) + ); +} + +================================================================================ +`; + +exports[`comment.js 1`] = ` +====================================options===================================== +parsers: ["flow", "typescript", "babel"] +printWidth: 80 + | printWidth +=====================================input====================================== +function x() { + throw func2 + //comment + .bar(); +} + +function f() { + throw ( + foo + // comment + .bar() + ); +} + +fn(function f() { + throw ( + foo + // comment + .bar() + ); +}); + +=====================================output===================================== +function x() { + throw ( + func2 + //comment + .bar() + ); +} + +function f() { + throw ( + foo + // comment + .bar() + ); +} + +fn(function f() { + throw ( + foo + // comment + .bar() + ); +}); + +================================================================================ +`; + +exports[`jsx.js 1`] = ` +====================================options===================================== +parsers: ["flow", "typescript", "babel"] +printWidth: 80 + | printWidth +=====================================input====================================== +function foo() { + throw ; +} + +function foo() { + throw baz; +} + +function foo() { + throw ; +} + +function foo() { + throw foo; +} + +function foo() { + throw <>; +} + +function foo() { + throw <>foo; +} + +=====================================output===================================== +function foo() { + throw ; +} + +function foo() { + throw baz; +} + +function foo() { + throw ; +} + +function foo() { + throw foo; +} + +function foo() { + throw <>; +} + +function foo() { + throw <>foo; +} + +================================================================================ +`; diff --git a/tests/throw_statement/binaryish.js b/tests/throw_statement/binaryish.js new file mode 100644 index 000000000..a56877573 --- /dev/null +++ b/tests/throw_statement/binaryish.js @@ -0,0 +1,23 @@ +function f() { + throw ( + property.isIdentifier() && + FUNCTIONS[property.node.name] && + (object.isIdentifier(JEST_GLOBAL) || + (callee.isMemberExpression() && shouldHoistExpression(object))) && + FUNCTIONS[property.node.name](expr.get('arguments')) + ); + + throw ( + chalk.bold( + 'No tests found related to files changed since last commit.\n', + ) + + chalk.dim( + patternInfo.watch ? + 'Press `a` to run all tests, or run Jest with `--watchAll`.' : + 'Run Jest without `-o` to run all tests.', + ) + ); + + throw !filePath.includes(coverageDirectory) && + !filePath.endsWith(`.${SNAPSHOT_EXTENSION}`); +} diff --git a/tests/throw_statement/comment.js b/tests/throw_statement/comment.js new file mode 100644 index 000000000..fd74f067c --- /dev/null +++ b/tests/throw_statement/comment.js @@ -0,0 +1,21 @@ +function x() { + throw func2 + //comment + .bar(); +} + +function f() { + throw ( + foo + // comment + .bar() + ); +} + +fn(function f() { + throw ( + foo + // comment + .bar() + ); +}); diff --git a/tests/throw_statement/jsfmt.spec.js b/tests/throw_statement/jsfmt.spec.js new file mode 100644 index 000000000..f268e6d0f --- /dev/null +++ b/tests/throw_statement/jsfmt.spec.js @@ -0,0 +1 @@ +run_spec(__dirname, ["flow", "typescript", "babel"]); diff --git a/tests/throw_statement/jsx.js b/tests/throw_statement/jsx.js new file mode 100644 index 000000000..2275b17ae --- /dev/null +++ b/tests/throw_statement/jsx.js @@ -0,0 +1,23 @@ +function foo() { + throw ; +} + +function foo() { + throw baz; +} + +function foo() { + throw ; +} + +function foo() { + throw foo; +} + +function foo() { + throw <>; +} + +function foo() { + throw <>foo; +} From 26a0bc330515344f0ac1943ba7843f24b2b1be18 Mon Sep 17 00:00:00 2001 From: Georgii Dolzhykov Date: Mon, 2 Dec 2019 12:34:04 +0200 Subject: [PATCH 46/88] Don't print trailing commas after rest elements in tuples (#7075) --- changelog_unreleased/typescript/pr-7075.md | 35 ++++++++ src/language-js/printer-estree.js | 5 +- .../__snapshots__/jsfmt.spec.js.snap | 86 +++++++++++++++++++ .../no-trailing-comma-after-rest.ts | 8 ++ 4 files changed, 133 insertions(+), 1 deletion(-) create mode 100644 changelog_unreleased/typescript/pr-7075.md create mode 100644 tests/typescript_tuple/no-trailing-comma-after-rest.ts diff --git a/changelog_unreleased/typescript/pr-7075.md b/changelog_unreleased/typescript/pr-7075.md new file mode 100644 index 000000000..60c3da14e --- /dev/null +++ b/changelog_unreleased/typescript/pr-7075.md @@ -0,0 +1,35 @@ +#### Don't print trailing commas after rest elements in tuples ([#7075](https://github.com/prettier/prettier/pull/7075) by [@thorn](https://github.com/thorn0)) + +* A rest element is always the last element of a tuple type. Nothing can be added after it. +* While TS is okay with this comma, [Babel doesn't parse it](https://github.com/babel/babel/issues/10769) +* In function parameters and array destructuring, such a comma is a syntax error. Keeping it in tuples is inconsistent. + + +```jsx +// Input +type ValidateArgs = [ + { + [key: string]: any; + }, + string, + ...string[], +]; + +// Prettier stable +type ValidateArgs = [ + { + [key: string]: any; + }, + string, + ...string[], +]; + +// Prettier master +type ValidateArgs = [ + { + [key: string]: any; + }, + string, + ...string[] +]; +``` diff --git a/src/language-js/printer-estree.js b/src/language-js/printer-estree.js index 784786a7c..64f7b8c1b 100644 --- a/src/language-js/printer-estree.js +++ b/src/language-js/printer-estree.js @@ -2509,6 +2509,9 @@ function printPathNoParens(path, options, print, args) { case "TSTupleType": case "TupleTypeAnnotation": { const typesField = n.type === "TSTupleType" ? "elementTypes" : "types"; + const hasRest = + n[typesField].length > 0 && + getLast(n[typesField]).type === "TSRestType"; return group( concat([ "[", @@ -2518,7 +2521,7 @@ function printPathNoParens(path, options, print, args) { printArrayItems(path, options, typesField, print) ]) ), - ifBreak(shouldPrintComma(options, "all") ? "," : ""), + ifBreak(shouldPrintComma(options, "all") && !hasRest ? "," : ""), comments.printDanglingComments(path, options, /* sameIndent */ true), softline, "]" diff --git a/tests/typescript_tuple/__snapshots__/jsfmt.spec.js.snap b/tests/typescript_tuple/__snapshots__/jsfmt.spec.js.snap index 4a7cbef55..e93ee2525 100644 --- a/tests/typescript_tuple/__snapshots__/jsfmt.spec.js.snap +++ b/tests/typescript_tuple/__snapshots__/jsfmt.spec.js.snap @@ -1,5 +1,91 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP +exports[`no-trailing-comma-after-rest.ts 1`] = ` +====================================options===================================== +parsers: ["typescript"] +printWidth: 80 + | printWidth +=====================================input====================================== +type ValidateArgs = [ + { + [key: string]: any; + }, + string, + string, + ...string[], +]; + +=====================================output===================================== +type ValidateArgs = [ + { + [key: string]: any; + }, + string, + string, + ...string[] +]; + +================================================================================ +`; + +exports[`no-trailing-comma-after-rest.ts 2`] = ` +====================================options===================================== +parsers: ["typescript"] +printWidth: 80 +trailingComma: "es5" + | printWidth +=====================================input====================================== +type ValidateArgs = [ + { + [key: string]: any; + }, + string, + string, + ...string[], +]; + +=====================================output===================================== +type ValidateArgs = [ + { + [key: string]: any; + }, + string, + string, + ...string[] +]; + +================================================================================ +`; + +exports[`no-trailing-comma-after-rest.ts 3`] = ` +====================================options===================================== +parsers: ["typescript"] +printWidth: 80 +trailingComma: "all" + | printWidth +=====================================input====================================== +type ValidateArgs = [ + { + [key: string]: any; + }, + string, + string, + ...string[], +]; + +=====================================output===================================== +type ValidateArgs = [ + { + [key: string]: any; + }, + string, + string, + ...string[] +]; + +================================================================================ +`; + exports[`trailing-comma.ts 1`] = ` ====================================options===================================== parsers: ["typescript"] diff --git a/tests/typescript_tuple/no-trailing-comma-after-rest.ts b/tests/typescript_tuple/no-trailing-comma-after-rest.ts new file mode 100644 index 000000000..f4350a3e9 --- /dev/null +++ b/tests/typescript_tuple/no-trailing-comma-after-rest.ts @@ -0,0 +1,8 @@ +type ValidateArgs = [ + { + [key: string]: any; + }, + string, + string, + ...string[], +]; From 121c1db1a18fe31ee4de9b7c413972a7227dc21a Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 2 Dec 2019 16:04:03 +0100 Subject: [PATCH 47/88] Bump rollup from 1.27.5 to 1.27.8 (#7078) Bumps [rollup](https://github.com/rollup/rollup) from 1.27.5 to 1.27.8. - [Release notes](https://github.com/rollup/rollup/releases) - [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md) - [Commits](https://github.com/rollup/rollup/compare/v1.27.5...v1.27.8) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index e7e8449ed..18cc1c9d4 100644 --- a/package.json +++ b/package.json @@ -99,7 +99,7 @@ "mkdirp": "0.5.1", "prettier": "1.19.1", "rimraf": "3.0.0", - "rollup": "1.27.5", + "rollup": "1.27.8", "rollup-plugin-babel": "4.3.3", "rollup-plugin-commonjs": "10.1.0", "rollup-plugin-node-globals": "1.4.0", diff --git a/yarn.lock b/yarn.lock index 966e6378c..97949770b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6053,10 +6053,10 @@ rollup-pluginutils@^2.3.1, rollup-pluginutils@^2.5.0, rollup-pluginutils@^2.6.0, dependencies: estree-walker "^0.6.1" -rollup@1.27.5: - version "1.27.5" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-1.27.5.tgz#d100fb0ffd8353575cb2057152547b9abfddfe59" - integrity sha512-8rfVdzuTg2kt8ObD9LNJpEwUN7B6lsl3sHc5fddtgICpLjpYeSf4m2+RftBzcCaBTMi1iYX3Ez8zFT4Gj2nJjg== +rollup@1.27.8: + version "1.27.8" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-1.27.8.tgz#94288a957af9f4c2380b73a17494d87705997d0f" + integrity sha512-EVoEV5rAWl+5clnGznt1KY8PeVkzVQh/R0d2s3gHEkN7gfoyC4JmvIVuCtPbYE8NM5Ep/g+nAmvKXBjzaqTsHA== dependencies: "@types/estree" "*" "@types/node" "*" From c6f4add134c019a266300cb1e1e40b827968ed40 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 2 Dec 2019 16:04:18 +0100 Subject: [PATCH 48/88] Bump docusaurus from 1.14.2 to 1.14.3 in /website (#7076) Bumps [docusaurus](https://github.com/facebook/docusaurus) from 1.14.2 to 1.14.3. - [Release notes](https://github.com/facebook/docusaurus/releases) - [Changelog](https://github.com/facebook/docusaurus/blob/master/CHANGELOG.md) - [Commits](https://github.com/facebook/docusaurus/compare/v1.14.2...v1.14.3) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- website/package.json | 2 +- website/yarn.lock | 277 +++++++++++++++++-------------------------- 2 files changed, 107 insertions(+), 172 deletions(-) diff --git a/website/package.json b/website/package.json index bb3ed65f3..2afad792b 100644 --- a/website/package.json +++ b/website/package.json @@ -24,7 +24,7 @@ "@sandhose/prettier-animated-logo": "1.0.3", "babel-loader": "8.0.6", "concurrently": "5.0.0", - "docusaurus": "1.14.2", + "docusaurus": "1.14.3", "js-yaml": "3.13.1", "svgo": "1.3.2", "webpack": "4.41.2", diff --git a/website/yarn.lock b/website/yarn.lock index a3e10559a..7ac64579d 100644 --- a/website/yarn.lock +++ b/website/yarn.lock @@ -16,18 +16,18 @@ dependencies: "@babel/highlight" "^7.0.0" -"@babel/core@^7.7.2": - version "7.7.2" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.7.2.tgz#ea5b99693bcfc058116f42fa1dd54da412b29d91" - integrity sha512-eeD7VEZKfhK1KUXGiyPFettgF3m513f8FoBSWiQ1xTvl1RAopLs42Wp9+Ze911I6H0N9lNqJMDgoZT7gHsipeQ== +"@babel/core@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.7.4.tgz#37e864532200cb6b50ee9a4045f5f817840166ab" + integrity sha512-+bYbx56j4nYBmpsWtnPUsKW3NdnYxbqyfrP2w9wILBuHzdfIKz9prieZK0DFPyIzkjYVUe4QkusGL07r5pXznQ== dependencies: "@babel/code-frame" "^7.5.5" - "@babel/generator" "^7.7.2" - "@babel/helpers" "^7.7.0" - "@babel/parser" "^7.7.2" - "@babel/template" "^7.7.0" - "@babel/traverse" "^7.7.2" - "@babel/types" "^7.7.2" + "@babel/generator" "^7.7.4" + "@babel/helpers" "^7.7.4" + "@babel/parser" "^7.7.4" + "@babel/template" "^7.7.4" + "@babel/traverse" "^7.7.4" + "@babel/types" "^7.7.4" convert-source-map "^1.7.0" debug "^4.1.0" json5 "^2.1.0" @@ -36,16 +36,6 @@ semver "^5.4.1" source-map "^0.5.0" -"@babel/generator@^7.7.2": - version "7.7.2" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.7.2.tgz#2f4852d04131a5e17ea4f6645488b5da66ebf3af" - integrity sha512-WthSArvAjYLz4TcbKOi88me+KmDJdKSlfwwN8CnUYn9jBkzhq0ZEPuBfkAWIvjJ3AdEV1Cf/+eSQTnp3IDJKlQ== - dependencies: - "@babel/types" "^7.7.2" - jsesc "^2.5.1" - lodash "^4.17.13" - source-map "^0.5.0" - "@babel/generator@^7.7.4": version "7.7.4" resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.7.4.tgz#db651e2840ca9aa66f327dcec1dc5f5fa9611369" @@ -88,17 +78,17 @@ "@babel/traverse" "^7.7.4" "@babel/types" "^7.7.4" -"@babel/helper-create-class-features-plugin@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.7.0.tgz#bcdc223abbfdd386f94196ae2544987f8df775e8" - integrity sha512-MZiB5qvTWoyiFOgootmRSDV1udjIqJW/8lmxgzKq6oDqxdmHUjeP2ZUOmgHdYjmUVNABqRrHjYAYRvj8Eox/UA== +"@babel/helper-create-class-features-plugin@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.7.4.tgz#fce60939fd50618610942320a8d951b3b639da2d" + integrity sha512-l+OnKACG4uiDHQ/aJT8dwpR+LhCJALxL0mJ6nzjB25e5IPwqV1VOsY7ah6UB1DG+VOXAIMtuC54rFJGiHkxjgA== dependencies: - "@babel/helper-function-name" "^7.7.0" - "@babel/helper-member-expression-to-functions" "^7.7.0" - "@babel/helper-optimise-call-expression" "^7.7.0" + "@babel/helper-function-name" "^7.7.4" + "@babel/helper-member-expression-to-functions" "^7.7.4" + "@babel/helper-optimise-call-expression" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-replace-supers" "^7.7.0" - "@babel/helper-split-export-declaration" "^7.7.0" + "@babel/helper-replace-supers" "^7.7.4" + "@babel/helper-split-export-declaration" "^7.7.4" "@babel/helper-create-regexp-features-plugin@^7.7.4": version "7.7.4" @@ -125,15 +115,6 @@ "@babel/traverse" "^7.7.4" "@babel/types" "^7.7.4" -"@babel/helper-function-name@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.7.0.tgz#44a5ad151cfff8ed2599c91682dda2ec2c8430a3" - integrity sha512-tDsJgMUAP00Ugv8O2aGEua5I2apkaQO7lBGUq1ocwN3G23JE5Dcq0uh3GvFTChPa4b40AWiAsLvCZOA2rdnQ7Q== - dependencies: - "@babel/helper-get-function-arity" "^7.7.0" - "@babel/template" "^7.7.0" - "@babel/types" "^7.7.0" - "@babel/helper-function-name@^7.7.4": version "7.7.4" resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.7.4.tgz#ab6e041e7135d436d8f0a3eca15de5b67a341a2e" @@ -143,13 +124,6 @@ "@babel/template" "^7.7.4" "@babel/types" "^7.7.4" -"@babel/helper-get-function-arity@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.7.0.tgz#c604886bc97287a1d1398092bc666bc3d7d7aa2d" - integrity sha512-tLdojOTz4vWcEnHWHCuPN5P85JLZWbm5Fx5ZsMEMPhF3Uoe3O7awrbM2nQ04bDOUToH/2tH/ezKEOR8zEYzqyw== - dependencies: - "@babel/types" "^7.7.0" - "@babel/helper-get-function-arity@^7.7.4": version "7.7.4" resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.7.4.tgz#cb46348d2f8808e632f0ab048172130e636005f0" @@ -164,13 +138,6 @@ dependencies: "@babel/types" "^7.7.4" -"@babel/helper-member-expression-to-functions@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.7.0.tgz#472b93003a57071f95a541ea6c2b098398bcad8a" - integrity sha512-QaCZLO2RtBcmvO/ekOLp8p7R5X2JriKRizeDpm5ChATAFWrrYDcDxPuCIBXKyBjY+i1vYSdcUTMIb8psfxHDPA== - dependencies: - "@babel/types" "^7.7.0" - "@babel/helper-member-expression-to-functions@^7.7.4": version "7.7.4" resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.7.4.tgz#356438e2569df7321a8326644d4b790d2122cb74" @@ -197,13 +164,6 @@ "@babel/types" "^7.7.4" lodash "^4.17.13" -"@babel/helper-optimise-call-expression@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.7.0.tgz#4f66a216116a66164135dc618c5d8b7a959f9365" - integrity sha512-48TeqmbazjNU/65niiiJIJRc5JozB8acui1OS7bSd6PgxfuovWsvjfWSzlgx+gPFdVveNzUdpdIg5l56Pl5jqg== - dependencies: - "@babel/types" "^7.7.0" - "@babel/helper-optimise-call-expression@^7.7.4": version "7.7.4" resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.7.4.tgz#034af31370d2995242aa4df402c3b7794b2dcdf2" @@ -241,16 +201,6 @@ "@babel/traverse" "^7.7.4" "@babel/types" "^7.7.4" -"@babel/helper-replace-supers@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.7.0.tgz#d5365c8667fe7cbd13b8ddddceb9bd7f2b387512" - integrity sha512-5ALYEul5V8xNdxEeWvRsBzLMxQksT7MaStpxjJf9KsnLxpAKBtfw5NeMKZJSYDa0lKdOcy0g+JT/f5mPSulUgg== - dependencies: - "@babel/helper-member-expression-to-functions" "^7.7.0" - "@babel/helper-optimise-call-expression" "^7.7.0" - "@babel/traverse" "^7.7.0" - "@babel/types" "^7.7.0" - "@babel/helper-replace-supers@^7.7.4": version "7.7.4" resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.7.4.tgz#3c881a6a6a7571275a72d82e6107126ec9e2cdd2" @@ -269,13 +219,6 @@ "@babel/template" "^7.7.4" "@babel/types" "^7.7.4" -"@babel/helper-split-export-declaration@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.7.0.tgz#1365e74ea6c614deeb56ebffabd71006a0eb2300" - integrity sha512-HgYSI8rH08neWlAH3CcdkFg9qX9YsZysZI5GD8LjhQib/mM0jGOZOVkoUiiV2Hu978fRtjtsGsW6w0pKHUWtqA== - dependencies: - "@babel/types" "^7.7.0" - "@babel/helper-split-export-declaration@^7.7.4": version "7.7.4" resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.7.4.tgz#57292af60443c4a3622cf74040ddc28e68336fd8" @@ -293,14 +236,14 @@ "@babel/traverse" "^7.7.4" "@babel/types" "^7.7.4" -"@babel/helpers@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.7.0.tgz#359bb5ac3b4726f7c1fde0ec75f64b3f4275d60b" - integrity sha512-VnNwL4YOhbejHb7x/b5F39Zdg5vIQpUUNzJwx0ww1EcVRt41bbGRZWhAURrfY32T5zTT3qwNOQFWpn+P0i0a2g== +"@babel/helpers@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.7.4.tgz#62c215b9e6c712dadc15a9a0dcab76c92a940302" + integrity sha512-ak5NGZGJ6LV85Q1Zc9gn2n+ayXOizryhjSUBTdu5ih1tlVCJeuQENzc4ItyCVhINVXvIT/ZQ4mheGIsfBkpskg== dependencies: - "@babel/template" "^7.7.0" - "@babel/traverse" "^7.7.0" - "@babel/types" "^7.7.0" + "@babel/template" "^7.7.4" + "@babel/traverse" "^7.7.4" + "@babel/types" "^7.7.4" "@babel/highlight@^7.0.0": version "7.0.0" @@ -311,11 +254,6 @@ esutils "^2.0.2" js-tokens "^4.0.0" -"@babel/parser@^7.7.0", "@babel/parser@^7.7.2": - version "7.7.2" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.7.2.tgz#ea8334dc77416bfd9473eb470fd00d8245b3943b" - integrity sha512-DDaR5e0g4ZTb9aP7cpSZLkACEBdoLGwJDWgHtBhrGX7Q1RjhdoMOfexICj5cqTAtpowjGQWfcvfnQG7G2kAB5w== - "@babel/parser@^7.7.4": version "7.7.4" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.7.4.tgz#75ab2d7110c2cf2fa949959afb05fa346d2231bb" @@ -330,12 +268,12 @@ "@babel/helper-remap-async-to-generator" "^7.7.4" "@babel/plugin-syntax-async-generators" "^7.7.4" -"@babel/plugin-proposal-class-properties@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.7.0.tgz#ac54e728ecf81d90e8f4d2a9c05a890457107917" - integrity sha512-tufDcFA1Vj+eWvwHN+jvMN6QsV5o+vUlytNKrbMiCeDL0F2j92RURzUsUMWE5EJkLyWxjdUslCsMQa9FWth16A== +"@babel/plugin-proposal-class-properties@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.7.4.tgz#2f964f0cb18b948450362742e33e15211e77c2ba" + integrity sha512-EcuXeV4Hv1X3+Q1TsuOmyyxeTRiSqurGJ26+I/FW1WbymmRRapVORm6x1Zl3iDIHyRxEs+VXWp6qnlcfcJSbbw== dependencies: - "@babel/helper-create-class-features-plugin" "^7.7.0" + "@babel/helper-create-class-features-plugin" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-proposal-dynamic-import@^7.7.4": @@ -354,7 +292,7 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-syntax-json-strings" "^7.7.4" -"@babel/plugin-proposal-object-rest-spread@^7.6.2", "@babel/plugin-proposal-object-rest-spread@^7.7.4": +"@babel/plugin-proposal-object-rest-spread@^7.7.4": version "7.7.4" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.7.4.tgz#cc57849894a5c774214178c8ab64f6334ec8af71" integrity sha512-rnpnZR3/iWKmiQyJ3LKJpSwLDcX/nSXhdLk4Aq/tXOApIvyu7qoabrige0ylsAJffaUC51WiBu209Q0U+86OWQ== @@ -703,7 +641,7 @@ "@babel/helper-create-regexp-features-plugin" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" -"@babel/polyfill@^7.6.0": +"@babel/polyfill@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/polyfill/-/polyfill-7.7.0.tgz#e1066e251e17606ec7908b05617f9b7f8180d8f3" integrity sha512-/TS23MVvo34dFmf8mwCisCbWGrfhbiWZSwBo6HkADTBhUa2Q/jWltyY/tpofz/b6/RIhqaqQcquptCirqIhOaQ== @@ -711,7 +649,7 @@ core-js "^2.6.5" regenerator-runtime "^0.13.2" -"@babel/preset-env@7.7.4", "@babel/preset-env@^7.7.1": +"@babel/preset-env@7.7.4", "@babel/preset-env@^7.7.4": version "7.7.4" resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.7.4.tgz#ccaf309ae8d1ee2409c85a4e2b5e280ceee830f8" integrity sha512-Dg+ciGJjwvC1NIe/DGblMbcGq1HOtKbw8RLl4nIjlfcILKEOkWT/vRqPpumswABEBVudii6dnVwrBtzD7ibm4g== @@ -768,7 +706,7 @@ js-levenshtein "^1.1.3" semver "^5.5.0" -"@babel/preset-react@7.7.4", "@babel/preset-react@^7.7.0": +"@babel/preset-react@7.7.4", "@babel/preset-react@^7.7.4": version "7.7.4" resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.7.4.tgz#3fe2ea698d8fb536d8e7881a592c3c1ee8bf5707" integrity sha512-j+vZtg0/8pQr1H8wKoaJyGL2IEk3rG/GIvua7Sec7meXVIvGycihlGMx5xcU00kqCJbwzHs18xTu3YfREOqQ+g== @@ -779,10 +717,10 @@ "@babel/plugin-transform-react-jsx-self" "^7.7.4" "@babel/plugin-transform-react-jsx-source" "^7.7.4" -"@babel/register@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.7.0.tgz#4e23ecf840296ef79c605baaa5c89e1a2426314b" - integrity sha512-HV3GJzTvSoyOMWGYn2TAh6uL6g+gqKTgEZ99Q3+X9UURT1VPT/WcU46R61XftIc5rXytcOHZ4Z0doDlsjPomIg== +"@babel/register@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.7.4.tgz#45a4956471a9df3b012b747f5781cc084ee8f128" + integrity sha512-/fmONZqL6ZMl9KJUYajetCrID6m0xmL4odX7v+Xvoxcv0DdbP/oO0TWIeLUCHqczQ6L6njDMqmqHFy2cp3FFsA== dependencies: find-cache-dir "^2.0.0" lodash "^4.17.13" @@ -790,15 +728,6 @@ pirates "^4.0.0" source-map-support "^0.5.16" -"@babel/template@^7.7.0": - version "7.7.0" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.7.0.tgz#4fadc1b8e734d97f56de39c77de76f2562e597d0" - integrity sha512-OKcwSYOW1mhWbnTBgQY5lvg1Fxg+VyfQGjcBduZFljfc044J5iDlnDSfhQ867O17XHiSCxYHUxHg2b7ryitbUQ== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/parser" "^7.7.0" - "@babel/types" "^7.7.0" - "@babel/template@^7.7.4": version "7.7.4" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.7.4.tgz#428a7d9eecffe27deac0a98e23bf8e3675d2a77b" @@ -808,21 +737,6 @@ "@babel/parser" "^7.7.4" "@babel/types" "^7.7.4" -"@babel/traverse@^7.7.0", "@babel/traverse@^7.7.2": - version "7.7.2" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.7.2.tgz#ef0a65e07a2f3c550967366b3d9b62a2dcbeae09" - integrity sha512-TM01cXib2+rgIZrGJOLaHV/iZUAxf4A0dt5auY6KNZ+cm6aschuJGqKJM3ROTt3raPUdIDk9siAufIFEleRwtw== - dependencies: - "@babel/code-frame" "^7.5.5" - "@babel/generator" "^7.7.2" - "@babel/helper-function-name" "^7.7.0" - "@babel/helper-split-export-declaration" "^7.7.0" - "@babel/parser" "^7.7.2" - "@babel/types" "^7.7.2" - debug "^4.1.0" - globals "^11.1.0" - lodash "^4.17.13" - "@babel/traverse@^7.7.4": version "7.7.4" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.7.4.tgz#9c1e7c60fb679fe4fcfaa42500833333c2058558" @@ -838,7 +752,7 @@ globals "^11.1.0" lodash "^4.17.13" -"@babel/types@^7.7.0", "@babel/types@^7.7.2", "@babel/types@^7.7.4": +"@babel/types@^7.7.4": version "7.7.4" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.7.4.tgz#516570d539e44ddf308c07569c258ff94fde9193" integrity sha512-cz5Ji23KCi4T+YIE/BolWosrJuSmoZeN1EFnRtBwF+KKLi8GG/Z2c2hOJJeCXPk4mwk4QFvTmwIodJowXgttRA== @@ -1290,13 +1204,13 @@ autolinker@~0.28.0: dependencies: gulp-header "^1.7.1" -autoprefixer@^9.7.0: - version "9.7.2" - resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.7.2.tgz#26cf729fbb709323b40171a874304884dcceffed" - integrity sha512-LCAfcdej1182uVvPOZnytbq61AhnOZ/4JelDaJGDeNwewyU1AMaNthcHsyz1NRjTmd2FkurMckLWfkHg3Z//KA== +autoprefixer@^9.7.2: + version "9.7.3" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.7.3.tgz#fd42ed03f53de9beb4ca0d61fb4f7268a9bb50b4" + integrity sha512-8T5Y1C5Iyj6PgkPSFd0ODvK9DIleuPKUPYniNxybS47g2k2wFgLZ46lGQHlBuGKIAEV8fbCDfKCCRS1tvOgc3Q== dependencies: - browserslist "^4.7.3" - caniuse-lite "^1.0.30001010" + browserslist "^4.8.0" + caniuse-lite "^1.0.30001012" chalk "^2.4.2" normalize-range "^0.1.2" num2fraction "^1.2.2" @@ -1569,7 +1483,7 @@ browserslist@4.7.0: electron-to-chromium "^1.3.247" node-releases "^1.1.29" -browserslist@^4.0.0, browserslist@^4.6.0, browserslist@^4.6.6, browserslist@^4.7.3: +browserslist@^4.0.0, browserslist@^4.6.0, browserslist@^4.6.6: version "4.7.3" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.7.3.tgz#02341f162b6bcc1e1028e30624815d4924442dc3" integrity sha512-jWvmhqYpx+9EZm/FxcZSbUZyDEvDTLDi3nSAKbzEkyWvtI0mNSmUosey+5awDW1RUlrgXbQb5A6qY1xQH9U6MQ== @@ -1578,6 +1492,15 @@ browserslist@^4.0.0, browserslist@^4.6.0, browserslist@^4.6.6, browserslist@^4.7 electron-to-chromium "^1.3.306" node-releases "^1.1.40" +browserslist@^4.8.0: + version "4.8.0" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.8.0.tgz#6f06b0f974a7cc3a84babc2ccc56493668e3c789" + integrity sha512-HYnxc/oLRWvJ3TsGegR0SRL/UDnknGq2s/a8dYYEO+kOQ9m9apKoS5oiathLKZdh/e9uE+/J3j92qPlGD/vTqA== + dependencies: + caniuse-lite "^1.0.30001012" + electron-to-chromium "^1.3.317" + node-releases "^1.1.41" + buffer-alloc-unsafe@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz#bd7dc26ae2972d0eda253be061dba992349c19f0" @@ -1750,6 +1673,11 @@ caniuse-lite@^1.0.30001010: resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001011.tgz#0d6c4549c78c4a800bb043a83ca0cbe0aee6c6e1" integrity sha512-h+Eqyn/YA6o6ZTqpS86PyRmNWOs1r54EBDcd2NTwwfsXQ8re1B38SnB+p2RKF8OUsyEIjeDU8XGec1RGO/wYCg== +caniuse-lite@^1.0.30001012: + version "1.0.30001013" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001013.tgz#da2440d4d266a17d40eb79bd19c0c8cc1d029c72" + integrity sha512-hOAXaWKuq/UVFgYawxIOdPdyMQdYcwOCDOjnZcKn7wCgFUrhP7smuNZjGLuJlPSgE6aRA4cRJ+bGSrhtEt7ZAg== + caseless@~0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" @@ -1984,13 +1912,6 @@ color-string@^1.5.2: color-name "^1.0.0" simple-swizzle "^0.2.2" -color@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/color/-/color-2.0.1.tgz#e4ed78a3c4603d0891eba5430b04b86314f4c839" - dependencies: - color-convert "^1.9.1" - color-string "^1.5.2" - color@^3.0.0: version "3.1.2" resolved "https://registry.yarnpkg.com/color/-/color-3.1.2.tgz#68148e7f85d41ad7649c5fa8c8106f098d229e10" @@ -2210,7 +2131,7 @@ cross-fetch@2.2.2: node-fetch "2.1.2" whatwg-fetch "2.0.4" -cross-spawn@6.0.5, cross-spawn@^6.0.0, cross-spawn@^6.0.5: +cross-spawn@6.0.5, cross-spawn@^6.0.0: version "6.0.5" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" dependencies: @@ -2624,37 +2545,35 @@ dir-glob@2.0.0: arrify "^1.0.1" path-type "^3.0.0" -docusaurus@1.14.2: - version "1.14.2" - resolved "https://registry.yarnpkg.com/docusaurus/-/docusaurus-1.14.2.tgz#6631a1cb34f82345147ed12af8233a3b2b43428e" - integrity sha512-hPn2v8UDsxZ+rAB+HdrNg4iK0VccubB2y9fJle4kag5MKlk1jele07hyXKhGgOvW2KSroRMHQVFF9EIeS0yYRg== +docusaurus@1.14.3: + version "1.14.3" + resolved "https://registry.yarnpkg.com/docusaurus/-/docusaurus-1.14.3.tgz#640ffc37ae14fe58c175fd14e66c3a2dd36e19a3" + integrity sha512-PoEB8uBLLVrWmv41Rvq9OqfOUUIk+tnscCNIuw/wI31tjALAfP3IfsliLc6ZBUvAtTF3S2Dk/quuzmdSCYgjaA== dependencies: - "@babel/core" "^7.7.2" - "@babel/plugin-proposal-class-properties" "^7.7.0" - "@babel/plugin-proposal-object-rest-spread" "^7.6.2" - "@babel/polyfill" "^7.6.0" - "@babel/preset-env" "^7.7.1" - "@babel/preset-react" "^7.7.0" - "@babel/register" "^7.7.0" - "@babel/traverse" "^7.7.2" - "@babel/types" "^7.7.2" - autoprefixer "^9.7.0" + "@babel/core" "^7.7.4" + "@babel/plugin-proposal-class-properties" "^7.7.4" + "@babel/plugin-proposal-object-rest-spread" "^7.7.4" + "@babel/polyfill" "^7.7.0" + "@babel/preset-env" "^7.7.4" + "@babel/preset-react" "^7.7.4" + "@babel/register" "^7.7.4" + "@babel/traverse" "^7.7.4" + "@babel/types" "^7.7.4" + autoprefixer "^9.7.2" babylon "^6.18.0" chalk "^3.0.0" classnames "^2.2.6" - color "^2.0.1" commander "^4.0.1" - cross-spawn "^6.0.5" crowdin-cli "^0.3.0" cssnano "^4.1.10" escape-string-regexp "^2.0.0" express "^4.17.1" - feed "^1.1.0" + feed "^4.0.0" fs-extra "^8.1.0" gaze "^1.1.3" github-slugger "^1.2.1" - glob "^7.1.5" - highlight.js "^9.16.1" + glob "^7.1.6" + highlight.js "^9.16.2" imagemin "^6.0.0" imagemin-gifsicle "^6.0.1" imagemin-jpegtran "^6.0.0" @@ -2664,7 +2583,7 @@ docusaurus@1.14.2: markdown-toc "^1.2.0" mkdirp "^0.5.1" portfinder "^1.0.25" - postcss "^7.0.21" + postcss "^7.0.23" prismjs "^1.17.1" react "^16.8.4" react-dev-utils "^9.1.0" @@ -2805,6 +2724,11 @@ electron-to-chromium@^1.3.306: resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.308.tgz#73c2cd8f865abc1c31623725e4f89225e9e209e6" integrity sha512-IwU/0LTzTa03Q0YDzg11RlK8e/V92tmPqFOaTEsdv7JJXtC/+v/H4bT2FmsA/xaFQWJvi0ZVcRppw8o0AD9XJQ== +electron-to-chromium@^1.3.317: + version "1.3.321" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.321.tgz#913869f5ec85daabba0e75c9c314b4bf26cdb01e" + integrity sha512-jJy/BZK2s2eAjMPXVMSaCmo7/pSY2aKkfQ+LoAb5Wk39qAhyP9r8KU74c4qTgr9cD/lPUhJgReZxxqU0n5puog== + elliptic@^6.0.0: version "6.4.1" resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.1.tgz#c2d0b7776911b86722c632c3c06c60f2f819939a" @@ -3201,11 +3125,12 @@ fd-slicer@~1.1.0: dependencies: pend "~1.2.0" -feed@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/feed/-/feed-1.1.1.tgz#914897517e94fa327cc6f73bb585a47c4a9ed321" +feed@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/feed/-/feed-4.0.0.tgz#d3c2bfb9aba3c0efacab1ed15be06b67f5c02539" + integrity sha512-VWtvINgG7cA91BtrGychMvxHj84nc8xS9W/PuAHlY62I8owZtcoxNaKFN+zkGl8tBsaYbxrrp4yB9DhqKNQSPw== dependencies: - xml "^1.0.1" + xml-js "^1.6.11" figgy-pudding@^3.5.1: version "3.5.1" @@ -3566,7 +3491,7 @@ glob-to-regexp@^0.3.0: resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz#8c5a1494d2066c570cc3bfe4496175acc4d502ab" integrity sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs= -glob@^7.0.0, glob@^7.0.5, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.5, glob@~7.1.1: +glob@^7.0.0, glob@^7.0.5, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, glob@~7.1.1: version "7.1.6" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== @@ -3907,7 +3832,7 @@ hex-color-regex@^1.1.0: resolved "https://registry.yarnpkg.com/hex-color-regex/-/hex-color-regex-1.1.0.tgz#4c06fccb4602fe2602b3c93df82d7e7dbf1a8a8e" integrity sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ== -highlight.js@^9.16.1: +highlight.js@^9.16.2: version "9.16.2" resolved "https://registry.yarnpkg.com/highlight.js/-/highlight.js-9.16.2.tgz#68368d039ffe1c6211bcc07e483daf95de3e403e" integrity sha512-feMUrVLZvjy0oC7FVJQcSQRqbBq9kwqnYE4+Kj9ZjbHh3g+BisiPgF49NyQbVLNdrL/qqZr3Ca9yOKwgn2i/tw== @@ -5286,6 +5211,13 @@ node-releases@^1.1.40: dependencies: semver "^6.3.0" +node-releases@^1.1.41: + version "1.1.41" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.41.tgz#57674a82a37f812d18e3b26118aefaf53a00afed" + integrity sha512-+IctMa7wIs8Cfsa8iYzeaLTFwv5Y4r5jZud+4AnfymzeEXKBCavFX0KBgzVaPVqf0ywa6PrO8/b+bPqdwjGBSg== + dependencies: + semver "^6.3.0" + nopt@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" @@ -6095,7 +6027,7 @@ postcss-value-parser@^4.0.2: resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.0.2.tgz#482282c09a42706d1fc9a069b73f44ec08391dc9" integrity sha512-LmeoohTpp/K4UiyQCwuGWlONxXamGzCMtFxLq4W1nZVGIQLYvMCJx3yAF9qyyuFpflABI9yVdtJAqbihOsCsJQ== -postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.21, postcss@^7.0.23, postcss@^7.0.5: +postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.23, postcss@^7.0.5: version "7.0.23" resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.23.tgz#9f9759fad661b15964f3cfc3140f66f1e05eadc1" integrity sha512-hOlMf3ouRIFXD+j2VJecwssTwbvsPGJVMzupptg+85WA+i7MwyrydmQAgY3R+m0Bc0exunhbJmijy8u8+vufuQ== @@ -7928,9 +7860,12 @@ wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" -xml@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/xml/-/xml-1.0.1.tgz#78ba72020029c5bc87b8a81a3cfcd74b4a2fc1e5" +xml-js@^1.6.11: + version "1.6.11" + resolved "https://registry.yarnpkg.com/xml-js/-/xml-js-1.6.11.tgz#927d2f6947f7f1c19a316dd8eea3614e8b18f8e9" + integrity sha512-7rVi2KMfwfWFl+GpPg6m80IVMWXLRjO+PxTq7V2CDhoGak0wzYzFgUY2m4XJ47OGdXd8eLE8EmwfAmdjw7lC1g== + dependencies: + sax "^1.2.4" xmlbuilder@^13.0.0: version "13.0.2" From df523555f68868570cc6552ae4c46aeb589c28b6 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 3 Dec 2019 17:31:05 +0100 Subject: [PATCH 49/88] Bump @typescript-eslint/typescript-estree from 2.9.0 to 2.10.0 (#7086) Bumps [@typescript-eslint/typescript-estree](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-estree) from 2.9.0 to 2.10.0. - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/typescript-estree/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v2.10.0/packages/typescript-estree) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 18cc1c9d4..17881179f 100644 --- a/package.json +++ b/package.json @@ -19,7 +19,7 @@ "@babel/parser": "7.7.4", "@glimmer/syntax": "0.41.0", "@iarna/toml": "2.2.3", - "@typescript-eslint/typescript-estree": "2.9.0", + "@typescript-eslint/typescript-estree": "2.10.0", "angular-estree-parser": "1.1.5", "angular-html-parser": "1.3.0", "camelcase": "5.3.1", diff --git a/yarn.lock b/yarn.lock index 97949770b..b78601a57 100644 --- a/yarn.lock +++ b/yarn.lock @@ -890,10 +890,10 @@ dependencies: "@types/yargs-parser" "*" -"@typescript-eslint/typescript-estree@2.9.0": - version "2.9.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-2.9.0.tgz#09138daf8f47d0e494ba7db9e77394e928803017" - integrity sha512-v6btSPXEWCP594eZbM+JCXuFoXWXyF/z8kaSBSdCb83DF+Y7+xItW29SsKtSULgLemqJBT+LpT+0ZqdfH7QVmA== +"@typescript-eslint/typescript-estree@2.10.0": + version "2.10.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-2.10.0.tgz#89cdabd5e8c774e9d590588cb42fb9afd14dcbd9" + integrity sha512-oOYnplddQNm/LGVkqbkAwx4TIBuuZ36cAQq9v3nFIU9FmhemHuVzAesMSXNQDdAzCa5bFgCrfD3JWhYVKlRN2g== dependencies: debug "^4.1.1" eslint-visitor-keys "^1.1.0" From 3c13329f4f08570ceb322d73cb78b5510b45be69 Mon Sep 17 00:00:00 2001 From: Georgii Dolzhykov Date: Wed, 4 Dec 2019 11:39:29 +0200 Subject: [PATCH 50/88] fix indentation in ternaries nested in conditions of other ternaries (#7087) * fix indentation in ternaries nested in conditions of other ternaries * fix giant indent when tabWidth=4 * refactoring: remove breakNested as it was always true * break between parens * add changelog * microfix * fix TS conditional types * Update pr-7087.md --- changelog_unreleased/javascript/pr-7087.md | 25 ++ src/language-js/printer-estree.js | 42 ++- .../__snapshots__/jsfmt.spec.js.snap | 356 ++++++++++++++++++ tests/ternaries/nested-in-condition.js | 36 ++ .../__snapshots__/jsfmt.spec.js.snap | 56 +++ .../nested-in-condition.ts | 17 + 6 files changed, 512 insertions(+), 20 deletions(-) create mode 100644 changelog_unreleased/javascript/pr-7087.md create mode 100644 tests/ternaries/nested-in-condition.js create mode 100644 tests/typescript_conditional_types/nested-in-condition.ts diff --git a/changelog_unreleased/javascript/pr-7087.md b/changelog_unreleased/javascript/pr-7087.md new file mode 100644 index 000000000..3b77cf511 --- /dev/null +++ b/changelog_unreleased/javascript/pr-7087.md @@ -0,0 +1,25 @@ +#### Fix indentation in ternaries nested in conditions of other ternaries ([#7087](https://github.com/prettier/prettier/pull/7087) by [@thorn0](https://github.com/thorn0)) + + +```jsx +// Input +const foo = (number % 10 >= 2 && (number % 100 < 10 || number % 100 >= 20) ? +kochabCooieGameOnOboleUnweave : annularCooeedSplicesWalksWayWay) +? anodyneCondosMalateOverateRetinol : averredBathersBoxroomBuggyNurl; + +// Prettier stable +const foo = (number % 10 >= 2 && (number % 100 < 10 || number % 100 >= 20) +? kochabCooieGameOnOboleUnweave +: annularCooeedSplicesWalksWayWay) + ? anodyneCondosMalateOverateRetinol + : averredBathersBoxroomBuggyNurl; + +// Prettier master +const foo = ( + number % 10 >= 2 && (number % 100 < 10 || number % 100 >= 20) + ? kochabCooieGameOnOboleUnweave + : annularCooeedSplicesWalksWayWay +) + ? anodyneCondosMalateOverateRetinol + : averredBathersBoxroomBuggyNurl; +``` diff --git a/src/language-js/printer-estree.js b/src/language-js/printer-estree.js index 64f7b8c1b..21cc37f0d 100644 --- a/src/language-js/printer-estree.js +++ b/src/language-js/printer-estree.js @@ -276,8 +276,7 @@ function printDecorators(path, options, print) { * @property {string} conditionalNodeType - The type of the conditional expression node, ie "ConditionalExpression" or "TSConditionalType". * @property {string} consequentNodePropertyName - The property at which the consequent node can be found on the main node, eg "consequent". * @property {string} alternateNodePropertyName - The property at which the alternate node can be found on the main node, eg "alternate". - * @property {string} testNodePropertyName - The property at which the test node can be found on the main node, eg "test". - * @property {boolean} breakNested - Whether to break all nested ternaries when one breaks. + * @property {string[]} testNodePropertyNames - The properties at which the test nodes can be found on the main node, eg "test". * @param {FastPath} path - The path to the ConditionalExpression/TSConditionalType node. * @param {Options} options - Prettier options * @param {Function} print - Print function to call recursively @@ -286,7 +285,6 @@ function printDecorators(path, options, print) { */ function printTernaryOperator(path, options, print, operatorOptions) { const node = path.getValue(); - const testNode = node[operatorOptions.testNodePropertyName]; const consequentNode = node[operatorOptions.consequentNodePropertyName]; const alternateNode = node[operatorOptions.alternateNodePropertyName]; const parts = []; @@ -295,7 +293,11 @@ function printTernaryOperator(path, options, print, operatorOptions) { // See tests/jsx/conditional-expression.js for more info. let jsxMode = false; const parent = path.getParentNode(); - let forceNoIndent = parent.type === operatorOptions.conditionalNodeType; + const isParentTest = + parent.type === operatorOptions.conditionalNodeType && + operatorOptions.testNodePropertyNames.some(prop => parent[prop] === node); + let forceNoIndent = + parent.type === operatorOptions.conditionalNodeType && !isParentTest; // Find the outermost non-ConditionalExpression parent, and the outermost // ConditionalExpression parent. We'll use these to determine if we should @@ -309,14 +311,17 @@ function printTernaryOperator(path, options, print, operatorOptions) { i++; } while ( currentParent && - currentParent.type === operatorOptions.conditionalNodeType + currentParent.type === operatorOptions.conditionalNodeType && + operatorOptions.testNodePropertyNames.every( + prop => currentParent[prop] !== previousParent + ) ); const firstNonConditionalParent = currentParent || parent; const lastConditionalParent = previousParent; if ( operatorOptions.shouldCheckJsx && - (isJSXNode(testNode) || + (isJSXNode(node[operatorOptions.testNodePropertyNames[0]]) || isJSXNode(consequentNode) || isJSXNode(alternateNode) || conditionalExpressionChainContainsJSX(lastConditionalParent)) @@ -373,7 +378,8 @@ function printTernaryOperator(path, options, print, operatorOptions) { ]); parts.push( parent.type !== operatorOptions.conditionalNodeType || - parent[operatorOptions.alternateNodePropertyName] === node + parent[operatorOptions.alternateNodePropertyName] === node || + isParentTest ? part : options.useTabs ? dedent(indent(part)) @@ -385,11 +391,7 @@ function printTernaryOperator(path, options, print, operatorOptions) { // break if any of them break. That means we should only group around the // outer-most ConditionalExpression. const maybeGroup = doc => - operatorOptions.breakNested - ? parent === firstNonConditionalParent - ? group(doc) - : doc - : group(doc); + parent === firstNonConditionalParent ? group(doc) : doc; // Break the closing paren to keep the chain right after it: // (a @@ -400,12 +402,10 @@ function printTernaryOperator(path, options, print, operatorOptions) { !jsxMode && (parent.type === "MemberExpression" || parent.type === "OptionalMemberExpression" || - (parent.type === "NGPipeExpression" && - parent.left === node && - operatorOptions.breakNested)) && + (parent.type === "NGPipeExpression" && parent.left === node)) && !parent.computed; - return maybeGroup( + const result = maybeGroup( concat( [].concat( (testDoc => @@ -428,6 +428,10 @@ function printTernaryOperator(path, options, print, operatorOptions) { ) ) ); + + return isParentTest + ? group(concat([indent(concat([softline, result])), softline])) + : result; } function printPathNoParens(path, options, print, args) { @@ -1669,8 +1673,7 @@ function printPathNoParens(path, options, print, args) { conditionalNodeType: "ConditionalExpression", consequentNodePropertyName: "consequent", alternateNodePropertyName: "alternate", - testNodePropertyName: "test", - breakNested: true + testNodePropertyNames: ["test"] }); case "VariableDeclaration": { const printed = path.map(childPath => { @@ -3513,8 +3516,7 @@ function printPathNoParens(path, options, print, args) { conditionalNodeType: "TSConditionalType", consequentNodePropertyName: "trueType", alternateNodePropertyName: "falseType", - testNodePropertyName: "checkType", - breakNested: true + testNodePropertyNames: ["checkType", "extendsType"] }); case "TSInferType": diff --git a/tests/ternaries/__snapshots__/jsfmt.spec.js.snap b/tests/ternaries/__snapshots__/jsfmt.spec.js.snap index 1a5fcf27a..641985e49 100644 --- a/tests/ternaries/__snapshots__/jsfmt.spec.js.snap +++ b/tests/ternaries/__snapshots__/jsfmt.spec.js.snap @@ -2424,6 +2424,362 @@ a ================================================================================ `; +exports[`nested-in-condition.js 1`] = ` +====================================options===================================== +parsers: ["flow", "typescript"] +printWidth: 80 + | printWidth +=====================================input====================================== +$var = ($number % 10 >= 2 && ($number % 100 < 10 || $number % 100 >= 20) +? kochabCooieGameOnOboleUnweave +: annularCooeedSplicesWalksWayWay) + ? anodyneCondosMalateOverateRetinol + : averredBathersBoxroomBuggyNurl; + +const value = (bifornCringerMoshedPerplexSawder +? askTrovenaBeenaDependsRowans +: glimseGlyphsHazardNoopsTieTie) + ? true + ? true + : false + : true + ? true + : false; + +(bifornCringerMoshedPerplexSawder ? ( + askTrovenaBeenaDependsRowans +) : ( + glimseGlyphsHazardNoopsTieTie +)) ? ( + + + + + + + + +) : ( + + + + + +); + +=====================================output===================================== +$var = ( + $number % 10 >= 2 && ($number % 100 < 10 || $number % 100 >= 20) + ? kochabCooieGameOnOboleUnweave + : annularCooeedSplicesWalksWayWay +) + ? anodyneCondosMalateOverateRetinol + : averredBathersBoxroomBuggyNurl; + +const value = ( + bifornCringerMoshedPerplexSawder + ? askTrovenaBeenaDependsRowans + : glimseGlyphsHazardNoopsTieTie +) + ? true + ? true + : false + : true + ? true + : false; + +( + bifornCringerMoshedPerplexSawder + ? askTrovenaBeenaDependsRowans + : glimseGlyphsHazardNoopsTieTie +) ? ( + + + + + + + + +) : ( + + + + + +); + +================================================================================ +`; + +exports[`nested-in-condition.js 2`] = ` +====================================options===================================== +parsers: ["flow", "typescript"] +printWidth: 80 +tabWidth: 4 + | printWidth +=====================================input====================================== +$var = ($number % 10 >= 2 && ($number % 100 < 10 || $number % 100 >= 20) +? kochabCooieGameOnOboleUnweave +: annularCooeedSplicesWalksWayWay) + ? anodyneCondosMalateOverateRetinol + : averredBathersBoxroomBuggyNurl; + +const value = (bifornCringerMoshedPerplexSawder +? askTrovenaBeenaDependsRowans +: glimseGlyphsHazardNoopsTieTie) + ? true + ? true + : false + : true + ? true + : false; + +(bifornCringerMoshedPerplexSawder ? ( + askTrovenaBeenaDependsRowans +) : ( + glimseGlyphsHazardNoopsTieTie +)) ? ( + + + + + + + + +) : ( + + + + + +); + +=====================================output===================================== +$var = ( + $number % 10 >= 2 && ($number % 100 < 10 || $number % 100 >= 20) + ? kochabCooieGameOnOboleUnweave + : annularCooeedSplicesWalksWayWay +) + ? anodyneCondosMalateOverateRetinol + : averredBathersBoxroomBuggyNurl; + +const value = ( + bifornCringerMoshedPerplexSawder + ? askTrovenaBeenaDependsRowans + : glimseGlyphsHazardNoopsTieTie +) + ? true + ? true + : false + : true + ? true + : false; + +( + bifornCringerMoshedPerplexSawder + ? askTrovenaBeenaDependsRowans + : glimseGlyphsHazardNoopsTieTie +) ? ( + + + + + + + + +) : ( + + + + + +); + +================================================================================ +`; + +exports[`nested-in-condition.js 3`] = ` +====================================options===================================== +parsers: ["flow", "typescript"] +printWidth: 80 +useTabs: true + | printWidth +=====================================input====================================== +$var = ($number % 10 >= 2 && ($number % 100 < 10 || $number % 100 >= 20) +? kochabCooieGameOnOboleUnweave +: annularCooeedSplicesWalksWayWay) + ? anodyneCondosMalateOverateRetinol + : averredBathersBoxroomBuggyNurl; + +const value = (bifornCringerMoshedPerplexSawder +? askTrovenaBeenaDependsRowans +: glimseGlyphsHazardNoopsTieTie) + ? true + ? true + : false + : true + ? true + : false; + +(bifornCringerMoshedPerplexSawder ? ( + askTrovenaBeenaDependsRowans +) : ( + glimseGlyphsHazardNoopsTieTie +)) ? ( + + + + + + + + +) : ( + + + + + +); + +=====================================output===================================== +$var = ( + $number % 10 >= 2 && ($number % 100 < 10 || $number % 100 >= 20) + ? kochabCooieGameOnOboleUnweave + : annularCooeedSplicesWalksWayWay +) + ? anodyneCondosMalateOverateRetinol + : averredBathersBoxroomBuggyNurl; + +const value = ( + bifornCringerMoshedPerplexSawder + ? askTrovenaBeenaDependsRowans + : glimseGlyphsHazardNoopsTieTie +) + ? true + ? true + : false + : true + ? true + : false; + +( + bifornCringerMoshedPerplexSawder + ? askTrovenaBeenaDependsRowans + : glimseGlyphsHazardNoopsTieTie +) ? ( + + + + + + + + +) : ( + + + + + +); + +================================================================================ +`; + +exports[`nested-in-condition.js 4`] = ` +====================================options===================================== +parsers: ["flow", "typescript"] +printWidth: 80 +tabWidth: 4 +useTabs: true + | printWidth +=====================================input====================================== +$var = ($number % 10 >= 2 && ($number % 100 < 10 || $number % 100 >= 20) +? kochabCooieGameOnOboleUnweave +: annularCooeedSplicesWalksWayWay) + ? anodyneCondosMalateOverateRetinol + : averredBathersBoxroomBuggyNurl; + +const value = (bifornCringerMoshedPerplexSawder +? askTrovenaBeenaDependsRowans +: glimseGlyphsHazardNoopsTieTie) + ? true + ? true + : false + : true + ? true + : false; + +(bifornCringerMoshedPerplexSawder ? ( + askTrovenaBeenaDependsRowans +) : ( + glimseGlyphsHazardNoopsTieTie +)) ? ( + + + + + + + + +) : ( + + + + + +); + +=====================================output===================================== +$var = ( + $number % 10 >= 2 && ($number % 100 < 10 || $number % 100 >= 20) + ? kochabCooieGameOnOboleUnweave + : annularCooeedSplicesWalksWayWay +) + ? anodyneCondosMalateOverateRetinol + : averredBathersBoxroomBuggyNurl; + +const value = ( + bifornCringerMoshedPerplexSawder + ? askTrovenaBeenaDependsRowans + : glimseGlyphsHazardNoopsTieTie +) + ? true + ? true + : false + : true + ? true + : false; + +( + bifornCringerMoshedPerplexSawder + ? askTrovenaBeenaDependsRowans + : glimseGlyphsHazardNoopsTieTie +) ? ( + + + + + + + + +) : ( + + + + + +); + +================================================================================ +`; + exports[`parenthesis.js 1`] = ` ====================================options===================================== parsers: ["flow", "typescript"] diff --git a/tests/ternaries/nested-in-condition.js b/tests/ternaries/nested-in-condition.js new file mode 100644 index 000000000..002a6aded --- /dev/null +++ b/tests/ternaries/nested-in-condition.js @@ -0,0 +1,36 @@ +$var = ($number % 10 >= 2 && ($number % 100 < 10 || $number % 100 >= 20) +? kochabCooieGameOnOboleUnweave +: annularCooeedSplicesWalksWayWay) + ? anodyneCondosMalateOverateRetinol + : averredBathersBoxroomBuggyNurl; + +const value = (bifornCringerMoshedPerplexSawder +? askTrovenaBeenaDependsRowans +: glimseGlyphsHazardNoopsTieTie) + ? true + ? true + : false + : true + ? true + : false; + +(bifornCringerMoshedPerplexSawder ? ( + askTrovenaBeenaDependsRowans +) : ( + glimseGlyphsHazardNoopsTieTie +)) ? ( + + + + + + + + +) : ( + + + + + +); diff --git a/tests/typescript_conditional_types/__snapshots__/jsfmt.spec.js.snap b/tests/typescript_conditional_types/__snapshots__/jsfmt.spec.js.snap index e06f96aee..0b69d9862 100644 --- a/tests/typescript_conditional_types/__snapshots__/jsfmt.spec.js.snap +++ b/tests/typescript_conditional_types/__snapshots__/jsfmt.spec.js.snap @@ -125,3 +125,59 @@ type Unpacked = T extends (infer U)[] ================================================================================ `; + +exports[`nested-in-condition.ts 1`] = ` +====================================options===================================== +parsers: ["typescript"] +printWidth: 80 + | printWidth +=====================================input====================================== +type Foo = + (ThingamabobberFactory extends AbstractThingamabobberFactory ? GobbledygookProvider : CompositeGobbledygookProvider) extends + DoubleGobbledygookProvider + ? UniqueDalgametreService + : CompositeZamazingoResolver; + +type Foo2 = + DoubleGobbledygookProvider extends + (ThingamabobberFactory extends AbstractThingamabobberFactory ? GobbledygookProvider : CompositeGobbledygookProvider) + ? UniqueDalgametreService + : CompositeZamazingoResolver; + +type Foo3 = + (ThingamabobberFactory extends AbstractThingamabobberFactory ? GobbledygookProvider : CompositeGobbledygookProvider) extends + (DoubleGobbledygookProvider extends MockGobbledygookProvider ? MockThingamabobberFactory : ThingamabobberFactory) + ? UniqueDalgametreService + : CompositeZamazingoResolver; + +=====================================output===================================== +type Foo = ( + ThingamabobberFactory extends AbstractThingamabobberFactory + ? GobbledygookProvider + : CompositeGobbledygookProvider +) extends DoubleGobbledygookProvider + ? UniqueDalgametreService + : CompositeZamazingoResolver; + +type Foo2 = DoubleGobbledygookProvider extends ( + ThingamabobberFactory extends AbstractThingamabobberFactory + ? GobbledygookProvider + : CompositeGobbledygookProvider +) + ? UniqueDalgametreService + : CompositeZamazingoResolver; + +type Foo3 = ( + ThingamabobberFactory extends AbstractThingamabobberFactory + ? GobbledygookProvider + : CompositeGobbledygookProvider +) extends ( + DoubleGobbledygookProvider extends MockGobbledygookProvider + ? MockThingamabobberFactory + : ThingamabobberFactory +) + ? UniqueDalgametreService + : CompositeZamazingoResolver; + +================================================================================ +`; diff --git a/tests/typescript_conditional_types/nested-in-condition.ts b/tests/typescript_conditional_types/nested-in-condition.ts new file mode 100644 index 000000000..0434f2c4e --- /dev/null +++ b/tests/typescript_conditional_types/nested-in-condition.ts @@ -0,0 +1,17 @@ +type Foo = + (ThingamabobberFactory extends AbstractThingamabobberFactory ? GobbledygookProvider : CompositeGobbledygookProvider) extends + DoubleGobbledygookProvider + ? UniqueDalgametreService + : CompositeZamazingoResolver; + +type Foo2 = + DoubleGobbledygookProvider extends + (ThingamabobberFactory extends AbstractThingamabobberFactory ? GobbledygookProvider : CompositeGobbledygookProvider) + ? UniqueDalgametreService + : CompositeZamazingoResolver; + +type Foo3 = + (ThingamabobberFactory extends AbstractThingamabobberFactory ? GobbledygookProvider : CompositeGobbledygookProvider) extends + (DoubleGobbledygookProvider extends MockGobbledygookProvider ? MockThingamabobberFactory : ThingamabobberFactory) + ? UniqueDalgametreService + : CompositeZamazingoResolver; From b9743b4c6c31d23f76f747a1e61bac04d461ecfa Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Wed, 4 Dec 2019 11:27:11 +0100 Subject: [PATCH 51/88] Bump jest-junit from 9.0.0 to 10.0.0 (#7092) Bumps [jest-junit](https://github.com/jest-community/jest-junit) from 9.0.0 to 10.0.0. - [Release notes](https://github.com/jest-community/jest-junit/releases) - [Commits](https://github.com/jest-community/jest-junit/compare/v9.0.0...v10.0.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 17881179f..f1e2baf35 100644 --- a/package.json +++ b/package.json @@ -92,7 +92,7 @@ "eslint-plugin-react": "7.17.0", "execa": "3.4.0", "jest": "23.3.0", - "jest-junit": "9.0.0", + "jest-junit": "10.0.0", "jest-snapshot-serializer-ansi": "1.0.0", "jest-snapshot-serializer-raw": "1.1.0", "jest-watch-typeahead": "0.4.2", diff --git a/yarn.lock b/yarn.lock index b78601a57..29c3b421f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4028,10 +4028,10 @@ jest-jasmine2@^23.4.2: jest-util "^23.4.0" pretty-format "^23.2.0" -jest-junit@9.0.0: - version "9.0.0" - resolved "https://registry.yarnpkg.com/jest-junit/-/jest-junit-9.0.0.tgz#9eb247dda7a8d2e1647a92f58a03a1490c74aea5" - integrity sha512-jnABGjL5pd2lhE1w3RIslZSufFbWQZGx8O3eluDES7qKxQuonXMtsPIi+4AKl4rtjb4DvMAjwLi4eHukc2FP/Q== +jest-junit@10.0.0: + version "10.0.0" + resolved "https://registry.yarnpkg.com/jest-junit/-/jest-junit-10.0.0.tgz#c94b91c24920a327c9d2a075e897b2dba4af494b" + integrity sha512-dbOVRyxHprdSpwSAR9/YshLwmnwf+RSl5hf0kCGlhAcEeZY9aRqo4oNmaT0tLC16Zy9D0zekDjWkjHGjXlglaQ== dependencies: jest-validate "^24.9.0" mkdirp "^0.5.1" From 20d1521417e9eb986f74787ad0f49b93ad0c9ca6 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Thu, 5 Dec 2019 14:21:54 +0300 Subject: [PATCH 52/88] Bump flow-parser from 0.112.0 to 0.113.0 (#7095) * Bump flow-parser from 0.112.0 to 0.113.0 Bumps [flow-parser](https://github.com/facebook/flow) from 0.112.0 to 0.113.0. - [Release notes](https://github.com/facebook/flow/releases) - [Changelog](https://github.com/facebook/flow/blob/master/Changelog.md) - [Commits](https://github.com/facebook/flow/compare/v0.112.0...v0.113.0) Signed-off-by: dependabot-preview[bot] * remove unneeded workaround --- package.json | 2 +- src/language-js/postprocess.js | 16 ---------------- yarn.lock | 8 ++++---- 3 files changed, 5 insertions(+), 21 deletions(-) diff --git a/package.json b/package.json index f1e2baf35..48cf8daee 100644 --- a/package.json +++ b/package.json @@ -35,7 +35,7 @@ "esutils": "2.0.3", "find-parent-dir": "0.3.0", "find-project-root": "1.1.1", - "flow-parser": "0.112.0", + "flow-parser": "0.113.0", "get-stream": "4.1.0", "globby": "6.1.0", "graphql": "14.5.8", diff --git a/src/language-js/postprocess.js b/src/language-js/postprocess.js index bf4a9d178..5828ae3fe 100644 --- a/src/language-js/postprocess.js +++ b/src/language-js/postprocess.js @@ -35,22 +35,6 @@ function postprocess(ast, options) { }); } break; - case "EnumDeclaration": - // A workaround for what looks like a bug in Flow. - // Flow assigns the same range to enum nodes and enum body nodes. - if ( - options.parser === "flow" && - node.body.range[0] === node.range[0] && - node.body.range[1] === node.range[1] - ) { - node.body.range = [node.id.range[1], node.range[1] - 1]; - } - // Babel does strange things as well. E.g. node.body.start > node.body.end can be true. - if (options.parser === "babel-flow") { - node.body.start = node.id.end; - node.body.end = node.end - 1; - } - break; } }); diff --git a/yarn.lock b/yarn.lock index 29c3b421f..fddd2cb08 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2993,10 +2993,10 @@ flatten@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/flatten/-/flatten-1.0.2.tgz#dae46a9d78fbe25292258cc1e780a41d95c03782" -flow-parser@0.112.0: - version "0.112.0" - resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.112.0.tgz#938d7949068f147a196ebc2bd982ea066b024df5" - integrity sha512-sxjnwhR76B/fUN6n/XerYzn8R1HvtVo3SM8Il3WiZ4nkAlb2BBzKe1TSVKGSyZgD6FW9Bsxom/57ktkqrqmXGA== +flow-parser@0.113.0: + version "0.113.0" + resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.113.0.tgz#5b5913c54833918d0c3136ba69f6cf0cdd85fc20" + integrity sha512-+hRyEB1sVLNMTMniDdM1JIS8BJ3HUL7IFIJaxX+t/JUy0GNYdI0Tg1QLx8DJmOF8HeoCrUDcREpnDAc/pPta3w== flush-write-stream@^1.0.0: version "1.1.1" From fa723deee29a3ee21d5bec5210c688c7d499a408 Mon Sep 17 00:00:00 2001 From: Sosuke Suzuki Date: Fri, 6 Dec 2019 18:18:38 +0900 Subject: [PATCH 53/88] TypeScript: remove extra indentation for arrow function on variable declaration with comment (#7094) * Remove extra indent * add changelog * Fix postprocess for range of TypeScript * Remove locend from postprocess * Add test for no-smei * Remove hasLeadingComment --- changelog_unreleased/typescript/pr-7094.md | 26 +++++ src/language-js/postprocess.js | 8 +- .../__snapshots__/jsfmt.spec.js.snap | 105 ++++++++++++++++++ tests/typescript_arrow/comments.js | 10 ++ tests/typescript_arrow/jsfmt.spec.js | 1 + 5 files changed, 144 insertions(+), 6 deletions(-) create mode 100644 changelog_unreleased/typescript/pr-7094.md create mode 100644 tests/typescript_arrow/comments.js diff --git a/changelog_unreleased/typescript/pr-7094.md b/changelog_unreleased/typescript/pr-7094.md new file mode 100644 index 000000000..ee30e2bf4 --- /dev/null +++ b/changelog_unreleased/typescript/pr-7094.md @@ -0,0 +1,26 @@ +#### Remove extra indentation for arrow function on variable declaration with comment([#7094](https://github.com/prettier/prettier/pull/7094) by [@sosukesuzuki](https://github.com/sosukesuzuki)) + + +```ts +// Input +const foo = () => { + return; +} + +// foo +; + +// Prettier stable +const foo = () => { + return; + }; + + // foo + +// Prettier master +const foo = () => { + return; +}; + +// foo +``` diff --git a/src/language-js/postprocess.js b/src/language-js/postprocess.js index 5828ae3fe..e2daf1396 100644 --- a/src/language-js/postprocess.js +++ b/src/language-js/postprocess.js @@ -1,7 +1,7 @@ "use strict"; const { getLast } = require("../common/util"); -const { composeLoc } = require("./loc"); +const { composeLoc, locEnd } = require("./loc"); function postprocess(ast, options) { visitNode(ast, node => { @@ -48,7 +48,7 @@ function postprocess(ast, options) { if (options.originalText[locEnd(toOverrideNode)] === ";") { return; } - if (options.parser === "flow") { + if (Array.isArray(toBeOverriddenNode.range)) { toBeOverriddenNode.range = [ toBeOverriddenNode.range[0], toOverrideNode.range[1] @@ -60,10 +60,6 @@ function postprocess(ast, options) { end: toBeOverriddenNode.loc.end }); } - - function locEnd(node) { - return options.parser === "flow" ? node.range[1] : node.end; - } } function visitNode(node, fn, parent, property) { diff --git a/tests/typescript_arrow/__snapshots__/jsfmt.spec.js.snap b/tests/typescript_arrow/__snapshots__/jsfmt.spec.js.snap index 394c70a0b..837d1324e 100644 --- a/tests/typescript_arrow/__snapshots__/jsfmt.spec.js.snap +++ b/tests/typescript_arrow/__snapshots__/jsfmt.spec.js.snap @@ -40,3 +40,108 @@ app.get("/", (req, res): void => { ================================================================================ `; + +exports[`arrow_regression.js 2`] = ` +====================================options===================================== +parsers: ["typescript"] +printWidth: 80 +semi: false + | printWidth +=====================================input====================================== +const bar = (...varargs:any[]) => { + console.log(varargs); +}; + +const foo = (x:string):void => ( + bar( + x, + () => {}, + () => {} + ) +); + +app.get("/", (req, res): void => { + res.send("Hello world"); +}); + +=====================================output===================================== +const bar = (...varargs: any[]) => { + console.log(varargs) +} + +const foo = (x: string): void => + bar( + x, + () => {}, + () => {} + ) + +app.get("/", (req, res): void => { + res.send("Hello world") +}) + +================================================================================ +`; + +exports[`comments.js 1`] = ` +====================================options===================================== +parsers: ["typescript"] +printWidth: 80 + | printWidth +=====================================input====================================== +const fn1 = () => { + return; +} /* foo */; + +const fn2 = () => { + return; +} + +// foo +; + +=====================================output===================================== +const fn1 = () => { + return; +}; /* foo */ + +const fn2 = () => { + return; +}; + +// foo + +================================================================================ +`; + +exports[`comments.js 2`] = ` +====================================options===================================== +parsers: ["typescript"] +printWidth: 80 +semi: false + | printWidth +=====================================input====================================== +const fn1 = () => { + return; +} /* foo */; + +const fn2 = () => { + return; +} + +// foo +; + +=====================================output===================================== +const fn1 = () => { + return +} /* foo */ + +const fn2 = () => { + return +} + +// foo + +================================================================================ +`; diff --git a/tests/typescript_arrow/comments.js b/tests/typescript_arrow/comments.js new file mode 100644 index 000000000..f4fc55cb1 --- /dev/null +++ b/tests/typescript_arrow/comments.js @@ -0,0 +1,10 @@ +const fn1 = () => { + return; +} /* foo */; + +const fn2 = () => { + return; +} + +// foo +; diff --git a/tests/typescript_arrow/jsfmt.spec.js b/tests/typescript_arrow/jsfmt.spec.js index 2ea3bb6eb..ba52aeb62 100644 --- a/tests/typescript_arrow/jsfmt.spec.js +++ b/tests/typescript_arrow/jsfmt.spec.js @@ -1 +1,2 @@ run_spec(__dirname, ["typescript"]); +run_spec(__dirname, ["typescript"], { semi: false }); From e606dcf4253aafbe867288be9a8742a0588f78de Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Fri, 6 Dec 2019 12:29:57 +0300 Subject: [PATCH 54/88] Bump typescript from 3.7.2 to 3.7.3 (#7102) Bumps [typescript](https://github.com/Microsoft/TypeScript) from 3.7.2 to 3.7.3. - [Release notes](https://github.com/Microsoft/TypeScript/releases) - [Commits](https://github.com/Microsoft/TypeScript/compare/v3.7.2...v3.7.3) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 48cf8daee..afbc4d97c 100644 --- a/package.json +++ b/package.json @@ -67,7 +67,7 @@ "resolve": "1.13.1", "semver": "6.3.0", "string-width": "4.1.0", - "typescript": "3.7.2", + "typescript": "3.7.3", "unicode-regex": "3.0.0", "unified": "8.4.2", "vnopts": "1.0.2", diff --git a/yarn.lock b/yarn.lock index fddd2cb08..bf95456ac 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6850,10 +6850,10 @@ typedarray@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" -typescript@3.7.2: - version "3.7.2" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.7.2.tgz#27e489b95fa5909445e9fef5ee48d81697ad18fb" - integrity sha512-ml7V7JfiN2Xwvcer+XAf2csGO1bPBdRbFCkYBczNZggrBZ9c7G3riSUeJmqEU5uOtXNPMhE3n+R4FA/3YOAWOQ== +typescript@3.7.3: + version "3.7.3" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.7.3.tgz#b36840668a16458a7025b9eabfad11b66ab85c69" + integrity sha512-Mcr/Qk7hXqFBXMN7p7Lusj1ktCBydylfQM/FZCk5glCNQJrCUKPkMHdo9R0MTFWsC/4kPFvDS0fDPvukfCkFsw== uglify-js@^3.1.4: version "3.6.0" From f421c7f6133761ad63ae2b86251ebba8e4f0ba7d Mon Sep 17 00:00:00 2001 From: Georgii Dolzhykov Date: Fri, 6 Dec 2019 20:03:26 +0200 Subject: [PATCH 55/88] =?UTF-8?q?fix(typescript):=20align=20printing=20of?= =?UTF-8?q?=20comments=20in=20function=20types=20w=E2=80=A6=20(#7104)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * fix(typescript): align printing of comments in function types with Flow and Babel * add changelog * add tests for --no-semi --- changelog_unreleased/typescript/pr-7104.md | 22 + src/language-js/comments.js | 12 +- .../comments/__snapshots__/jsfmt.spec.js.snap | 2572 ++++++++++++++++- tests/comments/issues.js | 30 - tests/comments/jsfmt.spec.js | 3 +- .../__snapshots__/jsfmt.spec.js.snap | 152 + tests/flow_comments/interface.js | 6 + tests/flow_comments/issues.js | 29 + .../flow_union.js => flow_comments/union.js} | 0 .../__snapshots__/jsfmt.spec.js.snap | 216 ++ tests/typescript_comments/declare_function.ts | 4 + tests/typescript_comments/interface.ts | 28 + tests/typescript_comments/issues.ts | 29 + tests/typescript_comments/union.ts | 19 + 14 files changed, 2950 insertions(+), 172 deletions(-) create mode 100644 changelog_unreleased/typescript/pr-7104.md create mode 100644 tests/flow_comments/interface.js create mode 100644 tests/flow_comments/issues.js rename tests/{comments/flow_union.js => flow_comments/union.js} (100%) create mode 100644 tests/typescript_comments/declare_function.ts create mode 100644 tests/typescript_comments/interface.ts create mode 100644 tests/typescript_comments/issues.ts create mode 100644 tests/typescript_comments/union.ts diff --git a/changelog_unreleased/typescript/pr-7104.md b/changelog_unreleased/typescript/pr-7104.md new file mode 100644 index 000000000..07f5f2115 --- /dev/null +++ b/changelog_unreleased/typescript/pr-7104.md @@ -0,0 +1,22 @@ +#### Fix printing of comments in function types ([#7104](https://github.com/prettier/prettier/pull/7104) by [@thorn0](https://github.com/thorn0)) + + +```ts +// Input +type f1 = ( + currentRequest: {a: number}, + // TODO this is a very very very very long comment that makes it go > 80 columns +) => number; + +// Prettier stable +type f1 = (currentRequest: { + a: number; +}) => // TODO this is a very very very very long comment that makes it go > 80 columns +number; + +// Prettier master +type f1 = ( + currentRequest: { a: number } + // TODO this is a very very very very long comment that makes it go > 80 columns +) => number; +``` diff --git a/src/language-js/comments.js b/src/language-js/comments.js index f5cefb375..60c8848e3 100644 --- a/src/language-js/comments.js +++ b/src/language-js/comments.js @@ -592,7 +592,7 @@ function handleLastFunctionArgComments( comment, options ) { - // Type definitions functions + // Flow function type definitions if ( precedingNode && precedingNode.type === "FunctionTypeParam" && @@ -605,7 +605,7 @@ function handleLastFunctionArgComments( return true; } - // Real functions + // Real functions and TypeScript function type definitions if ( precedingNode && (precedingNode.type === "Identifier" || @@ -615,7 +615,13 @@ function handleLastFunctionArgComments( enclosingNode.type === "FunctionExpression" || enclosingNode.type === "FunctionDeclaration" || enclosingNode.type === "ObjectMethod" || - enclosingNode.type === "ClassMethod") && + enclosingNode.type === "ClassMethod" || + enclosingNode.type === "TSDeclareFunction" || + enclosingNode.type === "TSCallSignatureDeclaration" || + enclosingNode.type === "TSConstructSignatureDeclaration" || + enclosingNode.type === "TSMethodSignature" || + enclosingNode.type === "TSConstructorType" || + enclosingNode.type === "TSFunctionType") && privateUtil.getNextNonSpaceNonCommentCharacter( text, comment, diff --git a/tests/comments/__snapshots__/jsfmt.spec.js.snap b/tests/comments/__snapshots__/jsfmt.spec.js.snap index 099b640e1..b96df2538 100644 --- a/tests/comments/__snapshots__/jsfmt.spec.js.snap +++ b/tests/comments/__snapshots__/jsfmt.spec.js.snap @@ -2,7 +2,7 @@ exports[`arrow.js 1`] = ` ====================================options===================================== -parsers: ["flow", "babel"] +parsers: ["flow", "babel", "typescript"] printWidth: 80 | printWidth =====================================input====================================== @@ -18,9 +18,28 @@ const fn2 = (/*event, data*/) => doSomething(anything); ================================================================================ `; +exports[`arrow.js 2`] = ` +====================================options===================================== +parsers: ["flow", "babel", "typescript"] +printWidth: 80 +semi: false + | printWidth +=====================================input====================================== +const fn = (/*event, data*/) => doSomething(); + +const fn2 = (/*event, data*/) => doSomething(anything); + +=====================================output===================================== +const fn = (/*event, data*/) => doSomething() + +const fn2 = (/*event, data*/) => doSomething(anything) + +================================================================================ +`; + exports[`assignment-pattern.js 1`] = ` ====================================options===================================== -parsers: ["flow", "babel"] +parsers: ["flow", "babel", "typescript"] printWidth: 80 | printWidth =====================================input====================================== @@ -43,9 +62,35 @@ let { ================================================================================ `; +exports[`assignment-pattern.js 2`] = ` +====================================options===================================== +parsers: ["flow", "babel", "typescript"] +printWidth: 80 +semi: false + | printWidth +=====================================input====================================== +const { a /* comment */ = 1 } = b; + +const { c = 1 /* comment */ } = d; + +let {d //comment += b} = c + +=====================================output===================================== +const { a /* comment */ = 1 } = b + +const { c = 1 /* comment */ } = d + +let { + d = b //comment +} = c + +================================================================================ +`; + exports[`before-comma.js 1`] = ` ====================================options===================================== -parsers: ["flow", "babel"] +parsers: ["flow", "babel", "typescript"] printWidth: 80 | printWidth =====================================input====================================== @@ -67,9 +112,34 @@ const foo = { ================================================================================ `; +exports[`before-comma.js 2`] = ` +====================================options===================================== +parsers: ["flow", "babel", "typescript"] +printWidth: 80 +semi: false + | printWidth +=====================================input====================================== +const foo = { + a: 'a' /* comment for this line */, + + /* Section B */ + b: 'b', +}; + +=====================================output===================================== +const foo = { + a: "a" /* comment for this line */, + + /* Section B */ + b: "b" +} + +================================================================================ +`; + exports[`binary-expressions.js 1`] = ` ====================================options===================================== -parsers: ["flow", "babel"] +parsers: ["flow", "babel", "typescript"] printWidth: 80 | printWidth =====================================input====================================== @@ -221,9 +291,164 @@ function bitwiseXor() { ================================================================================ `; +exports[`binary-expressions.js 2`] = ` +====================================options===================================== +parsers: ["flow", "babel", "typescript"] +printWidth: 80 +semi: false + | printWidth +=====================================input====================================== +function addition() { + 0 + // Comment + + x +} + +function multiplication() { + 0 + // Comment + * x +} + +function division() { + 0 + // Comment + / x +} + +function substraction() { + 0 + // Comment + - x +} + +function remainder() { + 0 + // Comment + % x +} + +function exponentiation() { + 0 + // Comment + ** x +} + +function leftShift() { + 0 + // Comment + << x +} + +function rightShift() { + 0 + // Comment + >> x +} + +function unsignedRightShift() { + 0 + // Comment + >>> x +} + +function bitwiseAnd() { + 0 + // Comment + & x +} + +function bitwiseOr() { + 0 + // Comment + | x +} + +function bitwiseXor() { + 0 + // Comment + ^ x +} + +=====================================output===================================== +function addition() { + 0 + + // Comment + x +} + +function multiplication() { + 0 * + // Comment + x +} + +function division() { + 0 / + // Comment + x +} + +function substraction() { + 0 - + // Comment + x +} + +function remainder() { + 0 % + // Comment + x +} + +function exponentiation() { + 0 ** + // Comment + x +} + +function leftShift() { + 0 << + // Comment + x +} + +function rightShift() { + 0 >> + // Comment + x +} + +function unsignedRightShift() { + 0 >>> + // Comment + x +} + +function bitwiseAnd() { + 0 & + // Comment + x +} + +function bitwiseOr() { + 0 | + // Comment + x +} + +function bitwiseXor() { + 0 ^ + // Comment + x +} + +================================================================================ +`; + exports[`blank.js 1`] = ` ====================================options===================================== -parsers: ["flow", "babel"] +parsers: ["flow", "babel", "typescript"] printWidth: 80 | printWidth =====================================input====================================== @@ -275,9 +500,64 @@ printWidth: 80 ================================================================================ `; +exports[`blank.js 2`] = ` +====================================options===================================== +parsers: ["flow", "babel", "typescript"] +printWidth: 80 +semi: false + | printWidth +=====================================input====================================== +// This file only +// has comments. This comment +// should still exist +// +// when printed. + +/** + * @typedef {DataDrivenMapping|ConstantMapping} Mapping + */ +/** + * @typedef {Object.} ConfigurationMapping + */ + +/** + * @typedef {Function} D3Scale - a D3 scale + * @property {Function} ticks + * @property {Function} tickFormat + */ +// comment + +// comment + +=====================================output===================================== +// This file only +// has comments. This comment +// should still exist +// +// when printed. + +/** + * @typedef {DataDrivenMapping|ConstantMapping} Mapping + */ +/** + * @typedef {Object.} ConfigurationMapping + */ + +/** + * @typedef {Function} D3Scale - a D3 scale + * @property {Function} ticks + * @property {Function} tickFormat + */ +// comment + +// comment + +================================================================================ +`; + exports[`break-continue-statements.js 1`] = ` ====================================options===================================== -parsers: ["flow", "babel"] +parsers: ["flow", "babel", "typescript"] printWidth: 80 | printWidth =====================================input====================================== @@ -309,9 +589,44 @@ loop: for (;;) { ================================================================================ `; +exports[`break-continue-statements.js 2`] = ` +====================================options===================================== +parsers: ["flow", "babel", "typescript"] +printWidth: 80 +semi: false + | printWidth +=====================================input====================================== +for (;;) { + break /* comment */; + continue /* comment */; +} + +loop: for (;;) { + break /* comment */ loop; + break loop /* comment */; + continue /* comment */ loop; + continue loop /* comment */; +} + +=====================================output===================================== +for (;;) { + break /* comment */ + continue /* comment */ +} + +loop: for (;;) { + break /* comment */ loop + break loop /* comment */ + continue /* comment */ loop + continue loop /* comment */ +} + +================================================================================ +`; + exports[`call_comment.js 1`] = ` ====================================options===================================== -parsers: ["flow", "babel"] +parsers: ["flow", "babel", "typescript"] printWidth: 80 | printWidth =====================================input====================================== @@ -352,9 +667,53 @@ render?.( ================================================================================ `; +exports[`call_comment.js 2`] = ` +====================================options===================================== +parsers: ["flow", "babel", "typescript"] +printWidth: 80 +semi: false + | printWidth +=====================================input====================================== +render( // Warm any cache + , + container +); + +React.render( // Warm any cache + , + container +); + +render?.( // Warm any cache + , + container +); + +=====================================output===================================== +render( + // Warm any cache + , + container +) + +React.render( + // Warm any cache + , + container +) + +render?.( + // Warm any cache + , + container +) + +================================================================================ +`; + exports[`dangling.js 1`] = ` ====================================options===================================== -parsers: ["flow", "babel"] +parsers: ["flow", "babel", "typescript"] printWidth: 80 | printWidth =====================================input====================================== @@ -396,9 +755,54 @@ export /* dangling */{}; ================================================================================ `; +exports[`dangling.js 2`] = ` +====================================options===================================== +parsers: ["flow", "babel", "typescript"] +printWidth: 80 +semi: false + | printWidth +=====================================input====================================== +var a = {/* dangling */}; +var b = { + // dangling +}; +var b = [/* dangling */]; +function d() { + /* dangling */ +} +new Thing(/* dangling */); +Thing(/* dangling */); +Thing?.(/* dangling */); +declare class Foo extends Qux {/* dangling */} +export /* dangling */{}; + +=====================================output===================================== +var a = { + /* dangling */ +} +var b = { + // dangling +} +var b = [ + /* dangling */ +] +function d() { + /* dangling */ +} +new Thing(/* dangling */) +Thing(/* dangling */) +Thing?.(/* dangling */) +declare class Foo extends Qux { + /* dangling */ +} +export /* dangling */{} + +================================================================================ +`; + exports[`dangling_array.js 1`] = ` ====================================options===================================== -parsers: ["flow", "babel"] +parsers: ["flow", "babel", "typescript"] printWidth: 80 | printWidth =====================================input====================================== @@ -418,9 +822,32 @@ expect(() => {}).toTriggerReadyStateChanges([ ================================================================================ `; +exports[`dangling_array.js 2`] = ` +====================================options===================================== +parsers: ["flow", "babel", "typescript"] +printWidth: 80 +semi: false + | printWidth +=====================================input====================================== +expect(() => {}).toTriggerReadyStateChanges([ + // Nothing. +]); + +[1 /* first comment */, 2 /* second comment */, 3]; + +=====================================output===================================== +expect(() => {}).toTriggerReadyStateChanges([ + // Nothing. +]) + +;[1 /* first comment */, 2 /* second comment */, 3] + +================================================================================ +`; + exports[`dangling_for.js 1`] = ` ====================================options===================================== -parsers: ["flow", "babel"] +parsers: ["flow", "babel", "typescript"] printWidth: 80 | printWidth =====================================input====================================== @@ -439,9 +866,31 @@ for (;;); ================================================================================ `; +exports[`dangling_for.js 2`] = ` +====================================options===================================== +parsers: ["flow", "babel", "typescript"] +printWidth: 80 +semi: false + | printWidth +=====================================input====================================== +for // comment +(;;); + +for /* comment */(;;); + +=====================================output===================================== +// comment +for (;;); + +/* comment */ +for (;;); + +================================================================================ +`; + exports[`dynamic_imports.js 1`] = ` ====================================options===================================== -parsers: ["flow", "babel"] +parsers: ["flow", "babel", "typescript"] printWidth: 80 | printWidth =====================================input====================================== @@ -490,9 +939,61 @@ wrap( ================================================================================ `; +exports[`dynamic_imports.js 2`] = ` +====================================options===================================== +parsers: ["flow", "babel", "typescript"] +printWidth: 80 +semi: false + | printWidth +=====================================input====================================== +import(/* Hello */ 'something') + +import('something' /* Hello */) + +import(/* Hello */ 'something' /* Hello */) + +import('something' /* Hello */ + 'else') + +import( + /* Hello */ + 'something' + /* Hello */ +) + +wrap( + import(/* Hello */ + 'something' + ) +) + +=====================================output===================================== +import(/* Hello */ "something") + +import("something" /* Hello */) + +import(/* Hello */ "something" /* Hello */) + +import("something" /* Hello */ + "else") + +import( + /* Hello */ + "something" + /* Hello */ +) + +wrap( + import( + /* Hello */ + "something" + ) +) + +================================================================================ +`; + exports[`export.js 1`] = ` ====================================options===================================== -parsers: ["flow", "babel"] +parsers: ["flow", "babel", "typescript"] printWidth: 80 | printWidth =====================================input====================================== @@ -546,9 +1047,66 @@ export { ================================================================================ `; +exports[`export.js 2`] = ` +====================================options===================================== +parsers: ["flow", "babel", "typescript"] +printWidth: 80 +semi: false + | printWidth +=====================================input====================================== +export //comment +{} + +export /* comment */ {}; + +const foo = '' +export { + foo // comment +} + +const bar = '' +export { + // comment + bar +} + +const fooo = '' +const barr = '' +export { + fooo, // comment + barr, // comment +} + +=====================================output===================================== +export //comment +{} + +export /* comment */{} + +const foo = "" +export { + foo // comment +} + +const bar = "" +export { + // comment + bar +} + +const fooo = "" +const barr = "" +export { + fooo, // comment + barr // comment +} + +================================================================================ +`; + exports[`first-line.js 1`] = ` ====================================options===================================== -parsers: ["flow", "babel"] +parsers: ["flow", "babel", "typescript"] printWidth: 80 | printWidth =====================================input====================================== @@ -562,59 +1120,26 @@ b; ================================================================================ `; -exports[`flow_union.js 1`] = ` +exports[`first-line.js 2`] = ` ====================================options===================================== -parsers: ["flow", "babel"] +parsers: ["flow", "babel", "typescript"] printWidth: 80 +semi: false | printWidth =====================================input====================================== -type UploadState - // The upload hasnt begun yet - = {type: "Not_begun"} - // The upload timed out - | {type: "Timed_out"} - // Failed somewhere on the line - | {type: "Failed", error: E, errorMsg: EM} - // Uploading to aws3 and CreatePostMutation succeeded - | {type: "Success", data: D}; - -type UploadState2 - // The upload hasnt begun yet - = A - // The upload timed out - | B - // Failed somewhere on the line - | C - // Uploading to aws3 and CreatePostMutation succeeded - | D; +a // comment +b =====================================output===================================== -type UploadState = - // The upload hasnt begun yet - | { type: "Not_begun" } - // The upload timed out - | { type: "Timed_out" } - // Failed somewhere on the line - | { type: "Failed", error: E, errorMsg: EM } - // Uploading to aws3 and CreatePostMutation succeeded - | { type: "Success", data: D }; - -type UploadState2 = - // The upload hasnt begun yet - | A - // The upload timed out - | B - // Failed somewhere on the line - | C - // Uploading to aws3 and CreatePostMutation succeeded - | D; +a // comment +b ================================================================================ `; exports[`function-declaration.js 1`] = ` ====================================options===================================== -parsers: ["flow", "babel"] +parsers: ["flow", "babel", "typescript"] printWidth: 80 | printWidth =====================================input====================================== @@ -746,9 +1271,144 @@ function foo4() { ================================================================================ `; +exports[`function-declaration.js 2`] = ` +====================================options===================================== +parsers: ["flow", "babel", "typescript"] +printWidth: 80 +semi: false + | printWidth +=====================================input====================================== +function a(/* comment */) {} // comment +function b() {} // comment +function c(/* comment */ argA, argB, argC) {} // comment +call((/*object*/ row) => {}); +KEYPAD_NUMBERS.map(num => ( // Buttons 0-9 +
+)); + +function f1 /* f */() {} +function f2 (/* args */) {} +function f3 () /* returns */ {} +function f4 /* f */(/* args */) /* returns */ {} + +function f5 /* f */(/* a */ a) {} +function f6 /* f */(a /* a */) {} +function f7 /* f */(/* a */ a) /* returns */ {} + +const obj = { + f1 /* f */() {}, + f2 (/* args */) {}, + f3 () /* returns */ {}, + f4 /* f */(/* args */) /* returns */ {}, +}; + +(function f /* f */() {})(); +(function f (/* args */) {})(); +(function f () /* returns */ {})(); +(function f /* f */(/* args */) /* returns */ {})(); + +class C1 { + f/* f */() {} +} +class C2 { + f(/* args */) {} +} +class C3 { + f() /* returns */ {} +} +class C4 { + f/* f */(/* args */) /* returns */ {} +} + +function foo1() +// this is a function +{ + return 42 +} + +function foo2() // this is a function +{ + return 42 +} + +function foo3() { // this is a function + return 42 +} + +function foo4() { + // this is a function + return 42; +} + +=====================================output===================================== +function a(/* comment */) {} // comment +function b() {} // comment +function c(/* comment */ argA, argB, argC) {} // comment +call((/*object*/ row) => {}) +KEYPAD_NUMBERS.map(( + num // Buttons 0-9 +) =>
) + +function f1 /* f */() {} +function f2(/* args */) {} +function f3() /* returns */ {} +function f4 /* f */(/* args */) /* returns */ {} + +function f5 /* f */(/* a */ a) {} +function f6 /* f */(a /* a */) {} +function f7 /* f */(/* a */ a) /* returns */ {} + +const obj = { + f1 /* f */() {}, + f2(/* args */) {}, + f3() /* returns */ {}, + f4 /* f */(/* args */) /* returns */ {} +} + +;(function f /* f */() {})() +;(function f(/* args */) {})() +;(function f() /* returns */ {})() +;(function f /* f */(/* args */) /* returns */ {})() + +class C1 { + f /* f */() {} +} +class C2 { + f(/* args */) {} +} +class C3 { + f() /* returns */ {} +} +class C4 { + f /* f */(/* args */) /* returns */ {} +} + +function foo1() { + // this is a function + return 42 +} + +function foo2() { + // this is a function + return 42 +} + +function foo3() { + // this is a function + return 42 +} + +function foo4() { + // this is a function + return 42 +} + +================================================================================ +`; + exports[`if.js 1`] = ` ====================================options===================================== -parsers: ["flow", "babel"] +parsers: ["flow", "babel", "typescript"] printWidth: 80 | printWidth =====================================input====================================== @@ -894,9 +1554,158 @@ if (14) { ================================================================================ `; +exports[`if.js 2`] = ` +====================================options===================================== +parsers: ["flow", "babel", "typescript"] +printWidth: 80 +semi: false + | printWidth +=====================================input====================================== +if (1) +// comment +{ + false +} +// comment +else if (2) + true +// multi +// ple +// lines +else if (3) + // existing comment + true +// okay? +else if (4) { + // empty with existing comment +} +// comment +else { +} + +if (5) // comment +true + +if (6) // comment +{true} +else if (7) // comment +true +else // comment +{true} + +if (8) // comment +// comment +{true} +else if (9) // comment +// comment +true +else // comment +// comment +{true} + +if (10) /* comment */ // comment +{true} +else if (11) /* comment */ +true +else if (12) // comment /* comment */ // comment +true +else if (13) /* comment */ /* comment */ // comment +true +else /* comment */ +{true} + +if (14) // comment +/* comment */ +// comment +{true} +else if (15) // comment +/* comment */ +/* comment */ // comment +true + +=====================================output===================================== +if (1) { + // comment + false +} +// comment +else if (2) true +// multi +// ple +// lines +else if (3) + // existing comment + true +// okay? +else if (4) { + // empty with existing comment +} +// comment +else { +} + +if (5) + // comment + true + +if (6) { + // comment + true +} else if (7) + // comment + true +// comment +else { + true +} + +if (8) { + // comment + // comment + true +} else if (9) + // comment + // comment + true +// comment +// comment +else { + true +} + +if (10) { + /* comment */ // comment + true +} else if (11) + /* comment */ + true +else if (12) + // comment /* comment */ // comment + true +else if (13) + /* comment */ /* comment */ // comment + true +/* comment */ else { + true +} + +if (14) { + // comment + /* comment */ + // comment + true +} else if (15) + // comment + /* comment */ + /* comment */ // comment + true + +================================================================================ +`; + exports[`issues.js 1`] = ` ====================================options===================================== -parsers: ["flow", "babel"] +parsers: ["flow", "babel", "typescript"] printWidth: 80 | printWidth =====================================input====================================== @@ -916,29 +1725,6 @@ throw new ProcessSystemError({ originalError: acc.error, // Just in case. }); -// Adding a comment stops the pretty printing process and everything is -// squished in a single line afterward -export type BuckWebSocketMessage = { - // Not actually from Buck - this is to let the receiver know that the socket is connected. - type: 'SocketConnected', -} | { - type: 'BuildProgressUpdated', - progressValue: number, -} | { - type: 'BuildFinished', - exitCode: number, -} | { - type: 'BuildStarted', -} | { - type: 'ParseStarted', -} | { - type: 'ParseFinished', -} | { - type: 'RunStarted', -} | { - type: 'RunComplete', -}; - // Missing one level of indentation because of the comment const rootEpic = (actions, store) => ( combineEpics(...epics)(actions, store) @@ -949,13 +1735,6 @@ const rootEpic = (actions, store) => ( }) ); -// Two extra levels of indentation because of the comment -export type AsyncExecuteOptions = child_process$execFileOpts & { - // The contents to write to stdin. - stdin?: ?string, - dontLogInNuclide?: ?boolean, -}; - // optional trailing comma gets moved all the way to the beginning const regex = new RegExp( '^\\\\s*' + // beginning of the line @@ -1025,37 +1804,6 @@ throw new ProcessSystemError({ originalError: acc.error // Just in case. }); -// Adding a comment stops the pretty printing process and everything is -// squished in a single line afterward -export type BuckWebSocketMessage = - | { - // Not actually from Buck - this is to let the receiver know that the socket is connected. - type: "SocketConnected" - } - | { - type: "BuildProgressUpdated", - progressValue: number - } - | { - type: "BuildFinished", - exitCode: number - } - | { - type: "BuildStarted" - } - | { - type: "ParseStarted" - } - | { - type: "ParseFinished" - } - | { - type: "RunStarted" - } - | { - type: "RunComplete" - }; - // Missing one level of indentation because of the comment const rootEpic = (actions, store) => combineEpics(...epics)(actions, store) @@ -1065,13 +1813,6 @@ const rootEpic = (actions, store) => return stream; }); -// Two extra levels of indentation because of the comment -export type AsyncExecuteOptions = child_process$execFileOpts & { - // The contents to write to stdin. - stdin?: ?string, - dontLogInNuclide?: ?boolean -}; - // optional trailing comma gets moved all the way to the beginning const regex = new RegExp( "^\\\\s*" + // beginning of the line @@ -1125,9 +1866,173 @@ foo( ================================================================================ `; +exports[`issues.js 2`] = ` +====================================options===================================== +parsers: ["flow", "babel", "typescript"] +printWidth: 80 +semi: false + | printWidth +=====================================input====================================== +// Does not need to break as it fits in 80 columns +this.call(a, /* comment */ b); + +function f( + someReallyLongArgument: WithSomeLongType, + someReallyLongArgument2: WithSomeLongType, + // Trailing comment should stay after +) {} + +// Comments should either stay at the end of the line or always before, but +// not one before and one after. +throw new ProcessSystemError({ + code: acc.error.code, // Alias of errno + originalError: acc.error, // Just in case. +}); + +// Missing one level of indentation because of the comment +const rootEpic = (actions, store) => ( + combineEpics(...epics)(actions, store) + // Log errors and continue. + .catch((err, stream) => { + getLogger().error(err); + return stream; + }) +); + +// optional trailing comma gets moved all the way to the beginning +const regex = new RegExp( + '^\\\\s*' + // beginning of the line + 'name\\\\s*=\\\\s*' + // name = + '[\\'"]' + // opening quotation mark + escapeStringRegExp(target.name) + // target name + '[\\'"]' + // closing quotation mark + ',?$', // optional trailing comma +); + +// The comment is moved and doesn't trigger the eslint rule anymore +import path from 'path'; // eslint-disable-line nuclide-internal/prefer-nuclide-uri + +// Comments disappear in-between MemberExpressions +Observable.of(process) + // Don't complete until we say so! + .merge(Observable.never()) + // Get the errors. + .takeUntil(throwOnError ? errors.flatMap(Observable.throw) : errors) + .takeUntil(exit); + +// Comments disappear inside of JSX +
+ {/* Some comment */} +
; + +// Comments in JSX tag are placed in a non optimal way +
; + +// Comments disappear in empty blocks +if (1) { + // Comment +} + +// Comments trigger invalid JavaScript in-between else if +if (1) { +} +// Comment +else { + +} + +// The comment makes the line break in a weird way +const result = asyncExecute('non_existing_command', /* args */ []); + +// The closing paren is printed on the same line as the comment +foo({} + // Hi +); + +=====================================output===================================== +// Does not need to break as it fits in 80 columns +this.call(a, /* comment */ b) + +function f( + someReallyLongArgument: WithSomeLongType, + someReallyLongArgument2: WithSomeLongType + // Trailing comment should stay after +) {} + +// Comments should either stay at the end of the line or always before, but +// not one before and one after. +throw new ProcessSystemError({ + code: acc.error.code, // Alias of errno + originalError: acc.error // Just in case. +}) + +// Missing one level of indentation because of the comment +const rootEpic = (actions, store) => + combineEpics(...epics)(actions, store) + // Log errors and continue. + .catch((err, stream) => { + getLogger().error(err) + return stream + }) + +// optional trailing comma gets moved all the way to the beginning +const regex = new RegExp( + "^\\\\s*" + // beginning of the line + "name\\\\s*=\\\\s*" + // name = + "['\\"]" + // opening quotation mark + escapeStringRegExp(target.name) + // target name + "['\\"]" + // closing quotation mark + ",?$" // optional trailing comma +) + +// The comment is moved and doesn't trigger the eslint rule anymore +import path from "path" // eslint-disable-line nuclide-internal/prefer-nuclide-uri + +// Comments disappear in-between MemberExpressions +Observable.of(process) + // Don't complete until we say so! + .merge(Observable.never()) + // Get the errors. + .takeUntil(throwOnError ? errors.flatMap(Observable.throw) : errors) + .takeUntil(exit) + +// Comments disappear inside of JSX +;
{/* Some comment */}
+ +// Comments in JSX tag are placed in a non optimal way +;
+ +// Comments disappear in empty blocks +if (1) { + // Comment +} + +// Comments trigger invalid JavaScript in-between else if +if (1) { +} +// Comment +else { +} + +// The comment makes the line break in a weird way +const result = asyncExecute("non_existing_command", /* args */ []) + +// The closing paren is printed on the same line as the comment +foo( + {} + // Hi +) + +================================================================================ +`; + exports[`jsdoc.js 1`] = ` ====================================options===================================== -parsers: ["flow", "babel"] +parsers: ["flow", "babel", "typescript"] printWidth: 80 | printWidth =====================================input====================================== @@ -1188,9 +2093,73 @@ function HelloWorld() { ================================================================================ `; +exports[`jsdoc.js 2`] = ` +====================================options===================================== +parsers: ["flow", "babel", "typescript"] +printWidth: 80 +semi: false + | printWidth +=====================================input====================================== +/** @type {any} */ +const x = ( +
+
+
+); + +/** + * @type {object} + */ +() => ( +
+ sajdfpoiasdjfpoiasdjfpoiasdjfpoiadsjfpaoisdjfapsdiofjapioisadfaskfaspiofjp +
+); + +/** + * @type {object} + */ +function HelloWorld() { + return ( +
+ Test +
+ ); +} +=====================================output===================================== +/** @type {any} */ +const x = ( +
+
+
+) + +/** + * @type {object} + */ +;() => ( +
+ sajdfpoiasdjfpoiasdjfpoiasdjfpoiadsjfpaoisdjfapsdiofjapioisadfaskfaspiofjp +
+) + +/** + * @type {object} + */ +function HelloWorld() { + return ( +
+ Test +
+ ) +} + +================================================================================ +`; + exports[`jsx.js 1`] = ` ====================================options===================================== -parsers: ["flow", "babel"] +parsers: ["flow", "babel", "typescript"] printWidth: 80 | printWidth =====================================input====================================== @@ -1429,9 +2398,251 @@ onClick={() => {}}> ================================================================================ `; +exports[`jsx.js 2`] = ` +====================================options===================================== +parsers: ["flow", "babel", "typescript"] +printWidth: 80 +semi: false + | printWidth +=====================================input====================================== +
+ { + /* comment */ + } +
; + +
+ {/* comment */ + } +
; + +
+ {/* comment +*/ + } +
; + +
+ {a/* comment +*/ + } +
; + +
+ {/* comment +*/ + a + } +
; + +
+ {/* comment */ + } +
; + +
+ {/* comment */} +
; + +
+ { + // single line comment + } +
; + +
+ { + // multiple line comments 1 + // multiple line comments 2 + } +
; + +
+ { + // multiple mixed comments 1 + /* multiple mixed comments 2 */ + /* multiple mixed comments 3 */ + // multiple mixed comments 4 + } +
; + +
+ { + // Some very v ery very very merry (xmas) very very long line to break line width limit + } +
; + +
{/*
Some very v ery very very long line to break line width limit
*/}
; + +
+ {/** + * JSDoc-y comment in JSX. I wonder what will happen to it? + */} +
; + +
+ { + /** + * Another JSDoc comment in JSX. + */ + } +
; + +
{}}> + +
; + +
+ {foo} +
; + +
+ {foo} +
; + +
+ {foo} +
; + +
+ {children} +
; + + + {} + + + +=====================================output===================================== +;
{/* comment */}
+ +;
{/* comment */}
+ +;
+ {/* comment + */} +
+ +;
+ { + a + /* comment + */ + } +
+ +;
+ { + /* comment + */ + a + } +
+ +;
{/* comment */}
+ +;
{/* comment */}
+ +;
+ { + // single line comment + } +
+ +;
+ { + // multiple line comments 1 + // multiple line comments 2 + } +
+ +;
+ { + // multiple mixed comments 1 + /* multiple mixed comments 2 */ + /* multiple mixed comments 3 */ + // multiple mixed comments 4 + } +
+ +;
+ { + // Some very v ery very very merry (xmas) very very long line to break line width limit + } +
+ +;
+ {/*
Some very v ery very very long line to break line width limit
*/} +
+ +;
+ {/** + * JSDoc-y comment in JSX. I wonder what will happen to it? + */} +
+ +;
+ {/** + * Another JSDoc comment in JSX. + */} +
+ +;
{}} +>
+ +;
+ {foo} +
+ +;
+ {foo} +
+ +;
+ {foo} +
+ +;
+ {children} +
+ +; + {} + + + +================================================================================ +`; + exports[`last-arg.js 1`] = ` ====================================options===================================== -parsers: ["flow", "babel"] +parsers: ["flow", "babel", "typescript"] printWidth: 80 | printWidth =====================================input====================================== @@ -1621,9 +2832,202 @@ class Foo { ================================================================================ `; +exports[`last-arg.js 2`] = ` +====================================options===================================== +parsers: ["flow", "babel", "typescript"] +printWidth: 80 +semi: false + | printWidth +=====================================input====================================== +type f1 = ( + currentRequest: {a: number}, + // TODO this is a very very very very long comment that makes it go > 80 columns +) => number; + +f2 = ( + currentRequest: {a: number}, + // TODO this is a very very very very long comment that makes it go > 80 columns +): number => {}; + +f3 = ( + currentRequest: {a: number}, + // TODO this is a very very very very long comment that makes it go > 80 columns +) => {}; + +f4 = function( + currentRequest: {a: number}, + // TODO this is a very very very very long comment that makes it go > 80 columns +) {}; + +class X { + f( + currentRequest: {a: number}, + // TODO this is a very very very very long comment that makes it go > 80 columns + ) {} +} + +function f5( + a: number +// some comment here +): number { + return a + 1; +} + +var x = { + getSectionMode( + pageMetaData: PageMetaData, + sectionMetaData: SectionMetaData + /* $FlowFixMe This error was exposed while converting keyMirror + * to keyMirrorRecursive */ + ): $Enum { + } +} + +class X2 { + getSectionMode( + pageMetaData: PageMetaData, + sectionMetaData: SectionMetaData = ['unknown'] + /* $FlowFixMe This error was exposed while converting keyMirror + * to keyMirrorRecursive */ + ): $Enum { + } +} + +class Foo { + a(lol /*string*/) {} + + b(lol /*string*/ + ) {} + + d( + lol /*string*/, + lol2 /*string*/, + lol3 /*string*/, + lol4 /*string*/ + ) {} + + d( + lol /*string*/, + lol2 /*string*/, + lol3 /*string*/, + lol4 /*string*/ + ) /*string*/ {} + + // prettier-ignore + c(lol /*string*/ + ) {} + + // prettier-ignore + d( + lol /*string*/, + lol2 /*string*/, + lol3 /*string*/, + lol4 /*string*/ + ) {} + + // prettier-ignore + e( + lol /*string*/, + lol2 /*string*/, + lol3 /*string*/, + lol4 /*string*/ + ) {} /* string*/ +} + +=====================================output===================================== +type f1 = ( + currentRequest: { a: number } + // TODO this is a very very very very long comment that makes it go > 80 columns +) => number + +f2 = ( + currentRequest: { a: number } + // TODO this is a very very very very long comment that makes it go > 80 columns +): number => {} + +f3 = ( + currentRequest: { a: number } + // TODO this is a very very very very long comment that makes it go > 80 columns +) => {} + +f4 = function( + currentRequest: { a: number } + // TODO this is a very very very very long comment that makes it go > 80 columns +) {} + +class X { + f( + currentRequest: { a: number } + // TODO this is a very very very very long comment that makes it go > 80 columns + ) {} +} + +function f5( + a: number + // some comment here +): number { + return a + 1 +} + +var x = { + getSectionMode( + pageMetaData: PageMetaData, + sectionMetaData: SectionMetaData + /* $FlowFixMe This error was exposed while converting keyMirror + * to keyMirrorRecursive */ + ): $Enum {} +} + +class X2 { + getSectionMode( + pageMetaData: PageMetaData, + sectionMetaData: SectionMetaData = ["unknown"] + /* $FlowFixMe This error was exposed while converting keyMirror + * to keyMirrorRecursive */ + ): $Enum {} +} + +class Foo { + a(lol /*string*/) {} + + b(lol /*string*/) {} + + d(lol /*string*/, lol2 /*string*/, lol3 /*string*/, lol4 /*string*/) {} + + d( + lol /*string*/, + lol2 /*string*/, + lol3 /*string*/, + lol4 /*string*/ + ) /*string*/ {} + + // prettier-ignore + c(lol /*string*/ + ) {} + + // prettier-ignore + d( + lol /*string*/, + lol2 /*string*/, + lol3 /*string*/, + lol4 /*string*/ + ) {} + + // prettier-ignore + e( + lol /*string*/, + lol2 /*string*/, + lol3 /*string*/, + lol4 /*string*/ + ) {} /* string*/ +} + +================================================================================ +`; + exports[`preserve-new-line-last.js 1`] = ` ====================================options===================================== -parsers: ["flow", "babel"] +parsers: ["flow", "babel", "typescript"] printWidth: 80 | printWidth =====================================input====================================== @@ -1675,9 +3079,64 @@ function name() { ================================================================================ `; +exports[`preserve-new-line-last.js 2`] = ` +====================================options===================================== +parsers: ["flow", "babel", "typescript"] +printWidth: 80 +semi: false + | printWidth +=====================================input====================================== +function f() { + a + /* eslint-disable */ +} + +function f() { + a + + /* eslint-disable */ +} + +function name() { + // comment1 + func1() + + // comment2 + func2() + + // comment3 why func3 commented + // func3() +} + +=====================================output===================================== +function f() { + a + /* eslint-disable */ +} + +function f() { + a + + /* eslint-disable */ +} + +function name() { + // comment1 + func1() + + // comment2 + func2() + + // comment3 why func3 commented + // func3() +} + +================================================================================ +`; + exports[`return-statement.js 1`] = ` ====================================options===================================== -parsers: ["flow", "babel"] +parsers: ["flow", "babel", "typescript"] printWidth: 80 | printWidth =====================================input====================================== @@ -1937,9 +3396,272 @@ function inlineComment() { ================================================================================ `; +exports[`return-statement.js 2`] = ` +====================================options===================================== +parsers: ["flow", "babel", "typescript"] +printWidth: 80 +semi: false + | printWidth +=====================================input====================================== +function jsx() { + return ( + // Comment +
+ ); +} + +function unary() { + return ( + // Comment + !!x + ); +} + +function numericLiteralNoParen() { + return 1337; // Comment +} + +function logical() { + return ( + // Reason for 42 + 42 + ) && 84 +} + +function binary() { + return ( + // Reason for 42 + 42 + ) * 84 +} + +function binaryInBinaryLeft() { + return ( + // Reason for 42 + 42 + ) * 84 + 2 +} + +function binaryInBinaryRight() { + return ( + // Reason for 42 + 42 + ) + 84 * 2 +} + +function conditional() { + return ( + // Reason for 42 + 42 + ) ? 1 : 2 +} + +function binaryInConditional() { + return ( + // Reason for 42 + 42 + ) * 3 ? 1 : 2 +} + +function call() { + return ( + // Reason for a + a + )() +} + +function memberInside() { + return ( + // Reason for a.b + a.b + ).c +} + +function memberOutside() { + return ( + // Reason for a + a + ).b.c +} + +function memberInAndOutWithCalls() { + return ( + // Reason for a + aFunction.b() + ).c.d() +} + +function excessiveEverything() { + return ( + // Reason for stuff + a.b() * 3 + 4 ? (a\`hi\`, 1) ? 1 : 1 : 1 + ) +} + +// See https://github.com/prettier/prettier/issues/2392 +// function sequenceExpression() { +// return ( +// // Reason for a +// a +// ), b +// } + +function sequenceExpressionInside() { + return ( // Reason for a + a, b + ); +} + +function taggedTemplate() { + return ( + // Reason for a + a + )\`b\` +} + +function inlineComment() { + return ( + /* hi */ 42 + ) || 42 +} + +=====================================output===================================== +function jsx() { + return ( + // Comment +
+ ) +} + +function unary() { + return ( + // Comment + !!x + ) +} + +function numericLiteralNoParen() { + return 1337 // Comment +} + +function logical() { + return ( + // Reason for 42 + 42 && 84 + ) +} + +function binary() { + return ( + // Reason for 42 + 42 * 84 + ) +} + +function binaryInBinaryLeft() { + return ( + // Reason for 42 + 42 * + 84 + + 2 + ) +} + +function binaryInBinaryRight() { + return ( + // Reason for 42 + 42 + + 84 * 2 + ) +} + +function conditional() { + return ( + // Reason for 42 + 42 + ? 1 + : 2 + ) +} + +function binaryInConditional() { + return ( + // Reason for 42 + 42 * 3 + ? 1 + : 2 + ) +} + +function call() { + return ( + // Reason for a + a() + ) +} + +function memberInside() { + return ( + // Reason for a.b + a.b.c + ) +} + +function memberOutside() { + return ( + // Reason for a + a.b.c + ) +} + +function memberInAndOutWithCalls() { + return ( + aFunction + .b// Reason for a + () + .c.d() + ) +} + +function excessiveEverything() { + return ( + // Reason for stuff + a.b() * 3 + 4 ? ((a\`hi\`, 1) ? 1 : 1) : 1 + ) +} + +// See https://github.com/prettier/prettier/issues/2392 +// function sequenceExpression() { +// return ( +// // Reason for a +// a +// ), b +// } + +function sequenceExpressionInside() { + return ( + // Reason for a + a, b + ) +} + +function taggedTemplate() { + return ( + // Reason for a + a\`b\` + ) +} + +function inlineComment() { + return /* hi */ 42 || 42 +} + +================================================================================ +`; + exports[`single-star-jsdoc.js 1`] = ` ====================================options===================================== -parsers: ["flow", "babel"] +parsers: ["flow", "babel", "typescript"] printWidth: 80 | printWidth =====================================input====================================== @@ -2009,9 +3731,82 @@ if (true) { ================================================================================ `; +exports[`single-star-jsdoc.js 2`] = ` +====================================options===================================== +parsers: ["flow", "babel", "typescript"] +printWidth: 80 +semi: false + | printWidth +=====================================input====================================== +/* + * Looking good! + */ + +if(true) { + /* + * Oh no + */ +} + + /** first line +* second line + * third line */ + + /* first line +* second line + * third line */ + + /*! first line +*second line + * third line */ + +/*! +* Extracted from vue codebase +* https://github.com/vuejs/vue/blob/cfd73c2386623341fdbb3ac636c4baf84ea89c2c/src/compiler/parser/html-parser.js +* HTML Parser By John Resig (ejohn.org) +* Modified by Juriy "kangax" Zaytsev +* Original code by Erik Arvidsson, Mozilla Public License +* http://erik.eae.net/simplehtmlparser/simplehtmlparser.js +*/ + +=====================================output===================================== +/* + * Looking good! + */ + +if (true) { + /* + * Oh no + */ +} + +/** first line + * second line + * third line */ + +/* first line + * second line + * third line */ + +/*! first line + *second line + * third line */ + +/*! + * Extracted from vue codebase + * https://github.com/vuejs/vue/blob/cfd73c2386623341fdbb3ac636c4baf84ea89c2c/src/compiler/parser/html-parser.js + * HTML Parser By John Resig (ejohn.org) + * Modified by Juriy "kangax" Zaytsev + * Original code by Erik Arvidsson, Mozilla Public License + * http://erik.eae.net/simplehtmlparser/simplehtmlparser.js + */ + +================================================================================ +`; + exports[`switch.js 1`] = ` ====================================options===================================== -parsers: ["flow", "babel"] +parsers: ["flow", "babel", "typescript"] printWidth: 80 | printWidth =====================================input====================================== @@ -2096,9 +3891,97 @@ switch (foo) { ================================================================================ `; +exports[`switch.js 2`] = ` +====================================options===================================== +parsers: ["flow", "babel", "typescript"] +printWidth: 80 +semi: false + | printWidth +=====================================input====================================== +switch (node && node.type) { + case "Property": + case "MethodDefinition": + prop = node.key; + break; + + case "MemberExpression": + prop = node.property; + break; + + // no default +} + +switch (foo) { + case "bar": + doThing() + + // no default +} + +switch (foo) { + case "bar": //comment + doThing(); //comment + + case "baz": + doOtherThing(); //comment + +} + +switch (foo) { + case "bar": { + doThing(); + } //comment + + case "baz": { + doThing(); + } //comment +} + +=====================================output===================================== +switch (node && node.type) { + case "Property": + case "MethodDefinition": + prop = node.key + break + + case "MemberExpression": + prop = node.property + break + + // no default +} + +switch (foo) { + case "bar": + doThing() + + // no default +} + +switch (foo) { + case "bar": //comment + doThing() //comment + + case "baz": + doOtherThing() //comment +} + +switch (foo) { + case "bar": { + doThing() + } //comment + + case "baz": { + doThing() + } //comment +} + +================================================================================ +`; + exports[`tagged-template-literal.js 1`] = ` ====================================options===================================== -parsers: ["flow", "babel"] +parsers: ["flow", "babel", "typescript"] printWidth: 80 | printWidth =====================================input====================================== @@ -2137,9 +4020,51 @@ foo /* comment */\` ================================================================================ `; +exports[`tagged-template-literal.js 2`] = ` +====================================options===================================== +parsers: ["flow", "babel", "typescript"] +printWidth: 80 +semi: false + | printWidth +=====================================input====================================== +foo\`\`; // comment + +foo // comment +\`\`; + +foo // comment +\` +\`; + +foo /* comment */\` +\`; + +foo /* comment */ +\` +\`; + +=====================================output===================================== +foo\`\` // comment + +foo // comment +\`\` + +foo // comment +\` +\` + +foo/* comment */ \` +\` + +foo /* comment */\` +\` + +================================================================================ +`; + exports[`template-literal.js 1`] = ` ====================================options===================================== -parsers: ["flow", "babel"] +parsers: ["flow", "babel", "typescript"] printWidth: 80 | printWidth =====================================input====================================== @@ -2175,9 +4100,48 @@ d //comment ================================================================================ `; +exports[`template-literal.js 2`] = ` +====================================options===================================== +parsers: ["flow", "babel", "typescript"] +printWidth: 80 +semi: false + | printWidth +=====================================input====================================== +\` +\${a // comment +} + +\${b /* comment */} + +\${/* comment */ c /* comment */} + +\${// comment +d //comment +}; +\` + +=====================================output===================================== +;\` +\${ + a // comment +} + +\${b /* comment */} + +\${/* comment */ c /* comment */} + +\${ + // comment + d //comment +}; +\` + +================================================================================ +`; + exports[`trailing_space.js 1`] = ` ====================================options===================================== -parsers: ["flow", "babel"] +parsers: ["flow", "babel", "typescript"] printWidth: 80 | printWidth =====================================input====================================== @@ -2197,9 +4161,32 @@ printWidth: 80 ================================================================================ `; +exports[`trailing_space.js 2`] = ` +====================================options===================================== +parsers: ["flow", "babel", "typescript"] +printWidth: 80 +semi: false + | printWidth +=====================================input====================================== +#!/there/is-space-here-> + +// Do not trim trailing whitespace from this source file! + +// There is some space here -> + +=====================================output===================================== +#!/there/is-space-here-> + +// Do not trim trailing whitespace from this source file! + +// There is some space here -> + +================================================================================ +`; + exports[`trailing-jsdocs.js 1`] = ` ====================================options===================================== -parsers: ["flow", "babel"] +parsers: ["flow", "babel", "typescript"] printWidth: 80 | printWidth =====================================input====================================== @@ -2258,9 +4245,71 @@ const CONNECTION_STATUS = (exports.CONNECTION_STATUS = { ================================================================================ `; +exports[`trailing-jsdocs.js 2`] = ` +====================================options===================================== +parsers: ["flow", "babel", "typescript"] +printWidth: 80 +semi: false + | printWidth +=====================================input====================================== +const CONNECTION_STATUS = exports.CONNECTION_STATUS = { + CLOSED: Object.freeze({ kind: 'CLOSED' }), + CONNECTED: Object.freeze({ kind: 'CONNECTED' }), + CONNECTING: Object.freeze({ kind: 'CONNECTING' }), + NOT_CONNECTED: Object.freeze({ kind: 'NOT_CONNECTED' }) }; + +/* A comment */ /** +* A type that can be written to a buffer. +*/ /** +* Describes the connection status of a ReactiveSocket/DuplexConnection. +* - NOT_CONNECTED: no connection established or pending. +* - CONNECTING: when \`connect()\` has been called but a connection is not yet +* established. +* - CONNECTED: when a connection is established. +* - CLOSED: when the connection has been explicitly closed via \`close()\`. +* - ERROR: when the connection has been closed for any other reason. +*/ /** +* A contract providing different interaction models per the [ReactiveSocket protocol] +* (https://github.com/ReactiveSocket/reactivesocket/blob/master/Protocol.md). +*/ /** +* A single unit of data exchanged between the peers of a \`ReactiveSocket\`. +*/ + +=====================================output===================================== +const CONNECTION_STATUS = (exports.CONNECTION_STATUS = { + CLOSED: Object.freeze({ kind: "CLOSED" }), + CONNECTED: Object.freeze({ kind: "CONNECTED" }), + CONNECTING: Object.freeze({ kind: "CONNECTING" }), + NOT_CONNECTED: Object.freeze({ kind: "NOT_CONNECTED" }) +}) + +/* A comment */ +/** + * A type that can be written to a buffer. + */ +/** + * Describes the connection status of a ReactiveSocket/DuplexConnection. + * - NOT_CONNECTED: no connection established or pending. + * - CONNECTING: when \`connect()\` has been called but a connection is not yet + * established. + * - CONNECTED: when a connection is established. + * - CLOSED: when the connection has been explicitly closed via \`close()\`. + * - ERROR: when the connection has been closed for any other reason. + */ +/** + * A contract providing different interaction models per the [ReactiveSocket protocol] + * (https://github.com/ReactiveSocket/reactivesocket/blob/master/Protocol.md). + */ +/** + * A single unit of data exchanged between the peers of a \`ReactiveSocket\`. + */ + +================================================================================ +`; + exports[`try.js 1`] = ` ====================================options===================================== -parsers: ["flow", "babel"] +parsers: ["flow", "babel", "typescript"] printWidth: 80 | printWidth =====================================input====================================== @@ -2297,9 +4346,49 @@ try { ================================================================================ `; +exports[`try.js 2`] = ` +====================================options===================================== +parsers: ["flow", "babel", "typescript"] +printWidth: 80 +semi: false + | printWidth +=====================================input====================================== +// Comment 1 +try { // Comment 2 + // Comment 3 +} +// Comment 4 +catch(e) { // Comment 5 + // Comment 6 +} +// Comment 7 +finally { // Comment 8 + // Comment 9 +} +// Comment 10 + +=====================================output===================================== +// Comment 1 +try { + // Comment 2 + // Comment 3 +} catch (e) { + // Comment 4 + // Comment 5 + // Comment 6 +} finally { + // Comment 7 + // Comment 8 + // Comment 9 +} +// Comment 10 + +================================================================================ +`; + exports[`variable_declarator.js 1`] = ` ====================================options===================================== -parsers: ["flow", "babel"] +parsers: ["flow", "babel", "typescript"] printWidth: 80 | printWidth =====================================input====================================== @@ -2447,9 +4536,160 @@ const foo3 = 123; ================================================================================ `; +exports[`variable_declarator.js 2`] = ` +====================================options===================================== +parsers: ["flow", "babel", "typescript"] +printWidth: 80 +semi: false + | printWidth +=====================================input====================================== +let obj1 = // Comment +{ + key: 'val' +} + +let obj2 // Comment += { + key: 'val' +} + +let obj3 = { // Comment + key: 'val' +} + +let obj4 = { + // Comment + key: 'val' +} + +let obj5 = // Comment +[ + 'val' +] + +let obj6 // Comment += [ + 'val' +] + +let obj7 = [ // Comment + 'val' +] + +let obj8 = [ + // Comment + 'val' +] + +let obj9 = // Comment +\`val\`; + +let obj10 = // Comment +\` +val +val +\`; + +let obj11 = // Comment +tag\`val\`; + +let obj12 = // Comment +tag\` +val +val +\`; + +let // Comment + foo1 = 'val'; + +let // Comment + foo2 = 'val', + bar = 'val'; + +const foo3 = 123 +// Nothing to see here. +;["2", "3"].forEach(x => console.log(x)) + +=====================================output===================================== +let obj1 = + // Comment + { + key: "val" + } + +let obj2 = + // Comment + { + key: "val" + } + +let obj3 = { + // Comment + key: "val" +} + +let obj4 = { + // Comment + key: "val" +} + +let obj5 = + // Comment + ["val"] + +let obj6 = + // Comment + ["val"] + +let obj7 = [ + // Comment + "val" +] + +let obj8 = [ + // Comment + "val" +] + +let obj9 = + // Comment + \`val\` + +let obj10 = + // Comment + \` +val +val +\` + +let obj11 = + // Comment + tag\`val\` + +let obj12 = + // Comment + tag\` +val +val +\` + +let // Comment + foo1 = "val" + +let // Comment + foo2 = "val", + bar = "val" + +const foo3 = 123 +// Nothing to see here. +;["2", "3"].forEach(x => console.log(x)) + +================================================================================ +`; + exports[`while.js 1`] = ` ====================================options===================================== -parsers: ["flow", "babel"] +parsers: ["flow", "babel", "typescript"] printWidth: 80 | printWidth =====================================input====================================== @@ -2501,3 +4741,59 @@ while (true) /* comment */ ++x; ================================================================================ `; + +exports[`while.js 2`] = ` +====================================options===================================== +parsers: ["flow", "babel", "typescript"] +printWidth: 80 +semi: false + | printWidth +=====================================input====================================== +while( + true + // Comment + ) {} + +while(true)// Comment +{} + +while(true){}// Comment + +while(true)/*Comment*/{} + +while( + true // Comment + && true // Comment + ){} + +while(true) {} // comment + +while(true) /* comment */ ++x; + +=====================================output===================================== +while ( + true + // Comment +) {} + +while (true) { + // Comment +} + +while (true) {} // Comment + +while (true) { + /*Comment*/ +} + +while ( + true && // Comment + true // Comment +) {} + +while (true) {} // comment + +while (true) /* comment */ ++x + +================================================================================ +`; diff --git a/tests/comments/issues.js b/tests/comments/issues.js index c95f79c4a..8fd1ea659 100644 --- a/tests/comments/issues.js +++ b/tests/comments/issues.js @@ -14,29 +14,6 @@ throw new ProcessSystemError({ originalError: acc.error, // Just in case. }); -// Adding a comment stops the pretty printing process and everything is -// squished in a single line afterward -export type BuckWebSocketMessage = { - // Not actually from Buck - this is to let the receiver know that the socket is connected. - type: 'SocketConnected', -} | { - type: 'BuildProgressUpdated', - progressValue: number, -} | { - type: 'BuildFinished', - exitCode: number, -} | { - type: 'BuildStarted', -} | { - type: 'ParseStarted', -} | { - type: 'ParseFinished', -} | { - type: 'RunStarted', -} | { - type: 'RunComplete', -}; - // Missing one level of indentation because of the comment const rootEpic = (actions, store) => ( combineEpics(...epics)(actions, store) @@ -47,13 +24,6 @@ const rootEpic = (actions, store) => ( }) ); -// Two extra levels of indentation because of the comment -export type AsyncExecuteOptions = child_process$execFileOpts & { - // The contents to write to stdin. - stdin?: ?string, - dontLogInNuclide?: ?boolean, -}; - // optional trailing comma gets moved all the way to the beginning const regex = new RegExp( '^\\s*' + // beginning of the line diff --git a/tests/comments/jsfmt.spec.js b/tests/comments/jsfmt.spec.js index fbfa6501a..133b453c7 100644 --- a/tests/comments/jsfmt.spec.js +++ b/tests/comments/jsfmt.spec.js @@ -1 +1,2 @@ -run_spec(__dirname, ["flow", "babel"]); +run_spec(__dirname, ["flow", "babel", "typescript"]); +run_spec(__dirname, ["flow", "babel", "typescript"], { semi: false }); diff --git a/tests/flow_comments/__snapshots__/jsfmt.spec.js.snap b/tests/flow_comments/__snapshots__/jsfmt.spec.js.snap index 9dff2c626..48fa35218 100644 --- a/tests/flow_comments/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow_comments/__snapshots__/jsfmt.spec.js.snap @@ -100,6 +100,108 @@ foo/*:: */(); ================================================================================ `; +exports[`interface.js 1`] = ` +====================================options===================================== +parsers: ["flow", "babel"] +printWidth: 80 + | printWidth +=====================================input====================================== +interface Foo { + bar( + currentRequest: {a: number}, + // TODO this is a very very very very long comment that makes it go > 80 columns + ): number; +} + +=====================================output===================================== +interface Foo { + bar( + currentRequest: { a: number } + // TODO this is a very very very very long comment that makes it go > 80 columns + ): number; +} + +================================================================================ +`; + +exports[`issues.js 1`] = ` +====================================options===================================== +parsers: ["flow", "babel"] +printWidth: 80 + | printWidth +=====================================input====================================== +// Adding a comment stops the pretty printing process and everything is +// squished in a single line afterward +export type BuckWebSocketMessage = { + // Not actually from Buck - this is to let the receiver know that the socket is connected. + type: 'SocketConnected', +} | { + type: 'BuildProgressUpdated', + progressValue: number, +} | { + type: 'BuildFinished', + exitCode: number, +} | { + type: 'BuildStarted', +} | { + type: 'ParseStarted', +} | { + type: 'ParseFinished', +} | { + type: 'RunStarted', +} | { + type: 'RunComplete', +}; + +// Two extra levels of indentation because of the comment +export type AsyncExecuteOptions = child_process$execFileOpts & { + // The contents to write to stdin. + stdin?: ?string, + dontLogInNuclide?: ?boolean, +}; + +=====================================output===================================== +// Adding a comment stops the pretty printing process and everything is +// squished in a single line afterward +export type BuckWebSocketMessage = + | { + // Not actually from Buck - this is to let the receiver know that the socket is connected. + type: "SocketConnected" + } + | { + type: "BuildProgressUpdated", + progressValue: number + } + | { + type: "BuildFinished", + exitCode: number + } + | { + type: "BuildStarted" + } + | { + type: "ParseStarted" + } + | { + type: "ParseFinished" + } + | { + type: "RunStarted" + } + | { + type: "RunComplete" + }; + +// Two extra levels of indentation because of the comment +export type AsyncExecuteOptions = child_process$execFileOpts & { + // The contents to write to stdin. + stdin?: ?string, + dontLogInNuclide?: ?boolean +}; + +================================================================================ +`; + exports[`let.js 1`] = ` ====================================options===================================== parsers: ["flow", "babel"] @@ -190,3 +292,53 @@ const x = (input /*: string */) /*: string */ => {}; ================================================================================ `; + +exports[`union.js 1`] = ` +====================================options===================================== +parsers: ["flow", "babel"] +printWidth: 80 + | printWidth +=====================================input====================================== +type UploadState + // The upload hasnt begun yet + = {type: "Not_begun"} + // The upload timed out + | {type: "Timed_out"} + // Failed somewhere on the line + | {type: "Failed", error: E, errorMsg: EM} + // Uploading to aws3 and CreatePostMutation succeeded + | {type: "Success", data: D}; + +type UploadState2 + // The upload hasnt begun yet + = A + // The upload timed out + | B + // Failed somewhere on the line + | C + // Uploading to aws3 and CreatePostMutation succeeded + | D; + +=====================================output===================================== +type UploadState = + // The upload hasnt begun yet + | { type: "Not_begun" } + // The upload timed out + | { type: "Timed_out" } + // Failed somewhere on the line + | { type: "Failed", error: E, errorMsg: EM } + // Uploading to aws3 and CreatePostMutation succeeded + | { type: "Success", data: D }; + +type UploadState2 = + // The upload hasnt begun yet + | A + // The upload timed out + | B + // Failed somewhere on the line + | C + // Uploading to aws3 and CreatePostMutation succeeded + | D; + +================================================================================ +`; diff --git a/tests/flow_comments/interface.js b/tests/flow_comments/interface.js new file mode 100644 index 000000000..cbc069b0b --- /dev/null +++ b/tests/flow_comments/interface.js @@ -0,0 +1,6 @@ +interface Foo { + bar( + currentRequest: {a: number}, + // TODO this is a very very very very long comment that makes it go > 80 columns + ): number; +} diff --git a/tests/flow_comments/issues.js b/tests/flow_comments/issues.js new file mode 100644 index 000000000..b7f05dc86 --- /dev/null +++ b/tests/flow_comments/issues.js @@ -0,0 +1,29 @@ +// Adding a comment stops the pretty printing process and everything is +// squished in a single line afterward +export type BuckWebSocketMessage = { + // Not actually from Buck - this is to let the receiver know that the socket is connected. + type: 'SocketConnected', +} | { + type: 'BuildProgressUpdated', + progressValue: number, +} | { + type: 'BuildFinished', + exitCode: number, +} | { + type: 'BuildStarted', +} | { + type: 'ParseStarted', +} | { + type: 'ParseFinished', +} | { + type: 'RunStarted', +} | { + type: 'RunComplete', +}; + +// Two extra levels of indentation because of the comment +export type AsyncExecuteOptions = child_process$execFileOpts & { + // The contents to write to stdin. + stdin?: ?string, + dontLogInNuclide?: ?boolean, +}; diff --git a/tests/comments/flow_union.js b/tests/flow_comments/union.js similarity index 100% rename from tests/comments/flow_union.js rename to tests/flow_comments/union.js diff --git a/tests/typescript_comments/__snapshots__/jsfmt.spec.js.snap b/tests/typescript_comments/__snapshots__/jsfmt.spec.js.snap index 48f6cd136..876484e6c 100644 --- a/tests/typescript_comments/__snapshots__/jsfmt.spec.js.snap +++ b/tests/typescript_comments/__snapshots__/jsfmt.spec.js.snap @@ -90,6 +90,172 @@ let comp = ( ================================================================================ `; +exports[`declare_function.ts 1`] = ` +====================================options===================================== +parsers: ["typescript"] +printWidth: 80 + | printWidth +=====================================input====================================== +declare function fn( + currentRequest: {a: number}, + // TODO this is a very very very very long comment that makes it go > 80 columns +): number; + +=====================================output===================================== +declare function fn( + currentRequest: { a: number } + // TODO this is a very very very very long comment that makes it go > 80 columns +): number; + +================================================================================ +`; + +exports[`interface.ts 1`] = ` +====================================options===================================== +parsers: ["typescript"] +printWidth: 80 + | printWidth +=====================================input====================================== +interface Foo { + bar( + currentRequest: {a: number}, + // TODO this is a very very very very long comment that makes it go > 80 columns + ): number; + + ( + currentRequest: {a: number}, + // TODO this is a very very very very long comment that makes it go > 80 columns + ): number; + + new ( + currentRequest: {a: number}, + // TODO this is a very very very very long comment that makes it go > 80 columns + ): number; + + foo: { + x( + currentRequest: {a: number}, + // TODO this is a very very very very long comment that makes it go > 80 columns + ): number; + + y: ( + currentRequest: {a: number}, + // TODO this is a very very very very long comment that makes it go > 80 columns + ) => number; + } +} + +=====================================output===================================== +interface Foo { + bar( + currentRequest: { a: number } + // TODO this is a very very very very long comment that makes it go > 80 columns + ): number; + + ( + currentRequest: { a: number } + // TODO this is a very very very very long comment that makes it go > 80 columns + ): number; + + new ( + currentRequest: { a: number } + // TODO this is a very very very very long comment that makes it go > 80 columns + ): number; + + foo: { + x( + currentRequest: { a: number } + // TODO this is a very very very very long comment that makes it go > 80 columns + ): number; + + y: ( + currentRequest: { a: number } + // TODO this is a very very very very long comment that makes it go > 80 columns + ) => number; + }; +} + +================================================================================ +`; + +exports[`issues.ts 1`] = ` +====================================options===================================== +parsers: ["typescript"] +printWidth: 80 + | printWidth +=====================================input====================================== +// Adding a comment stops the pretty printing process and everything is +// squished in a single line afterward +export type BuckWebSocketMessage = { + // Not actually from Buck - this is to let the receiver know that the socket is connected. + type: 'SocketConnected', +} | { + type: 'BuildProgressUpdated', + progressValue: number, +} | { + type: 'BuildFinished', + exitCode: number, +} | { + type: 'BuildStarted', +} | { + type: 'ParseStarted', +} | { + type: 'ParseFinished', +} | { + type: 'RunStarted', +} | { + type: 'RunComplete', +}; + +// Two extra levels of indentation because of the comment +export type AsyncExecuteOptions = child_process$execFileOpts & { + // The contents to write to stdin. + stdin?: string, + dontLogInNuclide?: boolean, +}; + +=====================================output===================================== +// Adding a comment stops the pretty printing process and everything is +// squished in a single line afterward +export type BuckWebSocketMessage = + | { + // Not actually from Buck - this is to let the receiver know that the socket is connected. + type: "SocketConnected"; + } + | { + type: "BuildProgressUpdated"; + progressValue: number; + } + | { + type: "BuildFinished"; + exitCode: number; + } + | { + type: "BuildStarted"; + } + | { + type: "ParseStarted"; + } + | { + type: "ParseFinished"; + } + | { + type: "RunStarted"; + } + | { + type: "RunComplete"; + }; + +// Two extra levels of indentation because of the comment +export type AsyncExecuteOptions = child_process$execFileOpts & { + // The contents to write to stdin. + stdin?: string; + dontLogInNuclide?: boolean; +}; + +================================================================================ +`; + exports[`jsx.ts 1`] = ` ====================================options===================================== parsers: ["typescript"] @@ -425,3 +591,53 @@ printWidth: 80 ================================================================================ `; + +exports[`union.ts 1`] = ` +====================================options===================================== +parsers: ["typescript"] +printWidth: 80 + | printWidth +=====================================input====================================== +type UploadState + // The upload hasnt begun yet + = {type: "Not_begun"} + // The upload timed out + | {type: "Timed_out"} + // Failed somewhere on the line + | {type: "Failed", error: E, errorMsg: EM} + // Uploading to aws3 and CreatePostMutation succeeded + | {type: "Success", data: D}; + +type UploadState2 + // The upload hasnt begun yet + = A + // The upload timed out + | B + // Failed somewhere on the line + | C + // Uploading to aws3 and CreatePostMutation succeeded + | D; + +=====================================output===================================== +type UploadState = + // The upload hasnt begun yet + | { type: "Not_begun" } + // The upload timed out + | { type: "Timed_out" } + // Failed somewhere on the line + | { type: "Failed"; error: E; errorMsg: EM } + // Uploading to aws3 and CreatePostMutation succeeded + | { type: "Success"; data: D }; + +type UploadState2 = + // The upload hasnt begun yet + | A + // The upload timed out + | B + // Failed somewhere on the line + | C + // Uploading to aws3 and CreatePostMutation succeeded + | D; + +================================================================================ +`; diff --git a/tests/typescript_comments/declare_function.ts b/tests/typescript_comments/declare_function.ts new file mode 100644 index 000000000..6ceeb7d7f --- /dev/null +++ b/tests/typescript_comments/declare_function.ts @@ -0,0 +1,4 @@ +declare function fn( + currentRequest: {a: number}, + // TODO this is a very very very very long comment that makes it go > 80 columns +): number; diff --git a/tests/typescript_comments/interface.ts b/tests/typescript_comments/interface.ts new file mode 100644 index 000000000..95ff65798 --- /dev/null +++ b/tests/typescript_comments/interface.ts @@ -0,0 +1,28 @@ +interface Foo { + bar( + currentRequest: {a: number}, + // TODO this is a very very very very long comment that makes it go > 80 columns + ): number; + + ( + currentRequest: {a: number}, + // TODO this is a very very very very long comment that makes it go > 80 columns + ): number; + + new ( + currentRequest: {a: number}, + // TODO this is a very very very very long comment that makes it go > 80 columns + ): number; + + foo: { + x( + currentRequest: {a: number}, + // TODO this is a very very very very long comment that makes it go > 80 columns + ): number; + + y: ( + currentRequest: {a: number}, + // TODO this is a very very very very long comment that makes it go > 80 columns + ) => number; + } +} diff --git a/tests/typescript_comments/issues.ts b/tests/typescript_comments/issues.ts new file mode 100644 index 000000000..bb5307c24 --- /dev/null +++ b/tests/typescript_comments/issues.ts @@ -0,0 +1,29 @@ +// Adding a comment stops the pretty printing process and everything is +// squished in a single line afterward +export type BuckWebSocketMessage = { + // Not actually from Buck - this is to let the receiver know that the socket is connected. + type: 'SocketConnected', +} | { + type: 'BuildProgressUpdated', + progressValue: number, +} | { + type: 'BuildFinished', + exitCode: number, +} | { + type: 'BuildStarted', +} | { + type: 'ParseStarted', +} | { + type: 'ParseFinished', +} | { + type: 'RunStarted', +} | { + type: 'RunComplete', +}; + +// Two extra levels of indentation because of the comment +export type AsyncExecuteOptions = child_process$execFileOpts & { + // The contents to write to stdin. + stdin?: string, + dontLogInNuclide?: boolean, +}; diff --git a/tests/typescript_comments/union.ts b/tests/typescript_comments/union.ts new file mode 100644 index 000000000..7fd267e52 --- /dev/null +++ b/tests/typescript_comments/union.ts @@ -0,0 +1,19 @@ +type UploadState + // The upload hasnt begun yet + = {type: "Not_begun"} + // The upload timed out + | {type: "Timed_out"} + // Failed somewhere on the line + | {type: "Failed", error: E, errorMsg: EM} + // Uploading to aws3 and CreatePostMutation succeeded + | {type: "Success", data: D}; + +type UploadState2 + // The upload hasnt begun yet + = A + // The upload timed out + | B + // Failed somewhere on the line + | C + // Uploading to aws3 and CreatePostMutation succeeded + | D; From 8110e1f72a7c271e6235c8c827f4f04a946f5b9c Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 9 Dec 2019 22:34:31 +0100 Subject: [PATCH 56/88] Bump @babel/preset-env from 7.7.4 to 7.7.6 in /website (#7112) Bumps [@babel/preset-env](https://github.com/babel/babel) from 7.7.4 to 7.7.6. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md) - [Commits](https://github.com/babel/babel/compare/v7.7.4...v7.7.6) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- website/package.json | 2 +- website/yarn.lock | 127 ++++++++++++++++++++----------------------- 2 files changed, 60 insertions(+), 69 deletions(-) diff --git a/website/package.json b/website/package.json index 2afad792b..8e4a8c895 100644 --- a/website/package.json +++ b/website/package.json @@ -19,7 +19,7 @@ "react-dom": "16.12.0" }, "devDependencies": { - "@babel/preset-env": "7.7.4", + "@babel/preset-env": "7.7.6", "@babel/preset-react": "7.7.4", "@sandhose/prettier-animated-logo": "1.0.3", "babel-loader": "8.0.6", diff --git a/website/yarn.lock b/website/yarn.lock index 7ac64579d..7737248e1 100644 --- a/website/yarn.lock +++ b/website/yarn.lock @@ -164,6 +164,18 @@ "@babel/types" "^7.7.4" lodash "^4.17.13" +"@babel/helper-module-transforms@^7.7.5": + version "7.7.5" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.7.5.tgz#d044da7ffd91ec967db25cd6748f704b6b244835" + integrity sha512-A7pSxyJf1gN5qXVcidwLWydjftUN878VkalhXX5iQDuGyiGK3sOrrKKHF4/A4fwHtnsotv/NipwAeLzY4KQPvw== + dependencies: + "@babel/helper-module-imports" "^7.7.4" + "@babel/helper-simple-access" "^7.7.4" + "@babel/helper-split-export-declaration" "^7.7.4" + "@babel/template" "^7.7.4" + "@babel/types" "^7.7.4" + lodash "^4.17.13" + "@babel/helper-optimise-call-expression@^7.7.4": version "7.7.4" resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.7.4.tgz#034af31370d2995242aa4df402c3b7794b2dcdf2" @@ -476,21 +488,21 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-modules-amd@^7.7.4": - version "7.7.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.7.4.tgz#276b3845ca2b228f2995e453adc2e6f54d72fb71" - integrity sha512-/542/5LNA18YDtg1F+QHvvUSlxdvjZoD/aldQwkq+E3WCkbEjNSN9zdrOXaSlfg3IfGi22ijzecklF/A7kVZFQ== +"@babel/plugin-transform-modules-amd@^7.7.5": + version "7.7.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.7.5.tgz#39e0fb717224b59475b306402bb8eedab01e729c" + integrity sha512-CT57FG4A2ZUNU1v+HdvDSDrjNWBrtCmSH6YbbgN3Lrf0Di/q/lWRxZrE72p3+HCCz9UjfZOEBdphgC0nzOS6DQ== dependencies: - "@babel/helper-module-transforms" "^7.7.4" + "@babel/helper-module-transforms" "^7.7.5" "@babel/helper-plugin-utils" "^7.0.0" babel-plugin-dynamic-import-node "^2.3.0" -"@babel/plugin-transform-modules-commonjs@^7.7.4": - version "7.7.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.7.4.tgz#bee4386e550446343dd52a571eda47851ff857a3" - integrity sha512-k8iVS7Jhc367IcNF53KCwIXtKAH7czev866ThsTgy8CwlXjnKZna2VHwChglzLleYrcHz1eQEIJlGRQxB53nqA== +"@babel/plugin-transform-modules-commonjs@^7.7.5": + version "7.7.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.7.5.tgz#1d27f5eb0bcf7543e774950e5b2fa782e637b345" + integrity sha512-9Cq4zTFExwFhQI6MT1aFxgqhIsMWQWDVwOgLzl7PTWJHsNaqFvklAU+Oz6AQLAS0dJKTwZSOCo20INwktxpi3Q== dependencies: - "@babel/helper-module-transforms" "^7.7.4" + "@babel/helper-module-transforms" "^7.7.5" "@babel/helper-plugin-utils" "^7.0.0" "@babel/helper-simple-access" "^7.7.4" babel-plugin-dynamic-import-node "^2.3.0" @@ -582,10 +594,10 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-syntax-jsx" "^7.7.4" -"@babel/plugin-transform-regenerator@^7.7.4": - version "7.7.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.7.4.tgz#d18eac0312a70152d7d914cbed2dc3999601cfc0" - integrity sha512-e7MWl5UJvmPEwFJTwkBlPmqixCtr9yAASBqff4ggXTNicZiwbF8Eefzm6NVgfiBp7JdAGItecnctKTgH44q2Jw== +"@babel/plugin-transform-regenerator@^7.7.5": + version "7.7.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.7.5.tgz#3a8757ee1a2780f390e89f246065ecf59c26fce9" + integrity sha512-/8I8tPvX2FkuEyWbjRCt4qTAgZK0DVy8QRguhA524UH48RfGJy94On2ri+dCuwOpcerPRl9O4ebQkRcVzIaGBw== dependencies: regenerator-transform "^0.14.0" @@ -649,10 +661,10 @@ core-js "^2.6.5" regenerator-runtime "^0.13.2" -"@babel/preset-env@7.7.4", "@babel/preset-env@^7.7.4": - version "7.7.4" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.7.4.tgz#ccaf309ae8d1ee2409c85a4e2b5e280ceee830f8" - integrity sha512-Dg+ciGJjwvC1NIe/DGblMbcGq1HOtKbw8RLl4nIjlfcILKEOkWT/vRqPpumswABEBVudii6dnVwrBtzD7ibm4g== +"@babel/preset-env@7.7.6", "@babel/preset-env@^7.7.4": + version "7.7.6" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.7.6.tgz#39ac600427bbb94eec6b27953f1dfa1d64d457b2" + integrity sha512-k5hO17iF/Q7tR9Jv8PdNBZWYW6RofxhnxKjBMc0nG4JTaWvOTiPoO/RLFwAKcA4FpmuBFm6jkoqaRJLGi0zdaQ== dependencies: "@babel/helper-module-imports" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" @@ -682,8 +694,8 @@ "@babel/plugin-transform-function-name" "^7.7.4" "@babel/plugin-transform-literals" "^7.7.4" "@babel/plugin-transform-member-expression-literals" "^7.7.4" - "@babel/plugin-transform-modules-amd" "^7.7.4" - "@babel/plugin-transform-modules-commonjs" "^7.7.4" + "@babel/plugin-transform-modules-amd" "^7.7.5" + "@babel/plugin-transform-modules-commonjs" "^7.7.5" "@babel/plugin-transform-modules-systemjs" "^7.7.4" "@babel/plugin-transform-modules-umd" "^7.7.4" "@babel/plugin-transform-named-capturing-groups-regex" "^7.7.4" @@ -691,7 +703,7 @@ "@babel/plugin-transform-object-super" "^7.7.4" "@babel/plugin-transform-parameters" "^7.7.4" "@babel/plugin-transform-property-literals" "^7.7.4" - "@babel/plugin-transform-regenerator" "^7.7.4" + "@babel/plugin-transform-regenerator" "^7.7.5" "@babel/plugin-transform-reserved-words" "^7.7.4" "@babel/plugin-transform-shorthand-properties" "^7.7.4" "@babel/plugin-transform-spread" "^7.7.4" @@ -701,7 +713,7 @@ "@babel/plugin-transform-unicode-regex" "^7.7.4" "@babel/types" "^7.7.4" browserslist "^4.6.0" - core-js-compat "^3.1.1" + core-js-compat "^3.4.7" invariant "^2.2.2" js-levenshtein "^1.1.3" semver "^5.5.0" @@ -1483,23 +1495,14 @@ browserslist@4.7.0: electron-to-chromium "^1.3.247" node-releases "^1.1.29" -browserslist@^4.0.0, browserslist@^4.6.0, browserslist@^4.6.6: - version "4.7.3" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.7.3.tgz#02341f162b6bcc1e1028e30624815d4924442dc3" - integrity sha512-jWvmhqYpx+9EZm/FxcZSbUZyDEvDTLDi3nSAKbzEkyWvtI0mNSmUosey+5awDW1RUlrgXbQb5A6qY1xQH9U6MQ== +browserslist@^4.0.0, browserslist@^4.6.0, browserslist@^4.8.0, browserslist@^4.8.2: + version "4.8.2" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.8.2.tgz#b45720ad5fbc8713b7253c20766f701c9a694289" + integrity sha512-+M4oeaTplPm/f1pXDw84YohEv7B1i/2Aisei8s4s6k3QsoSHa7i5sz8u/cGQkkatCPxMASKxPualR4wwYgVboA== dependencies: - caniuse-lite "^1.0.30001010" - electron-to-chromium "^1.3.306" - node-releases "^1.1.40" - -browserslist@^4.8.0: - version "4.8.0" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.8.0.tgz#6f06b0f974a7cc3a84babc2ccc56493668e3c789" - integrity sha512-HYnxc/oLRWvJ3TsGegR0SRL/UDnknGq2s/a8dYYEO+kOQ9m9apKoS5oiathLKZdh/e9uE+/J3j92qPlGD/vTqA== - dependencies: - caniuse-lite "^1.0.30001012" - electron-to-chromium "^1.3.317" - node-releases "^1.1.41" + caniuse-lite "^1.0.30001015" + electron-to-chromium "^1.3.322" + node-releases "^1.1.42" buffer-alloc-unsafe@^1.1.0: version "1.1.0" @@ -1668,16 +1671,16 @@ caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000989: resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000998.tgz#7227a8046841e7d01e156ae7227a504d065f6744" integrity sha512-8Tj5sPZR9kMHeDD9SZXIVr5m9ofufLLCG2Y4QwQrH18GIwG+kCc+zYdlR036ZRkuKjVVetyxeAgGA1xF7XdmzQ== -caniuse-lite@^1.0.30001010: - version "1.0.30001011" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001011.tgz#0d6c4549c78c4a800bb043a83ca0cbe0aee6c6e1" - integrity sha512-h+Eqyn/YA6o6ZTqpS86PyRmNWOs1r54EBDcd2NTwwfsXQ8re1B38SnB+p2RKF8OUsyEIjeDU8XGec1RGO/wYCg== - caniuse-lite@^1.0.30001012: version "1.0.30001013" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001013.tgz#da2440d4d266a17d40eb79bd19c0c8cc1d029c72" integrity sha512-hOAXaWKuq/UVFgYawxIOdPdyMQdYcwOCDOjnZcKn7wCgFUrhP7smuNZjGLuJlPSgE6aRA4cRJ+bGSrhtEt7ZAg== +caniuse-lite@^1.0.30001015: + version "1.0.30001015" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001015.tgz#15a7ddf66aba786a71d99626bc8f2b91c6f0f5f0" + integrity sha512-/xL2AbW/XWHNu1gnIrO8UitBGoFthcsDgU9VLK1/dpsoxbaD5LscHozKze05R6WLsBvLhqv78dAPozMFQBYLbQ== + caseless@~0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" @@ -2064,12 +2067,12 @@ copy-descriptor@^0.1.0: resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= -core-js-compat@^3.1.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.2.1.tgz#0cbdbc2e386e8e00d3b85dc81c848effec5b8150" - integrity sha512-MwPZle5CF9dEaMYdDeWm73ao/IflDH+FjeJCWEADcEgFSE9TLimFKwJsfmkwzI8eC0Aj0mgvMDjeQjrElkz4/A== +core-js-compat@^3.4.7: + version "3.4.8" + resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.4.8.tgz#f72e6a4ed76437ea710928f44615f926a81607d5" + integrity sha512-l3WTmnXHV2Sfu5VuD7EHE2w7y+K68+kULKt5RJg8ZJk3YhHF1qLD4O8v8AmNq+8vbOwnPFFDvds25/AoEvMqlQ== dependencies: - browserslist "^4.6.6" + browserslist "^4.8.2" semver "^6.3.0" core-js@^2.6.5: @@ -2719,15 +2722,10 @@ electron-to-chromium@^1.3.247: resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.273.tgz#94872d6823219f2812f2e35a2ce2a7d03c1eaa3f" integrity sha512-0kUppiHQvHEENHh+nTtvTt4eXMwcPyWmMaj73GPrSEm3ldKhmmHuOH6IjrmuW6YmyS/fpXcLvMQLNVpqRhpNWw== -electron-to-chromium@^1.3.306: - version "1.3.308" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.308.tgz#73c2cd8f865abc1c31623725e4f89225e9e209e6" - integrity sha512-IwU/0LTzTa03Q0YDzg11RlK8e/V92tmPqFOaTEsdv7JJXtC/+v/H4bT2FmsA/xaFQWJvi0ZVcRppw8o0AD9XJQ== - -electron-to-chromium@^1.3.317: - version "1.3.321" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.321.tgz#913869f5ec85daabba0e75c9c314b4bf26cdb01e" - integrity sha512-jJy/BZK2s2eAjMPXVMSaCmo7/pSY2aKkfQ+LoAb5Wk39qAhyP9r8KU74c4qTgr9cD/lPUhJgReZxxqU0n5puog== +electron-to-chromium@^1.3.322: + version "1.3.322" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.322.tgz#a6f7e1c79025c2b05838e8e344f6e89eb83213a8" + integrity sha512-Tc8JQEfGQ1MzfSzI/bTlSr7btJv/FFO7Yh6tanqVmIWOuNCu6/D1MilIEgLtmWqIrsv+o4IjpLAhgMBr/ncNAA== elliptic@^6.0.0: version "6.4.1" @@ -5204,17 +5202,10 @@ node-releases@^1.1.29: dependencies: semver "^5.3.0" -node-releases@^1.1.40: - version "1.1.40" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.40.tgz#a94facfa8e2d612302601ca1361741d529c4515a" - integrity sha512-r4LPcC5b/bS8BdtWH1fbeK88ib/wg9aqmg6/s3ngNLn2Ewkn/8J6Iw3P9RTlfIAdSdvYvQl2thCY5Y+qTAQ2iQ== - dependencies: - semver "^6.3.0" - -node-releases@^1.1.41: - version "1.1.41" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.41.tgz#57674a82a37f812d18e3b26118aefaf53a00afed" - integrity sha512-+IctMa7wIs8Cfsa8iYzeaLTFwv5Y4r5jZud+4AnfymzeEXKBCavFX0KBgzVaPVqf0ywa6PrO8/b+bPqdwjGBSg== +node-releases@^1.1.42: + version "1.1.42" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.42.tgz#a999f6a62f8746981f6da90627a8d2fc090bbad7" + integrity sha512-OQ/ESmUqGawI2PRX+XIRao44qWYBBfN54ImQYdWVTQqUckuejOg76ysSqDBK8NG3zwySRVnX36JwDQ6x+9GxzA== dependencies: semver "^6.3.0" From f8928ec32a49d7700ae74c67f3dbd6015b6c5c42 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 9 Dec 2019 22:36:16 +0100 Subject: [PATCH 57/88] Bump terser-webpack-plugin from 2.2.1 to 2.2.2 (#7113) Bumps [terser-webpack-plugin](https://github.com/webpack-contrib/terser-webpack-plugin) from 2.2.1 to 2.2.2. - [Release notes](https://github.com/webpack-contrib/terser-webpack-plugin/releases) - [Changelog](https://github.com/webpack-contrib/terser-webpack-plugin/blob/master/CHANGELOG.md) - [Commits](https://github.com/webpack-contrib/terser-webpack-plugin/compare/v2.2.1...v2.2.2) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 48 ++++++++++++++++++++++++------------------------ 2 files changed, 25 insertions(+), 25 deletions(-) diff --git a/package.json b/package.json index afbc4d97c..24b69f57f 100644 --- a/package.json +++ b/package.json @@ -110,7 +110,7 @@ "strip-ansi": "5.2.0", "synchronous-promise": "2.0.10", "tempy": "0.2.1", - "terser-webpack-plugin": "2.2.1", + "terser-webpack-plugin": "2.2.2", "webpack": "4.41.2" }, "scripts": { diff --git a/yarn.lock b/yarn.lock index bf95456ac..30eb7cf9f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2930,10 +2930,10 @@ 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== +find-cache-dir@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.1.0.tgz#9935894999debef4cf9f677fdf646d002c4cdecb" + integrity sha512-zw+EFiNBNPgI2NTrKkDd1xd7q0cs6wr/iWnr/oUkI0yF9K9GqQ+riIt4aiyFaaqpaWbxPrJXHI+QvmNUQbX+0Q== dependencies: commondir "^1.0.1" make-dir "^3.0.0" @@ -6136,10 +6136,10 @@ schema-utils@^1.0.0: ajv-errors "^1.0.0" ajv-keywords "^3.1.0" -schema-utils@^2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.5.0.tgz#8f254f618d402cc80257486213c8970edfd7c22f" - integrity sha512-32ISrwW2scPXHUSusP8qMg5dLUawKkyV+/qIEV9JdXKx+rsM6mi8vZY8khg2M69Qom16rtroWXD3Ybtiws38gQ== +schema-utils@^2.6.1: + version "2.6.1" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.6.1.tgz#eb78f0b945c7bcfa2082b3565e8db3548011dc4f" + integrity sha512-0WXHDs1VDJyo+Zqs9TKLKyD/h7yDpHUhEFsM2CzkICFdoX1av+GBq/J2xRTFfsQO5kBfhZzANf2VcIm84jqDbg== dependencies: ajv "^6.10.2" ajv-keywords "^3.4.1" @@ -6158,10 +6158,10 @@ serialize-javascript@^1.7.0: resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-1.7.0.tgz#d6e0dfb2a3832a8c94468e6eb1db97e55a192a65" integrity sha512-ke8UG8ulpFOxO8f8gRYabHQe/ZntKlcig2Mp+8+URDP1D8vJZ0KUt7LYo07q25Z/+JVSgpr/cui9PIp5H6/+nA== -serialize-javascript@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-2.1.0.tgz#9310276819efd0eb128258bb341957f6eb2fc570" - integrity sha512-a/mxFfU00QT88umAJQsNWOnUKckhNCqOl028N48e7wFmo2/EHpTo9Wso+iJJCMrQnmFvcjto5RJdAHEvVhcyUQ== +serialize-javascript@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-2.1.1.tgz#952907a04a3e3a75af7f73d92d15e233862048b2" + integrity sha512-MPLPRpD4FNqWq9tTIjYG5LesFouDhdyH0EPY3gVK4DRD5+g4aDqdNSzLIwceulo3Yj+PL1bPh6laE5+H6LTcrQ== set-blocking@^2.0.0, set-blocking@~2.0.0: version "2.0.0" @@ -6660,18 +6660,18 @@ tempy@0.2.1: temp-dir "^1.0.0" unique-string "^1.0.0" -terser-webpack-plugin@2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-2.2.1.tgz#5569e6c7d8be79e5e43d6da23acc3b6ba77d22bd" - integrity sha512-jwdauV5Al7zopR6OAYvIIRcxXCSvLjZjr7uZE8l2tIWb/ryrGN48sJftqGf5k9z09tWhajx53ldp0XPI080YnA== +terser-webpack-plugin@2.2.2: + version "2.2.2" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-2.2.2.tgz#2a6e00237125564a455ad69b22e08ee59420473a" + integrity sha512-/CHMNswPMAwuD2kd++qys8UmBRmsshPSzHw4BlDwurPtK9YjeK93OV89YWkJulHk972cs07K/7Z92V6PNjWF8A== dependencies: cacache "^13.0.1" - find-cache-dir "^3.0.0" + find-cache-dir "^3.1.0" jest-worker "^24.9.0" - schema-utils "^2.5.0" - serialize-javascript "^2.1.0" + schema-utils "^2.6.1" + serialize-javascript "^2.1.1" source-map "^0.6.1" - terser "^4.3.9" + terser "^4.4.2" webpack-sources "^1.4.3" terser-webpack-plugin@^1.4.1: @@ -6689,10 +6689,10 @@ terser-webpack-plugin@^1.4.1: webpack-sources "^1.4.0" worker-farm "^1.7.0" -terser@^4.1.0, terser@^4.1.2, terser@^4.3.9: - version "4.3.9" - resolved "https://registry.yarnpkg.com/terser/-/terser-4.3.9.tgz#e4be37f80553d02645668727777687dad26bbca8" - integrity sha512-NFGMpHjlzmyOtPL+fDw3G7+6Ueh/sz4mkaUYa4lJCxOPTNzd0Uj0aZJOmsDYoSQyfuVoWDMSWTPU3huyOm2zdA== +terser@^4.1.0, terser@^4.1.2, terser@^4.4.2: + version "4.4.2" + resolved "https://registry.yarnpkg.com/terser/-/terser-4.4.2.tgz#448fffad0245f4c8a277ce89788b458bfd7706e8" + integrity sha512-Uufrsvhj9O1ikwgITGsZ5EZS6qPokUOkCegS7fYOdGTv+OA90vndUbU6PEjr5ePqHfNUbGyMO7xyIZv2MhsALQ== dependencies: commander "^2.20.0" source-map "~0.6.1" From db78483df19af1e31e69b9af1eb2ac59da41a0b6 Mon Sep 17 00:00:00 2001 From: Georgii Dolzhykov Date: Tue, 10 Dec 2019 01:41:03 +0200 Subject: [PATCH 58/88] refactoring: introduce path.match (#7108) --- src/common/fast-path.js | 36 ++++++++++++ src/common/util.js | 15 ----- src/language-js/embed.js | 93 ++++++++++--------------------- src/language-js/printer-estree.js | 41 ++++++-------- 4 files changed, 83 insertions(+), 102 deletions(-) diff --git a/src/common/fast-path.js b/src/common/fast-path.js index 4c152b2f8..eaf9a84f2 100644 --- a/src/common/fast-path.js +++ b/src/common/fast-path.js @@ -138,4 +138,40 @@ FastPath.prototype.map = function map(callback /*, name1, name2, ... */) { return result; }; +/** + * @param {...( + * | ((node: any, name: string | null, number: number | null) => boolean) + * | undefined + * )} predicates + */ +FastPath.prototype.match = function match(/* predicates */) { + let stackPointer = this.stack.length - 1; + + let name = null; + let node = this.stack[stackPointer--]; + + for (let i = 0; i < arguments.length; ++i) { + if (node === undefined) { + return false; + } + + // skip index/array + let number = null; + if (typeof name === "number") { + number = name; + name = this.stack[stackPointer--]; + node = this.stack[stackPointer--]; + } + + if (arguments[i] && !arguments[i](node, name, number)) { + return false; + } + + name = this.stack[stackPointer--]; + node = this.stack[stackPointer--]; + } + + return true; +}; + module.exports = FastPath; diff --git a/src/common/util.js b/src/common/util.js index 9f13f83c6..a6af62b24 100644 --- a/src/common/util.js +++ b/src/common/util.js @@ -779,20 +779,6 @@ function hasNodeIgnoreComment(node) { ); } -function matchAncestorTypes(path, types, index) { - index = index || 0; - types = types.slice(); - while (types.length) { - const parent = path.getParentNode(index); - const type = types.shift(); - if (!parent || parent.type !== type) { - return false; - } - index++; - } - return true; -} - function addCommentHelper(node, comment) { const comments = node.comments || (node.comments = []); comments.push(comment); @@ -891,7 +877,6 @@ module.exports = { hasIgnoreComment, hasNodeIgnoreComment, makeString, - matchAncestorTypes, addLeadingComment, addDanglingComment, addTrailingComment, diff --git a/src/language-js/embed.js b/src/language-js/embed.js index 0e5454648..0954451dd 100644 --- a/src/language-js/embed.js +++ b/src/language-js/embed.js @@ -389,43 +389,37 @@ function isStyledJsx(path) { * }) */ function isAngularComponentStyles(path) { - return isPathMatch( - path, - [ - node => node.type === "TemplateLiteral", - (node, name) => node.type === "ArrayExpression" && name === "elements", - (node, name) => - node.type === "Property" && - node.key.type === "Identifier" && - node.key.name === "styles" && - name === "value" - ].concat(getAngularComponentObjectExpressionPredicates()) + return path.match( + node => node.type === "TemplateLiteral", + (node, name) => node.type === "ArrayExpression" && name === "elements", + (node, name) => + node.type === "Property" && + node.key.type === "Identifier" && + node.key.name === "styles" && + name === "value", + ...angularComponentObjectExpressionPredicates ); } function isAngularComponentTemplate(path) { - return isPathMatch( - path, - [ - node => node.type === "TemplateLiteral", - (node, name) => - node.type === "Property" && - node.key.type === "Identifier" && - node.key.name === "template" && - name === "value" - ].concat(getAngularComponentObjectExpressionPredicates()) + return path.match( + node => node.type === "TemplateLiteral", + (node, name) => + node.type === "Property" && + node.key.type === "Identifier" && + node.key.name === "template" && + name === "value", + ...angularComponentObjectExpressionPredicates ); } -function getAngularComponentObjectExpressionPredicates() { - return [ - (node, name) => node.type === "ObjectExpression" && name === "properties", - (node, name) => - node.type === "CallExpression" && - node.callee.type === "Identifier" && - node.callee.name === "Component" && - name === "arguments", - (node, name) => node.type === "Decorator" && name === "expression" - ]; -} +const angularComponentObjectExpressionPredicates = [ + (node, name) => node.type === "ObjectExpression" && name === "properties", + (node, name) => + node.type === "CallExpression" && + node.callee.type === "Identifier" && + node.callee.name === "Component" && + name === "arguments", + (node, name) => node.type === "Decorator" && name === "expression" +]; /** * styled-components template literals @@ -536,50 +530,21 @@ function hasLanguageComment(node, languageName) { ); } -function isPathMatch(path, predicateStack) { - const stack = path.stack.slice(); - - let name = null; - let node = stack.pop(); - - for (const predicate of predicateStack) { - if (node === undefined) { - return false; - } - - // skip index/array - if (typeof name === "number") { - name = stack.pop(); - node = stack.pop(); - } - - if (!predicate(node, name)) { - return false; - } - - name = stack.pop(); - node = stack.pop(); - } - - return true; -} - /** * - html`...` * - HTML comment block */ function isHtml(path) { - const node = path.getValue(); return ( - hasLanguageComment(node, "HTML") || - isPathMatch(path, [ + hasLanguageComment(path.getValue(), "HTML") || + path.match( node => node.type === "TemplateLiteral", (node, name) => node.type === "TaggedTemplateExpression" && node.tag.type === "Identifier" && node.tag.name === "html" && name === "quasi" - ]) + ) ); } diff --git a/src/language-js/printer-estree.js b/src/language-js/printer-estree.js index 21cc37f0d..b951fae1b 100644 --- a/src/language-js/printer-estree.js +++ b/src/language-js/printer-estree.js @@ -20,7 +20,6 @@ const { getPenultimate, startsWithNoLookaheadToken, getIndentSize, - matchAncestorTypes, getPreferredQuote } = require("../common/util"); const { @@ -1406,18 +1405,19 @@ function printPathNoParens(path, options, print, args) { // If we inline the object as first argument of the parent, we don't want // to create another group so that the object breaks before the return // type - const parentParentParent = path.getParentNode(2); if ( - (n.type === "ObjectPattern" && - parent && - shouldHugArguments(parent) && - !n.decorators && - parent.params[0] === n) || - (shouldHugType(n) && - parentParentParent && - shouldHugArguments(parentParentParent) && - parentParentParent.params[0].typeAnnotation && - parentParentParent.params[0].typeAnnotation.typeAnnotation === n) + path.match( + node => node.type === "ObjectPattern" && !node.decorators, + (node, name, number) => + shouldHugArguments(node) && name === "params" && number === 0 + ) || + path.match( + shouldHugType, + (node, name) => name === "typeAnnotation", + (node, name) => name === "typeAnnotation", + (node, name, number) => + shouldHugArguments(node) && name === "params" && number === 0 + ) ) { return content; } @@ -5563,17 +5563,12 @@ function maybeWrapJSXElementInParens(path, elem, options) { return elem; } - const shouldBreak = - matchAncestorTypes(path, [ - "ArrowFunctionExpression", - "CallExpression", - "JSXExpressionContainer" - ]) || - matchAncestorTypes(path, [ - "ArrowFunctionExpression", - "OptionalCallExpression", - "JSXExpressionContainer" - ]); + const shouldBreak = path.match( + undefined, + node => node.type === "ArrowFunctionExpression", + isCallOrOptionalCallExpression, + node => node.type === "JSXExpressionContainer" + ); const needsParens = pathNeedsParens(path, options); From 823616fdce104b60cb5dc3b2b85a2e336390672e Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 10 Dec 2019 08:09:49 +0100 Subject: [PATCH 59/88] Bump concurrently from 5.0.0 to 5.0.1 in /website (#7121) Bumps [concurrently](https://github.com/kimmobrunfeldt/concurrently) from 5.0.0 to 5.0.1. - [Release notes](https://github.com/kimmobrunfeldt/concurrently/releases) - [Commits](https://github.com/kimmobrunfeldt/concurrently/compare/v5.0.0...v5.0.1) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- website/package.json | 2 +- website/yarn.lock | 85 +++++++++++--------------------------------- 2 files changed, 21 insertions(+), 66 deletions(-) diff --git a/website/package.json b/website/package.json index 8e4a8c895..880ac442c 100644 --- a/website/package.json +++ b/website/package.json @@ -23,7 +23,7 @@ "@babel/preset-react": "7.7.4", "@sandhose/prettier-animated-logo": "1.0.3", "babel-loader": "8.0.6", - "concurrently": "5.0.0", + "concurrently": "5.0.1", "docusaurus": "1.14.3", "js-yaml": "3.13.1", "svgo": "1.3.2", diff --git a/website/yarn.lock b/website/yarn.lock index 7737248e1..a902a3590 100644 --- a/website/yarn.lock +++ b/website/yarn.lock @@ -1821,14 +1821,6 @@ clipboard@2.0.4, clipboard@^2.0.0: select "^1.1.2" tiny-emitter "^2.0.0" -cliui@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-4.0.0.tgz#743d4650e05f36d1ed2575b59638d87322bfbbcc" - dependencies: - string-width "^2.1.1" - strip-ansi "^4.0.0" - wrap-ansi "^2.0.0" - cliui@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz#deefcfdb2e800784aa34f46fa08e06851c7bbbc5" @@ -1975,10 +1967,10 @@ concat-with-sourcemaps@*: dependencies: source-map "^0.6.1" -concurrently@5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/concurrently/-/concurrently-5.0.0.tgz#99c7567d009411fbdc98299d553c4b99a978612c" - integrity sha512-1yDvK8mduTIdxIxV9C60KoiOySUl/lfekpdbI+U5GXaPrgdffEavFa9QZB3vh68oWOpbCC+TuvxXV9YRPMvUrA== +concurrently@5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/concurrently/-/concurrently-5.0.1.tgz#9d15e0e7bb7ebe5c3bcd86deb8393501c35dd003" + integrity sha512-fPKUlOAXEXpktp3z7RqIvzTSCowfDo8oQbdKoGKGZVm+G2hGFbIIAFm4qwWcGl/sIHmpMSgPqeCbjld3kdPXvA== dependencies: chalk "^2.4.2" date-fns "^2.0.1" @@ -1986,9 +1978,9 @@ concurrently@5.0.0: read-pkg "^4.0.1" rxjs "^6.5.2" spawn-command "^0.0.2-1" - supports-color "^4.5.0" + supports-color "^6.1.0" tree-kill "^1.2.1" - yargs "^12.0.5" + yargs "^13.3.0" config-chain@^1.1.11: version "1.1.12" @@ -3410,10 +3402,6 @@ gaze@^1.1.3: dependencies: globule "^1.0.0" -get-caller-file@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.2.tgz#f702e63127e7e231c160a80c1554acb70d5047e5" - get-caller-file@^2.0.1: version "2.0.5" resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" @@ -3731,11 +3719,6 @@ has-ansi@^2.0.0: dependencies: ansi-regex "^2.0.0" -has-flag@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51" - integrity sha1-6CB68cx7MNRGzHC3NLXovhj4jVE= - has-flag@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" @@ -5435,7 +5418,7 @@ os-homedir@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" -os-locale@^3.0.0, os-locale@^3.1.0: +os-locale@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-3.1.0.tgz#a802a6ee17f24c10483ab9935719cef4ed16bf1a" integrity sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q== @@ -6493,10 +6476,6 @@ require-directory@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" -require-main-filename@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" - require-main-filename@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" @@ -7066,7 +7045,7 @@ string-width@^1.0.1: is-fullwidth-code-point "^1.0.0" strip-ansi "^3.0.0" -"string-width@^1.0.2 || 2", string-width@^2.0.0, string-width@^2.1.0, string-width@^2.1.1: +"string-width@^1.0.2 || 2", string-width@^2.1.0: version "2.1.1" resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" dependencies: @@ -7192,13 +7171,6 @@ supports-color@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" -supports-color@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.5.0.tgz#be7a0de484dec5c5cddf8b3d59125044912f635b" - integrity sha1-vnoN5ITexcXN34s9WRJQRJEvY1s= - dependencies: - has-flag "^2.0.0" - supports-color@^5.3.0: version "5.5.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" @@ -7831,13 +7803,6 @@ worker-rpc@^0.1.0: dependencies: microevent.ts "~0.1.1" -wrap-ansi@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" - dependencies: - 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" @@ -7872,7 +7837,7 @@ xtend@~4.0.1: resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== -"y18n@^3.2.1 || ^4.0.0", y18n@^4.0.0: +y18n@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w== @@ -7893,15 +7858,7 @@ yamljs@^0.2.1: argparse "^1.0.7" glob "^7.0.5" -yargs-parser@^11.1.1: - version "11.1.1" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-11.1.1.tgz#879a0865973bca9f6bab5cbdf3b1c67ec7d3bcf4" - integrity sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ== - dependencies: - camelcase "^5.0.0" - decamelize "^1.2.0" - -yargs-parser@^13.1.0: +yargs-parser@^13.1.0, yargs-parser@^13.1.1: version "13.1.1" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.1.tgz#d26058532aa06d365fe091f6a1fc06b2f7e5eca0" integrity sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ== @@ -7926,23 +7883,21 @@ yargs@13.2.4: y18n "^4.0.0" yargs-parser "^13.1.0" -yargs@^12.0.5: - version "12.0.5" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-12.0.5.tgz#05f5997b609647b64f66b81e3b4b10a368e7ad13" - integrity sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw== +yargs@^13.3.0: + version "13.3.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.0.tgz#4c657a55e07e5f2cf947f8a366567c04a0dedc83" + integrity sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA== dependencies: - cliui "^4.0.0" - decamelize "^1.2.0" + cliui "^5.0.0" find-up "^3.0.0" - get-caller-file "^1.0.1" - os-locale "^3.0.0" + get-caller-file "^2.0.1" require-directory "^2.1.1" - require-main-filename "^1.0.1" + require-main-filename "^2.0.0" set-blocking "^2.0.0" - string-width "^2.0.0" + string-width "^3.0.0" which-module "^2.0.0" - y18n "^3.2.1 || ^4.0.0" - yargs-parser "^11.1.1" + y18n "^4.0.0" + yargs-parser "^13.1.1" yargs@^2.3.0: version "2.3.0" From 1f5e8488fde8bb50be29cd38abc474e244e1a5fb Mon Sep 17 00:00:00 2001 From: Georgii Dolzhykov Date: Tue, 10 Dec 2019 18:37:50 +0200 Subject: [PATCH 60/88] tests: "Expected" and "Received" are mixed up in parser verification tests (#7125) --- tests_config/run_spec.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests_config/run_spec.js b/tests_config/run_spec.js index ae61b7bb0..d62fb7965 100644 --- a/tests_config/run_spec.js +++ b/tests_config/run_spec.js @@ -94,7 +94,7 @@ global.run_spec = (dirname, parsers, options) => { const verifyOptions = Object.assign({}, baseOptions, { parser }); test(`${basename} - ${parser}-verify`, () => { const verifyOutput = format(input, filename, verifyOptions); - expect(visualizedOutput).toEqual(visualizeEndOfLine(verifyOutput)); + expect(visualizeEndOfLine(verifyOutput)).toEqual(visualizedOutput); }); } From 204752dadb433bf02f630ccf0bf9d3b8be5d1959 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 10 Dec 2019 17:40:20 +0100 Subject: [PATCH 61/88] Bump eslint-plugin-import from 2.18.2 to 2.19.1 (#7123) Bumps [eslint-plugin-import](https://github.com/benmosher/eslint-plugin-import) from 2.18.2 to 2.19.1. - [Release notes](https://github.com/benmosher/eslint-plugin-import/releases) - [Changelog](https://github.com/benmosher/eslint-plugin-import/blob/master/CHANGELOG.md) - [Commits](https://github.com/benmosher/eslint-plugin-import/compare/v2.18.2...v2.19.1) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 34 ++++++++++++++++++++++------------ 2 files changed, 23 insertions(+), 13 deletions(-) diff --git a/package.json b/package.json index 24b69f57f..988eccd91 100644 --- a/package.json +++ b/package.json @@ -87,7 +87,7 @@ "eslint": "6.6.0", "eslint-config-prettier": "6.7.0", "eslint-formatter-friendly": "7.0.0", - "eslint-plugin-import": "2.18.2", + "eslint-plugin-import": "2.19.1", "eslint-plugin-prettier": "3.1.1", "eslint-plugin-react": "7.17.0", "execa": "3.4.0", diff --git a/yarn.lock b/yarn.lock index 30eb7cf9f..8b48ad3ae 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1267,6 +1267,15 @@ array-unique@^0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" +array.prototype.flat@^1.2.1: + version "1.2.2" + resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.2.2.tgz#8f3c71d245ba349b6b64b4078f76f5576f1fd723" + integrity sha512-VXjh7lAL4KXKF2hY4FnEW9eRW6IhdvFW1sN/JwLbmECbCgACCnBHNyP3lFiYuttr0jxRN9Bsc5+G27dMseSWqQ== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.15.0" + function-bind "^1.1.1" + arrify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" @@ -2533,12 +2542,12 @@ eslint-import-resolver-node@^0.3.2: debug "^2.6.9" 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== +eslint-module-utils@^2.4.1: + version "2.5.0" + resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.5.0.tgz#cdf0b40d623032274ccd2abd7e64c4e524d6e19c" + integrity sha512-kCo8pZaNz2dsAW7nCUjuVoI11EBXXpIzfNxmaoLhXoRDOnqXLC4iSGVRdZPhOitfbdEfMEfKOiENaK6wDPZEGw== dependencies: - debug "^2.6.8" + debug "^2.6.9" pkg-dir "^2.0.0" eslint-plugin-eslint-plugin@^2.1.0: @@ -2546,22 +2555,23 @@ eslint-plugin-eslint-plugin@^2.1.0: resolved "https://registry.yarnpkg.com/eslint-plugin-eslint-plugin/-/eslint-plugin-eslint-plugin-2.1.0.tgz#a7a00f15a886957d855feacaafee264f039e62d5" integrity sha512-kT3A/ZJftt28gbl/Cv04qezb/NQ1dwYIbi8lyf806XMxkus7DvOVCLIfTXMrorp322Pnoez7+zabXH29tADIDg== -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== +eslint-plugin-import@2.19.1: + version "2.19.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.19.1.tgz#5654e10b7839d064dd0d46cd1b88ec2133a11448" + integrity sha512-x68131aKoCZlCae7rDXKSAQmbT5DQuManyXo2sK6fJJ0aK5CWAkv6A6HJZGgqC8IhjQxYPgo6/IY4Oz8AFsbBw== dependencies: array-includes "^3.0.3" + array.prototype.flat "^1.2.1" contains-path "^0.1.0" debug "^2.6.9" doctrine "1.5.0" eslint-import-resolver-node "^0.3.2" - eslint-module-utils "^2.4.0" + eslint-module-utils "^2.4.1" has "^1.0.3" minimatch "^3.0.4" object.values "^1.1.0" read-pkg-up "^2.0.0" - resolve "^1.11.0" + resolve "^1.12.0" eslint-plugin-prettier@3.1.1: version "3.1.1" @@ -5946,7 +5956,7 @@ resolve@1.1.7: version "1.1.7" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" -resolve@1.13.1, resolve@^1.1.6, resolve@^1.11.0, resolve@^1.11.1, resolve@^1.13.1, resolve@^1.3.2, resolve@^1.5.0: +resolve@1.13.1, resolve@^1.1.6, resolve@^1.11.0, resolve@^1.11.1, resolve@^1.12.0, resolve@^1.13.1, resolve@^1.3.2, resolve@^1.5.0: version "1.13.1" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.13.1.tgz#be0aa4c06acd53083505abb35f4d66932ab35d16" integrity sha512-CxqObCX8K8YtAhOBRg+lrcdn+LK+WYOS8tSjqSFbjtrI5PnS63QPhZl4+yKfrU9tdsbMu9Anr/amegT87M9Z6w== From 137efbb7cc923c2d50631e4fec6694e5988773e4 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Wed, 11 Dec 2019 17:20:43 +0100 Subject: [PATCH 62/88] Bump @typescript-eslint/typescript-estree from 2.10.0 to 2.11.0 (#7127) Bumps [@typescript-eslint/typescript-estree](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-estree) from 2.10.0 to 2.11.0. - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/typescript-estree/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v2.11.0/packages/typescript-estree) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 988eccd91..2058d3ea6 100644 --- a/package.json +++ b/package.json @@ -19,7 +19,7 @@ "@babel/parser": "7.7.4", "@glimmer/syntax": "0.41.0", "@iarna/toml": "2.2.3", - "@typescript-eslint/typescript-estree": "2.10.0", + "@typescript-eslint/typescript-estree": "2.11.0", "angular-estree-parser": "1.1.5", "angular-html-parser": "1.3.0", "camelcase": "5.3.1", diff --git a/yarn.lock b/yarn.lock index 8b48ad3ae..364af047b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -890,10 +890,10 @@ dependencies: "@types/yargs-parser" "*" -"@typescript-eslint/typescript-estree@2.10.0": - version "2.10.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-2.10.0.tgz#89cdabd5e8c774e9d590588cb42fb9afd14dcbd9" - integrity sha512-oOYnplddQNm/LGVkqbkAwx4TIBuuZ36cAQq9v3nFIU9FmhemHuVzAesMSXNQDdAzCa5bFgCrfD3JWhYVKlRN2g== +"@typescript-eslint/typescript-estree@2.11.0": + version "2.11.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-2.11.0.tgz#21ada6504274cd1644855926312c798fc697e9fb" + integrity sha512-HGY4+d4MagO6cKMcKfIKaTMxcAv7dEVnji2Zi+vi5VV8uWAM631KjAB5GxFcexMYrwKT0EekRiiGK1/Sd7VFGA== dependencies: debug "^4.1.1" eslint-visitor-keys "^1.1.0" From 40b05a90198ba30dcadac703e3d5ac488e708dcd Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Thu, 12 Dec 2019 13:16:16 +0300 Subject: [PATCH 63/88] Bump @babel/parser from 7.7.4 to 7.7.5 (#7134) Bumps [@babel/parser](https://github.com/babel/babel) from 7.7.4 to 7.7.5. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md) - [Commits](https://github.com/babel/babel/compare/v7.7.4...v7.7.5) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 2058d3ea6..d285706d3 100644 --- a/package.json +++ b/package.json @@ -16,7 +16,7 @@ "dependencies": { "@angular/compiler": "8.2.14", "@babel/code-frame": "7.5.5", - "@babel/parser": "7.7.4", + "@babel/parser": "7.7.5", "@glimmer/syntax": "0.41.0", "@iarna/toml": "2.2.3", "@typescript-eslint/typescript-estree": "2.11.0", diff --git a/yarn.lock b/yarn.lock index 364af047b..8f861902e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -279,10 +279,10 @@ esutils "^2.0.2" js-tokens "^4.0.0" -"@babel/parser@7.7.4", "@babel/parser@^7.7.0", "@babel/parser@^7.7.2", "@babel/parser@^7.7.4": - version "7.7.4" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.7.4.tgz#75ab2d7110c2cf2fa949959afb05fa346d2231bb" - integrity sha512-jIwvLO0zCL+O/LmEJQjWA75MQTWwx3c3u2JOTDK5D3/9egrWRRA0/0hk9XXywYnXZVVpzrBYeIQTmhwUaePI9g== +"@babel/parser@7.7.5", "@babel/parser@^7.7.0", "@babel/parser@^7.7.2", "@babel/parser@^7.7.4": + version "7.7.5" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.7.5.tgz#cbf45321619ac12d83363fcf9c94bb67fa646d71" + integrity sha512-KNlOe9+/nk4i29g0VXgl8PEXIRms5xKLJeuZ6UptN0fHv+jDiriG+y94X6qAgWTR0h3KaoM1wK5G5h7MHFRSig== "@babel/plugin-proposal-async-generator-functions@^7.7.4": version "7.7.4" From 025fcdea95e9bc3a8c1ec5a94d091de9134a8e59 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Fri, 13 Dec 2019 23:21:24 +0100 Subject: [PATCH 64/88] Bump rollup from 1.27.8 to 1.27.12 (#7137) Bumps [rollup](https://github.com/rollup/rollup) from 1.27.8 to 1.27.12. - [Release notes](https://github.com/rollup/rollup/releases) - [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md) - [Commits](https://github.com/rollup/rollup/compare/v1.27.8...v1.27.12) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index d285706d3..0977b7e13 100644 --- a/package.json +++ b/package.json @@ -99,7 +99,7 @@ "mkdirp": "0.5.1", "prettier": "1.19.1", "rimraf": "3.0.0", - "rollup": "1.27.8", + "rollup": "1.27.12", "rollup-plugin-babel": "4.3.3", "rollup-plugin-commonjs": "10.1.0", "rollup-plugin-node-globals": "1.4.0", diff --git a/yarn.lock b/yarn.lock index 8f861902e..8756a4312 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6063,10 +6063,10 @@ rollup-pluginutils@^2.3.1, rollup-pluginutils@^2.5.0, rollup-pluginutils@^2.6.0, dependencies: estree-walker "^0.6.1" -rollup@1.27.8: - version "1.27.8" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-1.27.8.tgz#94288a957af9f4c2380b73a17494d87705997d0f" - integrity sha512-EVoEV5rAWl+5clnGznt1KY8PeVkzVQh/R0d2s3gHEkN7gfoyC4JmvIVuCtPbYE8NM5Ep/g+nAmvKXBjzaqTsHA== +rollup@1.27.12: + version "1.27.12" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-1.27.12.tgz#cf84db4b4edaf187eaba95232f34de7cd4d22d9c" + integrity sha512-51iR7n6NQfdQJlRrIktaGmkdt395A8Vue7CdnlrK6UhY9DY2GaKsTdljWeXisJuZh+w90Gz8VFNh5X+yxP20oQ== dependencies: "@types/estree" "*" "@types/node" "*" From 64d4b2f49fb3f85a3f4c221646e989ae87ea04fa Mon Sep 17 00:00:00 2001 From: Brian Kim Date: Sat, 14 Dec 2019 12:41:15 -0500 Subject: [PATCH 65/88] revert function composition logic for decorators (#7138) fixes #6953 --- changelog_unreleased/javascript/pr-7138.md | 31 +++++++++++++++++++ src/language-js/printer-estree.js | 5 ++- .../__snapshots__/jsfmt.spec.js.snap | 5 +-- 3 files changed, 36 insertions(+), 5 deletions(-) create mode 100644 changelog_unreleased/javascript/pr-7138.md diff --git a/changelog_unreleased/javascript/pr-7138.md b/changelog_unreleased/javascript/pr-7138.md new file mode 100644 index 000000000..7fe07e540 --- /dev/null +++ b/changelog_unreleased/javascript/pr-7138.md @@ -0,0 +1,31 @@ +#### Tweak function composition logic for decorators ([#7138](https://github.com/prettier/prettier/pull/7138) by [@brainkim](https://github.com/brainkim)) + +Because decorators modify the line following, splitting a decorator call’s +arguments onto multiple lines can obscure the relationship between the +decorator and its intended target, producing less-readable code. Therefore, the +function composition logic introduced in #6033 has been changed to exclude +decorator calls. + + +```jsx +// Input +export class Item { + @OneToOne(() => Thing, x => x.item) + thing!: Thing; +} + +// Output (Prettier stable) +export class Item { + @OneToOne( + () => Thing, + x => x.item, + ) + thing!: Thing; +} + +// Output (Prettier master) +export class Item { + @OneToOne(() => Thing, x => x.item) + thing!: Thing; +} +``` diff --git a/src/language-js/printer-estree.js b/src/language-js/printer-estree.js index b951fae1b..1bccce6bb 100644 --- a/src/language-js/printer-estree.js +++ b/src/language-js/printer-estree.js @@ -4069,7 +4069,10 @@ function printArgumentsList(path, options, print) { ); } - if (isFunctionCompositionArgs(args)) { + if ( + path.getParentNode().type !== "Decorator" && + isFunctionCompositionArgs(args) + ) { return allArgsBrokenOut(); } diff --git a/tests/decorators-ts/__snapshots__/jsfmt.spec.js.snap b/tests/decorators-ts/__snapshots__/jsfmt.spec.js.snap index 898ab7e2f..a34eb3977 100644 --- a/tests/decorators-ts/__snapshots__/jsfmt.spec.js.snap +++ b/tests/decorators-ts/__snapshots__/jsfmt.spec.js.snap @@ -321,10 +321,7 @@ export class Board { @Column() description: string; - @OneToMany( - type => Topic, - topic => topic.board - ) + @OneToMany(type => Topic, topic => topic.board) topics: Topic[]; } From 22782c2e326a5f8d75902f84e8d94d117dfd40c7 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 16 Dec 2019 18:02:20 +0100 Subject: [PATCH 66/88] Bump eslint-plugin-prettier from 3.1.1 to 3.1.2 (#7142) Bumps [eslint-plugin-prettier](https://github.com/prettier/eslint-plugin-prettier) from 3.1.1 to 3.1.2. - [Release notes](https://github.com/prettier/eslint-plugin-prettier/releases) - [Changelog](https://github.com/prettier/eslint-plugin-prettier/blob/master/CHANGELOG.md) - [Commits](https://github.com/prettier/eslint-plugin-prettier/compare/v3.1.1...v3.1.2) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 0977b7e13..e4d17a2f4 100644 --- a/package.json +++ b/package.json @@ -88,7 +88,7 @@ "eslint-config-prettier": "6.7.0", "eslint-formatter-friendly": "7.0.0", "eslint-plugin-import": "2.19.1", - "eslint-plugin-prettier": "3.1.1", + "eslint-plugin-prettier": "3.1.2", "eslint-plugin-react": "7.17.0", "execa": "3.4.0", "jest": "23.3.0", diff --git a/yarn.lock b/yarn.lock index 8756a4312..d995b1654 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2573,10 +2573,10 @@ eslint-plugin-import@2.19.1: read-pkg-up "^2.0.0" resolve "^1.12.0" -eslint-plugin-prettier@3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-3.1.1.tgz#507b8562410d02a03f0ddc949c616f877852f2ba" - integrity sha512-A+TZuHZ0KU0cnn56/9mfR7/KjUJ9QNVXUhwvRFSR7PGPe0zQR6PTkmyqg1AtUUEOzTqeRsUwyKFh0oVZKVCrtA== +eslint-plugin-prettier@3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-3.1.2.tgz#432e5a667666ab84ce72f945c72f77d996a5c9ba" + integrity sha512-GlolCC9y3XZfv3RQfwGew7NnuFDKsfI4lbvRK+PIIo23SFH+LemGs4cKwzAaRa+Mdb+lQO/STaIayno8T5sJJA== dependencies: prettier-linter-helpers "^1.0.0" From d1771e86524901a4b814c364b3d084fd14c9999e Mon Sep 17 00:00:00 2001 From: Sosuke Suzuki Date: Tue, 17 Dec 2019 02:11:39 +0900 Subject: [PATCH 67/88] JavaScript: Fix moving semi for `return` to end of line-comment (#7140) * Modify to fix semi for return with comment * Add complex test case * Add null check * Add changelog --- changelog_unreleased/javascript/pr-7140.md | 13 ++++++++ src/language-js/printer-estree.js | 14 ++++++++- tests/return/__snapshots__/jsfmt.spec.js.snap | 30 +++++++++++++++++++ tests/return/comment.js | 16 ++++++++++ 4 files changed, 72 insertions(+), 1 deletion(-) create mode 100644 changelog_unreleased/javascript/pr-7140.md diff --git a/changelog_unreleased/javascript/pr-7140.md b/changelog_unreleased/javascript/pr-7140.md new file mode 100644 index 000000000..041b52b5a --- /dev/null +++ b/changelog_unreleased/javascript/pr-7140.md @@ -0,0 +1,13 @@ +#### Fix moving semi for `return` to end of line-comment([#7140](https://github.com/prettier/prettier/pull/7140) by [@sosukesuzuki](https://github.com/sosukesuzuki)) + +```js +// Input +return // comment +; + +// Prettier stable +return // comment; + +// Prettier master +return; // comment +``` diff --git a/src/language-js/printer-estree.js b/src/language-js/printer-estree.js index 1bccce6bb..3f16b2f9f 100644 --- a/src/language-js/printer-estree.js +++ b/src/language-js/printer-estree.js @@ -5962,6 +5962,16 @@ function printReturnAndThrowArgument(path, options, print) { } } + const lastComment = + Array.isArray(node.comments) && node.comments[node.comments.length - 1]; + const isLastCommentLine = + lastComment && + (lastComment.type === "CommentLine" || lastComment.type === "Line"); + + if (isLastCommentLine) { + parts.push(semi); + } + if (hasDanglingComments(node)) { parts.push( " ", @@ -5969,7 +5979,9 @@ function printReturnAndThrowArgument(path, options, print) { ); } - parts.push(semi); + if (!isLastCommentLine) { + parts.push(semi); + } return concat(parts); } diff --git a/tests/return/__snapshots__/jsfmt.spec.js.snap b/tests/return/__snapshots__/jsfmt.spec.js.snap index 5a5ea6d9e..a1ca41075 100644 --- a/tests/return/__snapshots__/jsfmt.spec.js.snap +++ b/tests/return/__snapshots__/jsfmt.spec.js.snap @@ -68,6 +68,22 @@ function f() { return /* a */; } +function f() { + return // a + ; +} + +function f() { + return // a + /* b */; +} + +function f() { + return /* a */ + // b + ; +} + function x() { return func2 //comment @@ -95,6 +111,20 @@ function f() { return /* a */; } +function f() { + return; // a +} + +function f() { + return // a + /* b */; +} + +function f() { + return; /* a */ + // b +} + function x() { return ( func2 diff --git a/tests/return/comment.js b/tests/return/comment.js index 06126f9f0..d09bd5203 100644 --- a/tests/return/comment.js +++ b/tests/return/comment.js @@ -2,6 +2,22 @@ function f() { return /* a */; } +function f() { + return // a + ; +} + +function f() { + return // a + /* b */; +} + +function f() { + return /* a */ + // b + ; +} + function x() { return func2 //comment From c3b3eb5dda9c70259aba84f273b610e7cf45a51a Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 17 Dec 2019 16:30:38 +0300 Subject: [PATCH 68/88] Bump webpack from 4.41.2 to 4.41.3 in /website (#7145) Bumps [webpack](https://github.com/webpack/webpack) from 4.41.2 to 4.41.3. - [Release notes](https://github.com/webpack/webpack/releases) - [Commits](https://github.com/webpack/webpack/compare/v4.41.2...v4.41.3) Signed-off-by: dependabot-preview[bot] --- website/package.json | 2 +- website/yarn.lock | 28 ++++++++++++++-------------- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/website/package.json b/website/package.json index 880ac442c..9411745e0 100644 --- a/website/package.json +++ b/website/package.json @@ -27,7 +27,7 @@ "docusaurus": "1.14.3", "js-yaml": "3.13.1", "svgo": "1.3.2", - "webpack": "4.41.2", + "webpack": "4.41.3", "webpack-cli": "3.3.10" } } diff --git a/website/yarn.lock b/website/yarn.lock index a902a3590..81e955ed8 100644 --- a/website/yarn.lock +++ b/website/yarn.lock @@ -6695,10 +6695,10 @@ send@0.17.1: range-parser "~1.2.1" statuses "~1.5.0" -serialize-javascript@^1.7.0: - version "1.9.1" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-1.9.1.tgz#cfc200aef77b600c47da9bb8149c943e798c2fdb" - integrity sha512-0Vb/54WJ6k5v8sSWN09S0ora+Hnr+cX40r9F170nT+mSkaxltoE/7R3OrIdBSUv1OoiobH1QoWQbCnAO+e8J1A== +serialize-javascript@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-2.1.2.tgz#ecec53b0e0317bdc95ef76ab7074b7384785fa61" + integrity sha512-rs9OggEUF0V4jUSecXazOYsLfu7OGK2qIn3c7IPBiffz32XniEp/TX9Xmc9LQfK2nQ2QKHvZ2oygKUGU0lG4jQ== serve-static@1.14.1: version "1.14.1" @@ -7254,16 +7254,16 @@ tempfile@^2.0.0: temp-dir "^1.0.0" uuid "^3.0.1" -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== +terser-webpack-plugin@^1.4.3: + version "1.4.3" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.4.3.tgz#5ecaf2dbdc5fb99745fd06791f46fc9ddb1c9a7c" + integrity sha512-QMxecFz/gHQwteWwSo5nTc6UaICqN1bMedC5sMtUc7y3Ha3Q8y6ZO0iCR8pq4RJC8Hjf0FEPEHZqcMB/+DFCrA== dependencies: cacache "^12.0.2" find-cache-dir "^2.1.0" is-wsl "^1.1.0" schema-utils "^1.0.0" - serialize-javascript "^1.7.0" + serialize-javascript "^2.1.2" source-map "^0.6.1" terser "^4.1.2" webpack-sources "^1.4.0" @@ -7708,10 +7708,10 @@ webpack-sources@^1.4.0, webpack-sources@^1.4.1: source-list-map "^2.0.0" source-map "~0.6.1" -webpack@4.41.2: - version "4.41.2" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.41.2.tgz#c34ec76daa3a8468c9b61a50336d8e3303dce74e" - integrity sha512-Zhw69edTGfbz9/8JJoyRQ/pq8FYUoY0diOXqW0T6yhgdhCv6wr0hra5DwwWexNRns2Z2+gsnrNcbe9hbGBgk/A== +webpack@4.41.3: + version "4.41.3" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.41.3.tgz#cb7592c43080337dbc9be9e98fc6478eb3981026" + integrity sha512-EcNzP9jGoxpQAXq1VOoTet0ik7/VVU1MovIfcUSAjLowc7GhcQku/sOXALvq5nPpSei2HF6VRhibeJSC3i/Law== dependencies: "@webassemblyjs/ast" "1.8.5" "@webassemblyjs/helper-module-context" "1.8.5" @@ -7733,7 +7733,7 @@ webpack@4.41.2: node-libs-browser "^2.2.1" schema-utils "^1.0.0" tapable "^1.1.3" - terser-webpack-plugin "^1.4.1" + terser-webpack-plugin "^1.4.3" watchpack "^1.6.0" webpack-sources "^1.4.1" From 9641a8d32ed4c68beb6ed4dd85b79e4804b19285 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 17 Dec 2019 18:04:42 +0100 Subject: [PATCH 69/88] Bump rollup from 1.27.12 to 1.27.13 (#7146) Bumps [rollup](https://github.com/rollup/rollup) from 1.27.12 to 1.27.13. - [Release notes](https://github.com/rollup/rollup/releases) - [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md) - [Commits](https://github.com/rollup/rollup/compare/v1.27.12...v1.27.13) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index e4d17a2f4..c3d2a53a9 100644 --- a/package.json +++ b/package.json @@ -99,7 +99,7 @@ "mkdirp": "0.5.1", "prettier": "1.19.1", "rimraf": "3.0.0", - "rollup": "1.27.12", + "rollup": "1.27.13", "rollup-plugin-babel": "4.3.3", "rollup-plugin-commonjs": "10.1.0", "rollup-plugin-node-globals": "1.4.0", diff --git a/yarn.lock b/yarn.lock index d995b1654..3ce606f79 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6063,10 +6063,10 @@ rollup-pluginutils@^2.3.1, rollup-pluginutils@^2.5.0, rollup-pluginutils@^2.6.0, dependencies: estree-walker "^0.6.1" -rollup@1.27.12: - version "1.27.12" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-1.27.12.tgz#cf84db4b4edaf187eaba95232f34de7cd4d22d9c" - integrity sha512-51iR7n6NQfdQJlRrIktaGmkdt395A8Vue7CdnlrK6UhY9DY2GaKsTdljWeXisJuZh+w90Gz8VFNh5X+yxP20oQ== +rollup@1.27.13: + version "1.27.13" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-1.27.13.tgz#d6d3500512daacbf8de54d2800de62d893085b90" + integrity sha512-hDi7M07MpmNSDE8YVwGVFA8L7n8jTLJ4lG65nMAijAyqBe//rtu4JdxjUBE7JqXfdpqxqDTbCDys9WcqdpsQvw== dependencies: "@types/estree" "*" "@types/node" "*" From dfa36bacbb12ced17df5861721b2defc61299c97 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Wed, 18 Dec 2019 08:06:56 +0100 Subject: [PATCH 70/88] Bump concurrently from 5.0.1 to 5.0.2 in /website (#7149) Bumps [concurrently](https://github.com/kimmobrunfeldt/concurrently) from 5.0.1 to 5.0.2. - [Release notes](https://github.com/kimmobrunfeldt/concurrently/releases) - [Commits](https://github.com/kimmobrunfeldt/concurrently/compare/v5.0.1...v5.0.2) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- website/package.json | 2 +- website/yarn.lock | 18 +++++++++--------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/website/package.json b/website/package.json index 9411745e0..27061668e 100644 --- a/website/package.json +++ b/website/package.json @@ -23,7 +23,7 @@ "@babel/preset-react": "7.7.4", "@sandhose/prettier-animated-logo": "1.0.3", "babel-loader": "8.0.6", - "concurrently": "5.0.1", + "concurrently": "5.0.2", "docusaurus": "1.14.3", "js-yaml": "3.13.1", "svgo": "1.3.2", diff --git a/website/yarn.lock b/website/yarn.lock index 81e955ed8..cef9d46c5 100644 --- a/website/yarn.lock +++ b/website/yarn.lock @@ -1967,10 +1967,10 @@ concat-with-sourcemaps@*: dependencies: source-map "^0.6.1" -concurrently@5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/concurrently/-/concurrently-5.0.1.tgz#9d15e0e7bb7ebe5c3bcd86deb8393501c35dd003" - integrity sha512-fPKUlOAXEXpktp3z7RqIvzTSCowfDo8oQbdKoGKGZVm+G2hGFbIIAFm4qwWcGl/sIHmpMSgPqeCbjld3kdPXvA== +concurrently@5.0.2: + version "5.0.2" + resolved "https://registry.yarnpkg.com/concurrently/-/concurrently-5.0.2.tgz#4d2911018c0f15ddec34a8e668fc48dced7f3b1e" + integrity sha512-iUNVI6PzKO0RVXV9pHWM0khvEbELxf3XLIoChaV6hHyoIaJuxQWZiOwlNysnJX5khsfvIK66+OJqRdbYrdsR1g== dependencies: chalk "^2.4.2" date-fns "^2.0.1" @@ -1979,7 +1979,7 @@ concurrently@5.0.1: rxjs "^6.5.2" spawn-command "^0.0.2-1" supports-color "^6.1.0" - tree-kill "^1.2.1" + tree-kill "^1.2.2" yargs "^13.3.0" config-chain@^1.1.11: @@ -7394,10 +7394,10 @@ tr46@^1.0.1: dependencies: punycode "^2.1.0" -tree-kill@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/tree-kill/-/tree-kill-1.2.1.tgz#5398f374e2f292b9dcc7b2e71e30a5c3bb6c743a" - integrity sha512-4hjqbObwlh2dLyW4tcz0Ymw0ggoaVDMveUB9w8kFSQScdRLo0gxO9J7WFcUBo+W3C1TLdFIEwNOWebgZZ0RH9Q== +tree-kill@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/tree-kill/-/tree-kill-1.2.2.tgz#4ca09a9092c88b73a7cdc5e8a01b507b0790a0cc" + integrity sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A== tree-node-cli@^1.2.5: version "1.2.5" From ddcb1f963c6c81535b9f1076bf5121bfd2513432 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Thu, 19 Dec 2019 08:40:38 +0100 Subject: [PATCH 71/88] Bump @babel/preset-env from 7.7.6 to 7.7.7 in /website (#7158) Bumps [@babel/preset-env](https://github.com/babel/babel) from 7.7.6 to 7.7.7. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md) - [Commits](https://github.com/babel/babel/compare/v7.7.6...v7.7.7) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- website/package.json | 2 +- website/yarn.lock | 65 ++++++++++++++++++++++++-------------------- 2 files changed, 36 insertions(+), 31 deletions(-) diff --git a/website/package.json b/website/package.json index 27061668e..1c5ca1541 100644 --- a/website/package.json +++ b/website/package.json @@ -19,7 +19,7 @@ "react-dom": "16.12.0" }, "devDependencies": { - "@babel/preset-env": "7.7.6", + "@babel/preset-env": "7.7.7", "@babel/preset-react": "7.7.4", "@sandhose/prettier-animated-logo": "1.0.3", "babel-loader": "8.0.6", diff --git a/website/yarn.lock b/website/yarn.lock index cef9d46c5..6ae2651d7 100644 --- a/website/yarn.lock +++ b/website/yarn.lock @@ -304,10 +304,10 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-syntax-json-strings" "^7.7.4" -"@babel/plugin-proposal-object-rest-spread@^7.7.4": - version "7.7.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.7.4.tgz#cc57849894a5c774214178c8ab64f6334ec8af71" - integrity sha512-rnpnZR3/iWKmiQyJ3LKJpSwLDcX/nSXhdLk4Aq/tXOApIvyu7qoabrige0ylsAJffaUC51WiBu209Q0U+86OWQ== +"@babel/plugin-proposal-object-rest-spread@^7.7.4", "@babel/plugin-proposal-object-rest-spread@^7.7.7": + version "7.7.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.7.7.tgz#9f27075004ab99be08c5c1bd653a2985813cb370" + integrity sha512-3qp9I8lelgzNedI3hrhkvhaEYree6+WHnyA/q4Dza9z7iEIs1eyhWyJnetk3jJ69RT0AT4G0UhEGwyGFJ7GUuQ== dependencies: "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-syntax-object-rest-spread" "^7.7.4" @@ -320,10 +320,10 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-syntax-optional-catch-binding" "^7.7.4" -"@babel/plugin-proposal-unicode-property-regex@^7.7.4": - version "7.7.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.7.4.tgz#7c239ccaf09470dbe1d453d50057460e84517ebb" - integrity sha512-cHgqHgYvffluZk85dJ02vloErm3Y6xtH+2noOBOJ2kXOJH3aVCDnj5eR/lVNlTnYu4hndAPJD3rTFjW3qee0PA== +"@babel/plugin-proposal-unicode-property-regex@^7.7.7": + version "7.7.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.7.7.tgz#433fa9dac64f953c12578b29633f456b68831c4e" + integrity sha512-80PbkKyORBUVm1fbTLrHpYdJxMThzM1UqFGh0ALEhO9TYbG86Ah9zQYAB/84axz2vcxefDLdZwWwZNlYARlu9w== dependencies: "@babel/helper-create-regexp-features-plugin" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" @@ -436,10 +436,10 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-dotall-regex@^7.7.4": - version "7.7.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.7.4.tgz#f7ccda61118c5b7a2599a72d5e3210884a021e96" - integrity sha512-mk0cH1zyMa/XHeb6LOTXTbG7uIJ8Rrjlzu91pUx/KS3JpcgaTDwMS8kM+ar8SLOvlL2Lofi4CGBAjCo3a2x+lw== +"@babel/plugin-transform-dotall-regex@^7.7.7": + version "7.7.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.7.7.tgz#3e9713f1b69f339e87fa796b097d73ded16b937b" + integrity sha512-b4in+YlTeE/QmTgrllnb3bHA0HntYvjz8O3Mcbx75UBPJA2xhb5A8nle498VhxSXJHQefjtQxpnLPehDJ4TRlg== dependencies: "@babel/helper-create-regexp-features-plugin" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" @@ -546,10 +546,10 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/helper-replace-supers" "^7.7.4" -"@babel/plugin-transform-parameters@^7.7.4": - version "7.7.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.7.4.tgz#da4555c97f39b51ac089d31c7380f03bca4075ce" - integrity sha512-VJwhVePWPa0DqE9vcfptaJSzNDKrWU/4FbYCjZERtmqEs05g3UMXnYMZoXja7JAJ7Y7sPZipwm/pGApZt7wHlw== +"@babel/plugin-transform-parameters@^7.7.7": + version "7.7.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.7.7.tgz#7a884b2460164dc5f194f668332736584c760007" + integrity sha512-OhGSrf9ZBrr1fw84oFXj5hgi8Nmg+E2w5L7NhnG0lPvpDtqd7dbyilM2/vR8CKbJ907RyxPh2kj6sBCSSfI9Ew== dependencies: "@babel/helper-call-delegate" "^7.7.4" "@babel/helper-get-function-arity" "^7.7.4" @@ -661,19 +661,19 @@ core-js "^2.6.5" regenerator-runtime "^0.13.2" -"@babel/preset-env@7.7.6", "@babel/preset-env@^7.7.4": - version "7.7.6" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.7.6.tgz#39ac600427bbb94eec6b27953f1dfa1d64d457b2" - integrity sha512-k5hO17iF/Q7tR9Jv8PdNBZWYW6RofxhnxKjBMc0nG4JTaWvOTiPoO/RLFwAKcA4FpmuBFm6jkoqaRJLGi0zdaQ== +"@babel/preset-env@7.7.7", "@babel/preset-env@^7.7.4": + version "7.7.7" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.7.7.tgz#c294167b91e53e7e36d820e943ece8d0c7fe46ac" + integrity sha512-pCu0hrSSDVI7kCVUOdcMNQEbOPJ52E+LrQ14sN8uL2ALfSqePZQlKrOy+tM4uhEdYlCHi4imr8Zz2cZe9oSdIg== dependencies: "@babel/helper-module-imports" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-proposal-async-generator-functions" "^7.7.4" "@babel/plugin-proposal-dynamic-import" "^7.7.4" "@babel/plugin-proposal-json-strings" "^7.7.4" - "@babel/plugin-proposal-object-rest-spread" "^7.7.4" + "@babel/plugin-proposal-object-rest-spread" "^7.7.7" "@babel/plugin-proposal-optional-catch-binding" "^7.7.4" - "@babel/plugin-proposal-unicode-property-regex" "^7.7.4" + "@babel/plugin-proposal-unicode-property-regex" "^7.7.7" "@babel/plugin-syntax-async-generators" "^7.7.4" "@babel/plugin-syntax-dynamic-import" "^7.7.4" "@babel/plugin-syntax-json-strings" "^7.7.4" @@ -687,7 +687,7 @@ "@babel/plugin-transform-classes" "^7.7.4" "@babel/plugin-transform-computed-properties" "^7.7.4" "@babel/plugin-transform-destructuring" "^7.7.4" - "@babel/plugin-transform-dotall-regex" "^7.7.4" + "@babel/plugin-transform-dotall-regex" "^7.7.7" "@babel/plugin-transform-duplicate-keys" "^7.7.4" "@babel/plugin-transform-exponentiation-operator" "^7.7.4" "@babel/plugin-transform-for-of" "^7.7.4" @@ -701,7 +701,7 @@ "@babel/plugin-transform-named-capturing-groups-regex" "^7.7.4" "@babel/plugin-transform-new-target" "^7.7.4" "@babel/plugin-transform-object-super" "^7.7.4" - "@babel/plugin-transform-parameters" "^7.7.4" + "@babel/plugin-transform-parameters" "^7.7.7" "@babel/plugin-transform-property-literals" "^7.7.4" "@babel/plugin-transform-regenerator" "^7.7.5" "@babel/plugin-transform-reserved-words" "^7.7.4" @@ -713,7 +713,7 @@ "@babel/plugin-transform-unicode-regex" "^7.7.4" "@babel/types" "^7.7.4" browserslist "^4.6.0" - core-js-compat "^3.4.7" + core-js-compat "^3.6.0" invariant "^2.2.2" js-levenshtein "^1.1.3" semver "^5.5.0" @@ -2059,13 +2059,13 @@ copy-descriptor@^0.1.0: resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= -core-js-compat@^3.4.7: - version "3.4.8" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.4.8.tgz#f72e6a4ed76437ea710928f44615f926a81607d5" - integrity sha512-l3WTmnXHV2Sfu5VuD7EHE2w7y+K68+kULKt5RJg8ZJk3YhHF1qLD4O8v8AmNq+8vbOwnPFFDvds25/AoEvMqlQ== +core-js-compat@^3.6.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.6.0.tgz#4eb6cb69d03d99159ed7c860cd5fcf7d23a62ea9" + integrity sha512-Z3eCNjGgoYluH89Jt4wVkfYsc/VdLrA2/woX5lm0isO/pCT+P+Y+o65bOuEnjDJLthdwTBxbCVzptTXtc18fJg== dependencies: browserslist "^4.8.2" - semver "^6.3.0" + semver "7.0.0" core-js@^2.6.5: version "2.6.9" @@ -6671,6 +6671,11 @@ semver-truncate@^1.1.2: resolved "https://registry.yarnpkg.com/semver/-/semver-5.6.0.tgz#7e74256fbaa49c75aa7c7a205cc22799cac80004" integrity sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg== +semver@7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e" + integrity sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A== + semver@^6.3.0: version "6.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" From 45b1bb702cecbb3ddb0b62427f3293098886be18 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Fri, 20 Dec 2019 15:33:11 +0100 Subject: [PATCH 72/88] Bump webpack from 4.41.3 to 4.41.4 in /website (#7164) Bumps [webpack](https://github.com/webpack/webpack) from 4.41.3 to 4.41.4. - [Release notes](https://github.com/webpack/webpack/releases) - [Commits](https://github.com/webpack/webpack/compare/v4.41.3...v4.41.4) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- website/package.json | 2 +- website/yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/website/package.json b/website/package.json index 1c5ca1541..55681166b 100644 --- a/website/package.json +++ b/website/package.json @@ -27,7 +27,7 @@ "docusaurus": "1.14.3", "js-yaml": "3.13.1", "svgo": "1.3.2", - "webpack": "4.41.3", + "webpack": "4.41.4", "webpack-cli": "3.3.10" } } diff --git a/website/yarn.lock b/website/yarn.lock index 6ae2651d7..63b14a0e6 100644 --- a/website/yarn.lock +++ b/website/yarn.lock @@ -7713,10 +7713,10 @@ webpack-sources@^1.4.0, webpack-sources@^1.4.1: source-list-map "^2.0.0" source-map "~0.6.1" -webpack@4.41.3: - version "4.41.3" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.41.3.tgz#cb7592c43080337dbc9be9e98fc6478eb3981026" - integrity sha512-EcNzP9jGoxpQAXq1VOoTet0ik7/VVU1MovIfcUSAjLowc7GhcQku/sOXALvq5nPpSei2HF6VRhibeJSC3i/Law== +webpack@4.41.4: + version "4.41.4" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.41.4.tgz#4bec4125224bdf50efa8be6226c19047599cd034" + integrity sha512-Lc+2uB6NjpCWsHI3trkoISOI64h9QYIXenbEWj3bn3oyjfB1lEBXjWAfAyY2sM0rZn41oD5V91OLwKRwS6Wp8Q== dependencies: "@webassemblyjs/ast" "1.8.5" "@webassemblyjs/helper-module-context" "1.8.5" From 3bdd21dbf3d13fce63e6e858eef3ce4dfd9f6813 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 23 Dec 2019 09:11:25 +0100 Subject: [PATCH 73/88] Bump codemirror from 5.49.2 to 5.50.0 in /website (#7169) Bumps [codemirror](https://github.com/codemirror/CodeMirror) from 5.49.2 to 5.50.0. - [Release notes](https://github.com/codemirror/CodeMirror/releases) - [Changelog](https://github.com/codemirror/CodeMirror/blob/master/CHANGELOG.md) - [Commits](https://github.com/codemirror/CodeMirror/compare/5.49.2...5.50.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- website/package.json | 2 +- website/yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/website/package.json b/website/package.json index 55681166b..b34efb31e 100644 --- a/website/package.json +++ b/website/package.json @@ -10,7 +10,7 @@ }, "dependencies": { "clipboard": "2.0.4", - "codemirror": "5.49.2", + "codemirror": "5.50.0", "codemirror-graphql": "0.11.2", "lodash.groupby": "4.6.0", "lz-string": "1.4.4", diff --git a/website/yarn.lock b/website/yarn.lock index 63b14a0e6..db8d09d30 100644 --- a/website/yarn.lock +++ b/website/yarn.lock @@ -1857,10 +1857,10 @@ codemirror-graphql@0.11.2: graphql-language-service-interface "^2.3.0" graphql-language-service-parser "^1.5.0" -codemirror@5.49.2: - version "5.49.2" - resolved "https://registry.yarnpkg.com/codemirror/-/codemirror-5.49.2.tgz#c84fdaf11b19803f828b0c67060c7bc6d154ccad" - integrity sha512-dwJ2HRPHm8w51WB5YTF9J7m6Z5dtkqbU9ntMZ1dqXyFB9IpjoUFDj80ahRVEoVanfIp6pfASJbOlbWdEf8FOzQ== +codemirror@5.50.0: + version "5.50.0" + resolved "https://registry.yarnpkg.com/codemirror/-/codemirror-5.50.0.tgz#aeacd18f225735b17cbab98908edace87fedcdab" + integrity sha512-32LAmGcBNhKtJP4WGgkcaCVQDyChAyaWA6jasg778ziZzo3PWBuhpAQIJMO8//Id45RoaLyXjuhcRUBoS8Vg+Q== coffee-script@^1.12.4: version "1.12.7" From 53c1049830d692c96c52e5d72fda4f4f0a983a87 Mon Sep 17 00:00:00 2001 From: Cyrille David Date: Mon, 23 Dec 2019 12:52:03 +0100 Subject: [PATCH 74/88] Refactor a few functions in glimmer printer (#7072) --- src/language-handlebars/printer-glimmer.js | 80 +++++++++++----------- 1 file changed, 39 insertions(+), 41 deletions(-) diff --git a/src/language-handlebars/printer-glimmer.js b/src/language-handlebars/printer-glimmer.js index 2eca2f448..7dadc6be8 100644 --- a/src/language-handlebars/printer-glimmer.js +++ b/src/language-handlebars/printer-glimmer.js @@ -32,26 +32,6 @@ const voidTags = [ // Formatter based on @glimmerjs/syntax's built-in test formatter: // https://github.com/glimmerjs/glimmer-vm/blob/master/packages/%40glimmer/syntax/lib/generation/print.ts -function printChildren(path, options, print) { - return concat( - path.map((childPath, childIndex) => { - const childNode = path.getValue(); - const isFirstNode = childIndex === 0; - const isLastNode = - childIndex == path.getParentNode(0).children.length - 1; - const isLastNodeInMultiNodeList = isLastNode && !isFirstNode; - const isWhitespace = isWhitespaceNode(childNode); - - if (isWhitespace && isLastNodeInMultiNodeList) { - return print(childPath, options, print); - } else if (isFirstNode) { - return concat([softline, print(childPath, options, print)]); - } - return print(childPath, options, print); - }, "children") - ); -} - function print(path, options, print) { const n = path.getValue(); @@ -82,7 +62,7 @@ function print(path, options, print) { voidTags.indexOf(n.tag) !== -1; const closeTagForNoBreak = isVoid ? concat([" />", softline]) : ">"; const closeTagForBreak = isVoid ? "/>" : ">"; - const getParams = (path, print) => + const printParams = (path, print) => indent( concat([ n.attributes.length ? line : "", @@ -103,7 +83,7 @@ function print(path, options, print) { concat([ "<", n.tag, - getParams(path, print), + printParams(path, print), n.blockParams.length ? ` as |${n.blockParams.join(" ")}|` : "", ifBreak(softline, ""), ifBreak(closeTagForBreak, closeTagForNoBreak) @@ -176,17 +156,20 @@ function print(path, options, print) { const p = path.getParentNode(0); const isParentConcat = p && p.type === "ConcatStatement"; const isParentAttr = p && p.type === "AttrNode"; - return group( - concat([ - n.escaped === false ? "{{{" : "{{", - printPathParams(path, print, { group: false }), - isParentConcat || isParentAttr ? "" : softline, - n.escaped === false ? "}}}" : "}}" - ]) - ); + const isEscaped = n.escaped === false; + + const opening = isEscaped ? "{{{" : "{{"; + const closing = isEscaped ? "}}}" : "}}"; + + const inner = [printPathParams(path, print)]; + if (!isParentConcat && !isParentAttr) { + inner.push(softline); + } + + return group(concat([opening, ...inner, closing])); } case "SubExpression": { - const params = getParams(path, print); + const params = printParams(path, print); const printedParams = params.length > 0 ? indent(concat([line, group(join(line, params))])) @@ -366,6 +349,26 @@ function print(path, options, print) { } } +function printChildren(path, options, print) { + return concat( + path.map((childPath, childIndex) => { + const childNode = path.getValue(); + const isFirstNode = childIndex === 0; + const isLastNode = + childIndex == path.getParentNode(0).children.length - 1; + const isLastNodeInMultiNodeList = isLastNode && !isFirstNode; + const isWhitespace = isWhitespaceNode(childNode); + + if (isWhitespace && isLastNodeInMultiNodeList) { + return print(childPath, options, print); + } else if (isFirstNode) { + return concat([softline, print(childPath, options, print)]); + } + return print(childPath, options, print); + }, "children") + ); +} + /** * Prints a string literal with the correct surrounding quotes based on * `options.singleQuote` and the number of escaped quotes contained in @@ -416,7 +419,7 @@ function printPath(path, print) { return path.call(print, "path"); } -function getParams(path, print) { +function printParams(path, print) { const node = path.getValue(); let parts = []; @@ -430,16 +433,11 @@ function getParams(path, print) { return parts; } -function printPathParams(path, print, options) { - let parts = []; - options = Object.assign({ group: true }, options || {}); +function printPathParams(path, print) { + const printedPath = printPath(path, print); + const printedParams = printParams(path, print); - parts.push(printPath(path, print)); - parts = parts.concat(getParams(path, print)); - - if (!options.group) { - return indent(join(line, parts)); - } + const parts = [printedPath, ...printedParams]; return indent(group(join(line, parts))); } From 456041526fd82f98b67b95e1bbe3140128a6c36b Mon Sep 17 00:00:00 2001 From: Cyrille David Date: Mon, 23 Dec 2019 13:32:28 +0100 Subject: [PATCH 75/88] glimmer: Split ElementModifierStatement and MustacheStatement (#7156) --- src/language-handlebars/printer-glimmer.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/language-handlebars/printer-glimmer.js b/src/language-handlebars/printer-glimmer.js index 7dadc6be8..935378608 100644 --- a/src/language-handlebars/printer-glimmer.js +++ b/src/language-handlebars/printer-glimmer.js @@ -151,7 +151,11 @@ function print(path, options, print) { ) ]); } - case "ElementModifierStatement": + case "ElementModifierStatement": { + return group( + concat(["{{", printPathParams(path, print), softline, "}}"]) + ); + } case "MustacheStatement": { const p = path.getParentNode(0); const isParentConcat = p && p.type === "ConcatStatement"; From f280cc13b5afdc69c2d639072561ed90fe2a3518 Mon Sep 17 00:00:00 2001 From: Ahmad Al Maaz Date: Mon, 23 Dec 2019 17:32:44 +0300 Subject: [PATCH 76/88] Fixed ALE installation instruction (#7166) * Fixed ALE installation instruction Since the author of the Vim plugin ALE moved the repository to an organization account, the command used to download the plugin has changed from `Plug 'w0rp/ale'` to `Plug 'dense-analysis/ale'` * Fixed ALE urls Fixed all ALE urls in this document --- docs/vim.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/vim.md b/docs/vim.md index 895a29192..54d9b74f6 100644 --- a/docs/vim.md +++ b/docs/vim.md @@ -3,7 +3,7 @@ id: vim title: Vim Setup --- -Vim users can install either [vim-prettier](https://github.com/prettier/vim-prettier), which is Prettier specific, or [Neoformat](https://github.com/sbdchd/neoformat) or [ALE](https://github.com/w0rp/ale) which are generalized lint/format engines with support for Prettier. +Vim users can install either [vim-prettier](https://github.com/prettier/vim-prettier), which is Prettier specific, or [Neoformat](https://github.com/sbdchd/neoformat) or [ALE](https://github.com/dense-analysis/ale) which are generalized lint/format engines with support for Prettier. ## [vim-prettier](https://github.com/prettier/vim-prettier) @@ -48,17 +48,17 @@ let g:neoformat_try_formatprg = 1 Each space in prettier options should be escaped with `\`. -## [ALE](https://github.com/w0rp/ale) +## [ALE](https://github.com/dense-analysis/ale) ALE requires either Vim 8 or Neovim as ALE makes use of the asynchronous abilities that both Vim 8 and Neovim provide. The best way to install ALE is with your favorite plugin manager for Vim, such as [vim-plug](https://github.com/junegunn/vim-plug): ``` -Plug 'w0rp/ale' +Plug 'dense-analysis/ale' ``` -You can find further instructions on the [ALE repository](https://github.com/w0rp/ale#3-installation). +You can find further instructions on the [ALE repository](https://github.com/dense-analysis/ale#3-installation). ALE will try to use Prettier installed locally before looking for a global installation. @@ -71,7 +71,7 @@ let g:ale_fixers = { \} ``` -ALE supports both _linters_ and _fixers_. If you don't specify which _linters_ to run, **all available tools for all supported languages will be run**, and you might get a correctly formatted file with a bunch of lint errors. To disable this behavior you can tell ALE to run only linters you've explicitly configured (more info in the [FAQ](https://github.com/w0rp/ale/blob/ed8104b6ab10f63c78e49b60d2468ae2656250e9/README.md#faq-disable-linters)): +ALE supports both _linters_ and _fixers_. If you don't specify which _linters_ to run, **all available tools for all supported languages will be run**, and you might get a correctly formatted file with a bunch of lint errors. To disable this behavior you can tell ALE to run only linters you've explicitly configured (more info in the [FAQ](https://github.com/dense-analysis/ale/blob/ed8104b6ab10f63c78e49b60d2468ae2656250e9/README.md#faq-disable-linters)): ``` let g:ale_linters_explicit = 1 From 07c6deea7d31f2deb00ad01401305baf6c9082b1 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 30 Dec 2019 11:17:19 +0100 Subject: [PATCH 77/88] Bump webpack from 4.41.4 to 4.41.5 in /website (#7206) Bumps [webpack](https://github.com/webpack/webpack) from 4.41.4 to 4.41.5. - [Release notes](https://github.com/webpack/webpack/releases) - [Commits](https://github.com/webpack/webpack/compare/v4.41.4...v4.41.5) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- website/package.json | 2 +- website/yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/website/package.json b/website/package.json index b34efb31e..e55b15381 100644 --- a/website/package.json +++ b/website/package.json @@ -27,7 +27,7 @@ "docusaurus": "1.14.3", "js-yaml": "3.13.1", "svgo": "1.3.2", - "webpack": "4.41.4", + "webpack": "4.41.5", "webpack-cli": "3.3.10" } } diff --git a/website/yarn.lock b/website/yarn.lock index db8d09d30..488e77adf 100644 --- a/website/yarn.lock +++ b/website/yarn.lock @@ -7713,10 +7713,10 @@ webpack-sources@^1.4.0, webpack-sources@^1.4.1: source-list-map "^2.0.0" source-map "~0.6.1" -webpack@4.41.4: - version "4.41.4" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.41.4.tgz#4bec4125224bdf50efa8be6226c19047599cd034" - integrity sha512-Lc+2uB6NjpCWsHI3trkoISOI64h9QYIXenbEWj3bn3oyjfB1lEBXjWAfAyY2sM0rZn41oD5V91OLwKRwS6Wp8Q== +webpack@4.41.5: + version "4.41.5" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.41.5.tgz#3210f1886bce5310e62bb97204d18c263341b77c" + integrity sha512-wp0Co4vpyumnp3KlkmpM5LWuzvZYayDwM2n17EHFr4qxBBbRokC7DJawPJC7TfSFZ9HZ6GsdH40EBj4UV0nmpw== dependencies: "@webassemblyjs/ast" "1.8.5" "@webassemblyjs/helper-module-context" "1.8.5" From 9c2847854819370d6f6146f99e718e18c7bea996 Mon Sep 17 00:00:00 2001 From: Daiki Ihara Date: Mon, 30 Dec 2019 20:02:32 +0900 Subject: [PATCH 78/88] add test for ugly array key format (#7205) --- .../__snapshots__/jsfmt.spec.js.snap | 20 +++++++++++++++++++ tests/typescript_array/key.ts | 4 ++++ 2 files changed, 24 insertions(+) create mode 100644 tests/typescript_array/key.ts diff --git a/tests/typescript_array/__snapshots__/jsfmt.spec.js.snap b/tests/typescript_array/__snapshots__/jsfmt.spec.js.snap index edae99840..4001682f7 100644 --- a/tests/typescript_array/__snapshots__/jsfmt.spec.js.snap +++ b/tests/typescript_array/__snapshots__/jsfmt.spec.js.snap @@ -27,3 +27,23 @@ export class ViewTokensChangedEvent { ================================================================================ `; + +exports[`key.ts 1`] = ` +====================================options===================================== +parsers: ["typescript"] +printWidth: 80 + | printWidth +=====================================input====================================== +const subtractDuration = moment.duration( + subtractMap[interval][0], + subtractMap[interval][1] as unitOfTime.DurationConstructor +); + +=====================================output===================================== +const subtractDuration = moment.duration( + subtractMap[interval][0], + subtractMap[interval][1] as unitOfTime.DurationConstructor +); + +================================================================================ +`; diff --git a/tests/typescript_array/key.ts b/tests/typescript_array/key.ts new file mode 100644 index 000000000..c3ad9227f --- /dev/null +++ b/tests/typescript_array/key.ts @@ -0,0 +1,4 @@ +const subtractDuration = moment.duration( + subtractMap[interval][0], + subtractMap[interval][1] as unitOfTime.DurationConstructor +); From cffdd1d4f9a3e9a2b1846ce9e9bb9338dfcbfa45 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Thu, 2 Jan 2020 08:26:51 +0100 Subject: [PATCH 79/88] Bump codemirror from 5.50.0 to 5.50.2 in /website (#7214) Bumps [codemirror](https://github.com/codemirror/CodeMirror) from 5.50.0 to 5.50.2. - [Release notes](https://github.com/codemirror/CodeMirror/releases) - [Changelog](https://github.com/codemirror/CodeMirror/blob/master/CHANGELOG.md) - [Commits](https://github.com/codemirror/CodeMirror/compare/5.50.0...5.50.2) Signed-off-by: dependabot-preview[bot] Co-authored-by: null <27856297+dependabot-preview[bot]@users.noreply.github.com> --- website/package.json | 2 +- website/yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/website/package.json b/website/package.json index e55b15381..20e23510f 100644 --- a/website/package.json +++ b/website/package.json @@ -10,7 +10,7 @@ }, "dependencies": { "clipboard": "2.0.4", - "codemirror": "5.50.0", + "codemirror": "5.50.2", "codemirror-graphql": "0.11.2", "lodash.groupby": "4.6.0", "lz-string": "1.4.4", diff --git a/website/yarn.lock b/website/yarn.lock index 488e77adf..f4f3988d0 100644 --- a/website/yarn.lock +++ b/website/yarn.lock @@ -1857,10 +1857,10 @@ codemirror-graphql@0.11.2: graphql-language-service-interface "^2.3.0" graphql-language-service-parser "^1.5.0" -codemirror@5.50.0: - version "5.50.0" - resolved "https://registry.yarnpkg.com/codemirror/-/codemirror-5.50.0.tgz#aeacd18f225735b17cbab98908edace87fedcdab" - integrity sha512-32LAmGcBNhKtJP4WGgkcaCVQDyChAyaWA6jasg778ziZzo3PWBuhpAQIJMO8//Id45RoaLyXjuhcRUBoS8Vg+Q== +codemirror@5.50.2: + version "5.50.2" + resolved "https://registry.yarnpkg.com/codemirror/-/codemirror-5.50.2.tgz#32ddfe2b50193fcf573d8141c4a31d267c92b4a3" + integrity sha512-PPjUsC1oXSM86lunKrw609P1oM0Wu8z9rqzjbeyBYCcx44VL41aUpccdOf1PfAZtTONlmN3sT3p2etLNYa1OGg== coffee-script@^1.12.4: version "1.12.7" From 47ece13d7830be1e948c53cec54e39a6d4d5b988 Mon Sep 17 00:00:00 2001 From: Daiki Ihara Date: Thu, 2 Jan 2020 21:02:17 +0900 Subject: [PATCH 80/88] =?UTF-8?q?Markdown:=20fix=20HTML=20formatting=20bro?= =?UTF-8?q?ken=20if=20the=20beginning=20tag=20start=E2=80=A6=20(#7181)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * fix markdown formatting broken if the beginning html tag starts after a list item * add test for beginning-tag-after-a-list-item in markdown_html * add changelog_unreleased of pr-7181 * fix test of ast breaking for beginning-tag-after-a-list-item * update changelog_unreleased pr-7181 * fix changelog_unreleased * fix beginning tag starts after a list item in markdown * add test case for beginning-tag-after-a-list-item * update changelog_unreleased --- changelog_unreleased/markdown/pr-7181.md | 37 ++++++++++++++++ src/language-markdown/printer-markdown.js | 23 +++++++++- .../__snapshots__/jsfmt.spec.js.snap | 43 +++++++++++++++++++ .../beginning-tag-after-a-list-item.md | 15 +++++++ 4 files changed, 117 insertions(+), 1 deletion(-) create mode 100644 changelog_unreleased/markdown/pr-7181.md create mode 100644 tests/markdown_html/beginning-tag-after-a-list-item.md diff --git a/changelog_unreleased/markdown/pr-7181.md b/changelog_unreleased/markdown/pr-7181.md new file mode 100644 index 000000000..1aecd8624 --- /dev/null +++ b/changelog_unreleased/markdown/pr-7181.md @@ -0,0 +1,37 @@ +#### fix HTML formatting broken if the beginning tag starts after a list item ([#7181](https://github.com/prettier/prettier/pull/7181) by [@sasurau4](https://github.com/sasurau4)) + +Previously, when Prettier format the html tag that starts after a list item, it would insert indent and break the relationship of open and close tag. Now, Prettier no longer change anything. + + +```md + +- A list item. +
Summary +

+ +- A list item. + +

+
+ + +- A list item. + +
Summary +

+ +- A list item. + +

+
+ + +- A list item. +
Summary +

+ +- A list item. + +

+
+``` diff --git a/src/language-markdown/printer-markdown.js b/src/language-markdown/printer-markdown.js index dc588f1ce..d34b829af 100644 --- a/src/language-markdown/printer-markdown.js +++ b/src/language-markdown/printer-markdown.js @@ -254,6 +254,19 @@ function genericPrint(path, options, print) { return printChildren(path, options, print, { processor: (childPath, index) => { const prefix = getPrefix(); + const childNode = childPath.getValue(); + + if ( + childNode.children.length === 2 && + childNode.children[1].type === "html" && + childNode.children[1].position.indent.every(indent => indent === 1) + ) { + return concat([ + prefix, + printListItem(childPath, options, print, prefix) + ]); + } + return concat([ prefix, align( @@ -794,13 +807,21 @@ function shouldPrePrintDoubleHardline(node, data) { data.prevNode.type === "html" && data.prevNode.position.end.line + 1 === node.position.start.line; + const isHtmlDirectAfterListItem = + node.type === "html" && + data.parentNode.type === "listItem" && + data.prevNode && + data.prevNode.type === "paragraph" && + data.prevNode.position.end.line + 1 === node.position.start.line; + return ( isPrevNodeLooseListItem || !( isSiblingNode || isInTightListItem || isPrevNodePrettierIgnore || - isBlockHtmlWithoutBlankLineBetweenPrevHtml + isBlockHtmlWithoutBlankLineBetweenPrevHtml || + isHtmlDirectAfterListItem ) ); } diff --git a/tests/markdown_html/__snapshots__/jsfmt.spec.js.snap b/tests/markdown_html/__snapshots__/jsfmt.spec.js.snap index 1cd0cef08..492ff792a 100644 --- a/tests/markdown_html/__snapshots__/jsfmt.spec.js.snap +++ b/tests/markdown_html/__snapshots__/jsfmt.spec.js.snap @@ -1,5 +1,48 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP +exports[`beginning-tag-after-a-list-item.md 1`] = ` +====================================options===================================== +parsers: ["markdown"] +printWidth: 80 +proseWrap: "always" + | printWidth +=====================================input====================================== +- A list item. +
Summary +

+ +- A list item. + +

+
+ +- A list item. +
+ +

quoted sentence1
+quoted sentence2

+
+ +=====================================output===================================== +- A list item. +
Summary +

+ +- A list item. + +

+
+ +- A list item. +
+ +

quoted sentence1
+quoted sentence2

+
+ +================================================================================ +`; + exports[`blank-line-between-htmls.md 1`] = ` ====================================options===================================== parsers: ["markdown"] diff --git a/tests/markdown_html/beginning-tag-after-a-list-item.md b/tests/markdown_html/beginning-tag-after-a-list-item.md new file mode 100644 index 000000000..43b7b8f80 --- /dev/null +++ b/tests/markdown_html/beginning-tag-after-a-list-item.md @@ -0,0 +1,15 @@ +- A list item. +
Summary +

+ +- A list item. + +

+
+ +- A list item. +
+ +

quoted sentence1
+quoted sentence2

+
From c1b6e1c4011185a4c88d0d80d2ef57fc1072a476 Mon Sep 17 00:00:00 2001 From: Cyrille David Date: Sun, 5 Jan 2020 17:36:34 +0100 Subject: [PATCH 81/88] handlebars: Improve MustacheStatement printing (#7157) * Address https://github.com/prettier/prettier/pull/7051#discussion_r351877770 * Add isParentOfType helper fun * Add CHANGELOG * Fix a typo * CHANGELOG: Remove --print-width option * Add tests --- changelog_unreleased/handlebars/pr-7157.md | 20 +++++ src/language-handlebars/printer-glimmer.js | 23 ++++-- .../__snapshots__/jsfmt.spec.js.snap | 76 ++++++++++++++++++- .../handlebars-mustache-statement/basics.hbs | 14 ++++ .../__snapshots__/jsfmt.spec.js.snap | 14 ++-- .../__snapshots__/jsfmt.spec.js.snap | 3 +- 6 files changed, 134 insertions(+), 16 deletions(-) create mode 100644 changelog_unreleased/handlebars/pr-7157.md diff --git a/changelog_unreleased/handlebars/pr-7157.md b/changelog_unreleased/handlebars/pr-7157.md new file mode 100644 index 000000000..6da450df9 --- /dev/null +++ b/changelog_unreleased/handlebars/pr-7157.md @@ -0,0 +1,20 @@ +#### handlebars: Improve MustacheStatement printing ([#7157](https://github.com/prettier/prettier/pull/7157) by [@dcyriller](https://github.com/dcyriller)) + + +```hbs +{{!-- input --}} +

Hi here is your name, as it will be displayed {{firstName}} {{lastName}} , welcome!

+ +{{!-- stable --}} +

+ Hi here is your name, as it will be displayed {{firstName}} {{lastName + }} , welcome! +

+ +{{!-- master --}} +

+ Hi here is your name, as it will be displayed {{firstName}} {{ + lastName + }} , welcome! +

+``` diff --git a/src/language-handlebars/printer-glimmer.js b/src/language-handlebars/printer-glimmer.js index 935378608..e34789e51 100644 --- a/src/language-handlebars/printer-glimmer.js +++ b/src/language-handlebars/printer-glimmer.js @@ -157,21 +157,23 @@ function print(path, options, print) { ); } case "MustacheStatement": { - const p = path.getParentNode(0); - const isParentConcat = p && p.type === "ConcatStatement"; - const isParentAttr = p && p.type === "AttrNode"; const isEscaped = n.escaped === false; const opening = isEscaped ? "{{{" : "{{"; const closing = isEscaped ? "}}}" : "}}"; - const inner = [printPathParams(path, print)]; - if (!isParentConcat && !isParentAttr) { - inner.push(softline); - } + const leading = + isParentOfType(path, "AttrNode") || + isParentOfType(path, "ConcatStatement") || + isParentOfType(path, "ElementNode") + ? [opening, indent(softline)] + : [opening]; - return group(concat([opening, ...inner, closing])); + return group( + concat([...leading, printPathParams(path, print), softline, closing]) + ); } + case "SubExpression": { const params = printParams(path, print); const printedParams = @@ -474,6 +476,11 @@ function isWhitespaceNode(node) { return node.type === "TextNode" && !/\S/.test(node.chars); } +function isParentOfType(path, nodeType) { + const p = path.getParentNode(0); + return p && p.type === nodeType; +} + function getPreviousNode(path) { const node = path.getValue(); const parentNode = path.getParentNode(0); diff --git a/tests/handlebars-mustache-statement/__snapshots__/jsfmt.spec.js.snap b/tests/handlebars-mustache-statement/__snapshots__/jsfmt.spec.js.snap index 22d286039..0b185ed6a 100644 --- a/tests/handlebars-mustache-statement/__snapshots__/jsfmt.spec.js.snap +++ b/tests/handlebars-mustache-statement/__snapshots__/jsfmt.spec.js.snap @@ -9,9 +9,45 @@ printWidth: 80 + + + + =====================================output===================================== + + + + ================================================================================ `; @@ -26,9 +62,45 @@ singleQuote: true + + + + =====================================output===================================== + + + + ================================================================================ `; diff --git a/tests/handlebars-mustache-statement/basics.hbs b/tests/handlebars-mustache-statement/basics.hbs index 6a4c78680..db7834d51 100644 --- a/tests/handlebars-mustache-statement/basics.hbs +++ b/tests/handlebars-mustache-statement/basics.hbs @@ -1,2 +1,16 @@ + + + + diff --git a/tests/handlebars-text-wrap/__snapshots__/jsfmt.spec.js.snap b/tests/handlebars-text-wrap/__snapshots__/jsfmt.spec.js.snap index 4fc3c28e9..c41e5e6c9 100644 --- a/tests/handlebars-text-wrap/__snapshots__/jsfmt.spec.js.snap +++ b/tests/handlebars-text-wrap/__snapshots__/jsfmt.spec.js.snap @@ -231,7 +231,8 @@ printWidth: 80
- before {{stuff}} after {{stuff}} after {{stuff}} after {{stuff}} after {{stuff + before {{stuff}} after {{stuff}} after {{stuff}} after {{stuff}} after {{ + stuff }} after {{stuff}} {{stuff}} {{stuff}} after {{stuff}} after
@@ -320,9 +321,11 @@ printWidth: 80 {{! this really should split across lines }}
- before{{stuff}}after{{stuff}}after{{stuff}}after{{stuff}}after{{stuff - }}after{{stuff}}after{{stuff}}after{{stuff}}after{{stuff}}after{{stuff - }}after{{stuff}}after{{stuff}}after{{stuff}}after{{stuff}}after + before{{stuff}}after{{stuff}}after{{stuff}}after{{stuff}}after{{stuff}}after{{ + stuff + }}after{{stuff}}after{{stuff}}after{{stuff}}after{{stuff}}after{{ + stuff + }}after{{stuff}}after{{stuff}}after{{stuff}}after
{{! solitary whitespace }} @@ -406,7 +409,8 @@ printWidth: 80 {{! expression does not break }}
- texty text text text text text text text text text text text {{this.props.type + texty text text text text text text text text text text text {{ + this.props.type }}
diff --git a/tests/handlebars-whitespace/__snapshots__/jsfmt.spec.js.snap b/tests/handlebars-whitespace/__snapshots__/jsfmt.spec.js.snap index 7f21fe231..f84a27711 100644 --- a/tests/handlebars-whitespace/__snapshots__/jsfmt.spec.js.snap +++ b/tests/handlebars-whitespace/__snapshots__/jsfmt.spec.js.snap @@ -118,7 +118,8 @@ hey =====================================output=====================================

- Hi {{firstName}} {{lastName + Hi {{firstName}} {{ + lastName }} , welcome!

{{#component propA}} From 7537f21b1b2a0c1b4e10367d85ad6f092da2b899 Mon Sep 17 00:00:00 2001 From: Christian Boehlke Date: Sun, 5 Jan 2020 17:37:26 +0100 Subject: [PATCH 82/88] docs: Fix broken links (#7222) --- docs/cli.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/cli.md b/docs/cli.md index 5dab730fc..86f5feced 100644 --- a/docs/cli.md +++ b/docs/cli.md @@ -51,7 +51,7 @@ Human-friendly status messages help project contributors react on possible probl To minimise the number of times `prettier --check` finds unformatted files, you may be interested in configuring a [pre-commit hook](precommit.md) in your repo. Applying this practice will minimise the number of times the CI fails because of code formatting problems. -If you need to pipe the list of unformatted files to another command, you can use [`--list-different`](cli.md#list-different) flag instead of `--check`. +If you need to pipe the list of unformatted files to another command, you can use [`--list-different`](cli.md#--list-different) flag instead of `--check`. ### Exit codes @@ -112,7 +112,7 @@ Another useful flag is `--list-different` (or `-l`) which prints the filenames o prettier --single-quote --list-different "src/**/*.js" ``` -You can also use [`--check`](cli.md#check) flag, which works the same way as `--list-different`, but also prints a human-friendly summary message to stdout. +You can also use [`--check`](cli.md#--check) flag, which works the same way as `--list-different`, but also prints a human-friendly summary message to stdout. ## `--no-config` From bda063289047bc78e2d57bda58213d0165ba1392 Mon Sep 17 00:00:00 2001 From: Armano Date: Mon, 6 Jan 2020 10:18:10 +0100 Subject: [PATCH 83/88] fix: comments for typescript function like nodes (#7144) * test: add test cases for method_types comments * fix: improve handling comments withing typescript function like nodes * fix: correct position of trailing comments in TSMethodSignature * fix: allow to use comments on TSAbstractMethodDefinition and fix TSDeclareFunction * refactor: move real function node type check to function * refactor: invert if in handleTSFunctionTrailingComments * refactor: move isRealFunctionLikeNode into end of file * chore: add changelog * chore: update changelog * chore: update changelog * make changelog more concise Co-authored-by: Georgii Dolzhykov --- changelog_unreleased/typescript/pr-7144.md | 82 ++++++++++++++++ src/language-js/comments.js | 72 ++++++++++---- .../__snapshots__/jsfmt.spec.js.snap | 96 +++++++++++++++++++ tests/typescript_comments/declare_function.ts | 2 + tests/typescript_comments/method_types.ts | 39 ++++++++ tests/typescript_comments/methods.ts | 1 + 6 files changed, 274 insertions(+), 18 deletions(-) create mode 100644 changelog_unreleased/typescript/pr-7144.md create mode 100644 tests/typescript_comments/method_types.ts diff --git a/changelog_unreleased/typescript/pr-7144.md b/changelog_unreleased/typescript/pr-7144.md new file mode 100644 index 000000000..73859bfb2 --- /dev/null +++ b/changelog_unreleased/typescript/pr-7144.md @@ -0,0 +1,82 @@ +#### Fix formatting comments for function-like nodes ([#6901](https://github.com/prettier/prettier/pull/7144) by [@armano2](https://github.com/armano2)) + + +```ts +// Input +interface foo1 { + bar1/* foo */ (/* baz */) // bat + bar2/* foo */ ? /* bar */ (/* baz */) /* bat */; + bar3/* foo */ (/* baz */) /* bat */ + bar4/* foo */ ? /* bar */ (bar: /* baz */ string): /* bat */ string; + /* foo */ (/* bar */): /* baz */ string; + /* foo */ (bar: /* bar */ string): /* baz */ string; + /* foo */ new /* bar */ (a: /* baz */ string): /* bat */ string + /* foo */ new /* bar */ (/* baz */): /* bat */ string +} + +type foo7 = /* foo */ (/* bar */) /* baz */ => void +type foo8 = /* foo */ (a: /* bar */ string) /* baz */ => void +let foo9: new /* foo */ (/* bar */) /* baz */ => string; +let foo10: new /* foo */ (a: /* bar */ string) /* baz */ => string; + +// Prettier stable +interface foo1 { + bar1 /* foo */ /* baz */(); // bat + bar2 /* foo */ /* bar */ /* baz */ /* bat */?(); + bar3 /* foo */ /* baz */() /* bat */; + bar4 /* foo */?(/* bar */ bar: /* baz */ string): /* bat */ string; + /* foo */ (): /* bar */ /* baz */ string; + /* foo */ (bar: /* bar */ string): /* baz */ string; + /* foo */ new (/* bar */ a: /* baz */ string): /* bat */ string; + /* foo */ new (): /* bar */ /* baz */ /* bat */ string; +} + +type foo7 = /* foo */ () => /* bar */ /* baz */ void; +type foo8 = /* foo */ (a: /* bar */ string) => /* baz */ void; +let foo9: new () => /* foo */ /* bar */ /* baz */ string; +let foo10: new (/* foo */ a: /* bar */ string) => /* baz */ string; + +// Prettier master +interface foo1 { + bar1 /* foo */(/* baz */); // bat + bar2 /* foo */ /* bar */?(/* baz */) /* bat */; + bar3 /* foo */(/* baz */) /* bat */; + bar4 /* foo */?(/* bar */ bar: /* baz */ string): /* bat */ string; + /* foo */ (/* bar */): /* baz */ string; + /* foo */ (bar: /* bar */ string): /* baz */ string; + /* foo */ new (/* bar */ a: /* baz */ string): /* bat */ string; + /* foo */ new (/* baz */): /* bar */ /* bat */ string; +} + +type foo7 = /* foo */ (/* bar */) => /* baz */ void; +type foo8 = /* foo */ (a: /* bar */ string) => /* baz */ void; +let foo9: new (/* bar */) => /* foo */ /* baz */ string; +let foo10: new (/* foo */ a: /* bar */ string) => /* baz */ string; +``` + +```ts +// Input +abstract class Test { + abstract foo12 /* foo */ (a: /* bar */ string): /* baz */ void + abstract foo13 /* foo */ (/* bar */) /* baz */ +} + +// Prettier stable +Error: Comment "foo" was not printed. Please report this error! + at https://prettier.io/lib/standalone.js:15543:15 + at Array.forEach () + at ensureAllCommentsPrinted (https://prettier.io/lib/standalone.js:15541:17) + at coreFormat (https://prettier.io/lib/standalone.js:15592:5) + at format (https://prettier.io/lib/standalone.js:15832:75) + at formatWithCursor (https://prettier.io/lib/standalone.js:15848:14) + at https://prettier.io/lib/standalone.js:31794:17 + at Object.format (https://prettier.io/lib/standalone.js:31802:14) + at formatCode (https://prettier.io/worker.js:234:21) + at handleMessage (https://prettier.io/worker.js:185:18) + +// Prettier master +abstract class Test { + abstract foo12 /* foo */(a: /* bar */ string): /* baz */ void; + abstract foo13 /* foo */(/* bar */); /* baz */ +} +``` diff --git a/src/language-js/comments.js b/src/language-js/comments.js index 60c8848e3..21350f286 100644 --- a/src/language-js/comments.js +++ b/src/language-js/comments.js @@ -174,7 +174,14 @@ function handleRemainingComment(comment, text, options, ast, isLastComment) { followingNode, comment ) || - handleBreakAndContinueStatementComments(enclosingNode, comment) + handleBreakAndContinueStatementComments(enclosingNode, comment) || + handleTSFunctionTrailingComments( + text, + enclosingNode, + followingNode, + comment, + options + ) ) { return true; } @@ -460,7 +467,8 @@ function handleMethodNameComments( enclosingNode && precedingNode && (enclosingNode.type === "Property" || - enclosingNode.type === "MethodDefinition") && + enclosingNode.type === "MethodDefinition" || + enclosingNode.type === "TSAbstractMethodDefinition") && precedingNode.type === "Identifier" && enclosingNode.key === precedingNode && // special Property case: { key: /*comment*/(value) }; @@ -559,11 +567,7 @@ function handleCommentInEmptyParens(text, enclosingNode, comment, options) { // i.e. a function without any argument. if ( enclosingNode && - (((enclosingNode.type === "FunctionDeclaration" || - enclosingNode.type === "FunctionExpression" || - enclosingNode.type === "ArrowFunctionExpression" || - enclosingNode.type === "ClassMethod" || - enclosingNode.type === "ObjectMethod") && + ((isRealFunctionLikeNode(enclosingNode) && enclosingNode.params.length === 0) || ((enclosingNode.type === "CallExpression" || enclosingNode.type === "OptionalCallExpression" || @@ -611,17 +615,7 @@ function handleLastFunctionArgComments( (precedingNode.type === "Identifier" || precedingNode.type === "AssignmentPattern") && enclosingNode && - (enclosingNode.type === "ArrowFunctionExpression" || - enclosingNode.type === "FunctionExpression" || - enclosingNode.type === "FunctionDeclaration" || - enclosingNode.type === "ObjectMethod" || - enclosingNode.type === "ClassMethod" || - enclosingNode.type === "TSDeclareFunction" || - enclosingNode.type === "TSCallSignatureDeclaration" || - enclosingNode.type === "TSConstructSignatureDeclaration" || - enclosingNode.type === "TSMethodSignature" || - enclosingNode.type === "TSConstructorType" || - enclosingNode.type === "TSFunctionType") && + isRealFunctionLikeNode(enclosingNode) && privateUtil.getNextNonSpaceNonCommentCharacter( text, comment, @@ -831,6 +825,31 @@ function handleVariableDeclaratorComments( return false; } +function handleTSFunctionTrailingComments( + text, + enclosingNode, + followingNode, + comment, + options +) { + if ( + !followingNode && + enclosingNode && + (enclosingNode.type === "TSMethodSignature" || + enclosingNode.type === "TSDeclareFunction" || + enclosingNode.type === "TSAbstractMethodDefinition") && + privateUtil.getNextNonSpaceNonCommentCharacter( + text, + comment, + options.locEnd + ) === ";" + ) { + addTrailingComment(enclosingNode, comment); + return true; + } + return false; +} + function handleTSMappedTypeComments( text, enclosingNode, @@ -877,6 +896,23 @@ function hasLeadingComment(node, fn = () => true) { return false; } +function isRealFunctionLikeNode(node) { + return ( + node.type === "ArrowFunctionExpression" || + node.type === "FunctionExpression" || + node.type === "FunctionDeclaration" || + node.type === "ObjectMethod" || + node.type === "ClassMethod" || + node.type === "TSDeclareFunction" || + node.type === "TSCallSignatureDeclaration" || + node.type === "TSConstructSignatureDeclaration" || + node.type === "TSConstructSignatureDeclaration" || + node.type === "TSMethodSignature" || + node.type === "TSConstructorType" || + node.type === "TSFunctionType" + ); +} + module.exports = { handleOwnLineComment, handleEndOfLineComment, diff --git a/tests/typescript_comments/__snapshots__/jsfmt.spec.js.snap b/tests/typescript_comments/__snapshots__/jsfmt.spec.js.snap index 876484e6c..f227b7280 100644 --- a/tests/typescript_comments/__snapshots__/jsfmt.spec.js.snap +++ b/tests/typescript_comments/__snapshots__/jsfmt.spec.js.snap @@ -101,12 +101,15 @@ declare function fn( // TODO this is a very very very very long comment that makes it go > 80 columns ): number; +declare function /* foo */ f( /* baz */ a /* taz */) /* bar */; =====================================output===================================== declare function fn( currentRequest: { a: number } // TODO this is a very very very very long comment that makes it go > 80 columns ): number; +declare function /* foo */ f(/* baz */ a /* taz */); /* bar */ + ================================================================================ `; @@ -457,6 +460,96 @@ type M = { [m in M /* commentG */]: string }; ================================================================================ `; +exports[`method_types.ts 1`] = ` +====================================options===================================== +parsers: ["typescript"] +printWidth: 80 + | printWidth +=====================================input====================================== +interface foo1 { + bar3/* foo */ (/* baz */) // bat + bar/* foo */ ? /* bar */ (/* baz */) /* bat */; + bar2/* foo */ (/* baz */) /* bat */ +} + +interface foo2 { + bar/* foo */ ? /* bar */ (bar: /* baz */ string): /* bat */ string; +} + +interface foo3 { + /* foo */ (/* bar */): /* baz */ string; +} + +interface foo4 { + /* foo */ (bar: /* bar */ string): /* baz */ string; +} + +interface foo5 { + /* foo */ new /* bar */ (a: /* baz */ string): /* bat */ string +} + +interface foo6 { + /* foo */ new /* bar */ (/* baz */): /* bat */ string +} + +type foo7 = /* foo */ (/* bar */) /* baz */ => void + +type foo8 = /* foo */ (a: /* bar */ string) /* baz */ => void + +let foo9: new /* foo */ (/* bar */) /* baz */ => string; + +let foo10: new /* foo */ (a: /* bar */ string) /* baz */ => string; + +abstract class Test { + abstract foo12 /* foo */ (a: /* bar */ string): /* baz */ void + + abstract foo13 /* foo */ (/* bar */) /* baz */ +} + +=====================================output===================================== +interface foo1 { + bar3 /* foo */(/* baz */); // bat + bar /* foo */ /* bar */?(/* baz */) /* bat */; + bar2 /* foo */(/* baz */) /* bat */; +} + +interface foo2 { + bar /* foo */?(/* bar */ bar: /* baz */ string): /* bat */ string; +} + +interface foo3 { + /* foo */ (/* bar */): /* baz */ string; +} + +interface foo4 { + /* foo */ (bar: /* bar */ string): /* baz */ string; +} + +interface foo5 { + /* foo */ new (/* bar */ a: /* baz */ string): /* bat */ string; +} + +interface foo6 { + /* foo */ new (/* baz */): /* bar */ /* bat */ string; +} + +type foo7 = /* foo */ (/* bar */) => /* baz */ void; + +type foo8 = /* foo */ (a: /* bar */ string) => /* baz */ void; + +let foo9: new (/* bar */) => /* foo */ /* baz */ string; + +let foo10: new (/* foo */ a: /* bar */ string) => /* baz */ string; + +abstract class Test { + abstract foo12 /* foo */(a: /* bar */ string): /* baz */ void; + + abstract foo13 /* foo */(/* bar */); /* baz */ +} + +================================================================================ +`; + exports[`methods.ts 1`] = ` ====================================options===================================== parsers: ["typescript"] @@ -508,6 +601,7 @@ export class Point { */ mismatchedIndentation() {} + inline /* foo*/ (/* bar */) /* baz */ {} } =====================================output===================================== @@ -555,6 +649,8 @@ export class Point { * Four */ mismatchedIndentation() {} + + inline /* foo*/(/* bar */) /* baz */ {} } ================================================================================ diff --git a/tests/typescript_comments/declare_function.ts b/tests/typescript_comments/declare_function.ts index 6ceeb7d7f..870ce9cd8 100644 --- a/tests/typescript_comments/declare_function.ts +++ b/tests/typescript_comments/declare_function.ts @@ -2,3 +2,5 @@ declare function fn( currentRequest: {a: number}, // TODO this is a very very very very long comment that makes it go > 80 columns ): number; + +declare function /* foo */ f( /* baz */ a /* taz */) /* bar */; \ No newline at end of file diff --git a/tests/typescript_comments/method_types.ts b/tests/typescript_comments/method_types.ts new file mode 100644 index 000000000..c8ace440b --- /dev/null +++ b/tests/typescript_comments/method_types.ts @@ -0,0 +1,39 @@ +interface foo1 { + bar3/* foo */ (/* baz */) // bat + bar/* foo */ ? /* bar */ (/* baz */) /* bat */; + bar2/* foo */ (/* baz */) /* bat */ +} + +interface foo2 { + bar/* foo */ ? /* bar */ (bar: /* baz */ string): /* bat */ string; +} + +interface foo3 { + /* foo */ (/* bar */): /* baz */ string; +} + +interface foo4 { + /* foo */ (bar: /* bar */ string): /* baz */ string; +} + +interface foo5 { + /* foo */ new /* bar */ (a: /* baz */ string): /* bat */ string +} + +interface foo6 { + /* foo */ new /* bar */ (/* baz */): /* bat */ string +} + +type foo7 = /* foo */ (/* bar */) /* baz */ => void + +type foo8 = /* foo */ (a: /* bar */ string) /* baz */ => void + +let foo9: new /* foo */ (/* bar */) /* baz */ => string; + +let foo10: new /* foo */ (a: /* bar */ string) /* baz */ => string; + +abstract class Test { + abstract foo12 /* foo */ (a: /* bar */ string): /* baz */ void + + abstract foo13 /* foo */ (/* bar */) /* baz */ +} diff --git a/tests/typescript_comments/methods.ts b/tests/typescript_comments/methods.ts index a6c61c1f8..b48947c79 100644 --- a/tests/typescript_comments/methods.ts +++ b/tests/typescript_comments/methods.ts @@ -43,4 +43,5 @@ export class Point { */ mismatchedIndentation() {} + inline /* foo*/ (/* bar */) /* baz */ {} } From 1a18cf7fce3affa4a0db908ef38ac080b1162214 Mon Sep 17 00:00:00 2001 From: Tim Kendall Date: Mon, 6 Jan 2020 10:20:25 -0800 Subject: [PATCH 84/88] =?UTF-8?q?GraphQL:=20Support=20repeatable=20directi?= =?UTF-8?q?ve=20definition=20printing=20(clos=E2=80=A6=20(#7227)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/language-graphql/printer-graphql.js | 1 + tests/graphql_directive_decl/__snapshots__/jsfmt.spec.js.snap | 4 ++++ tests/graphql_directive_decl/directive_decl.graphql | 2 ++ 3 files changed, 7 insertions(+) diff --git a/src/language-graphql/printer-graphql.js b/src/language-graphql/printer-graphql.js index 70f0df48a..9ee35aa48 100644 --- a/src/language-graphql/printer-graphql.js +++ b/src/language-graphql/printer-graphql.js @@ -380,6 +380,7 @@ function genericPrint(path, options, print) { ]) ) : "", + n.repeatable ? " repeatable" : "", concat([" on ", join(" | ", path.map(print, "locations"))]) ]); } diff --git a/tests/graphql_directive_decl/__snapshots__/jsfmt.spec.js.snap b/tests/graphql_directive_decl/__snapshots__/jsfmt.spec.js.snap index 868f52f0f..15439bb2b 100644 --- a/tests/graphql_directive_decl/__snapshots__/jsfmt.spec.js.snap +++ b/tests/graphql_directive_decl/__snapshots__/jsfmt.spec.js.snap @@ -12,8 +12,10 @@ directive @a(as: String = 1) on QUERY directive @a(as: String, b: Int!) on QUERY directive @a(as: String! = 1 @deprecated) on QUERY directive @a(as: String! = 1 @deprecated) on QUERY | MUTATION +directive @a(as: String! = 1 @deprecated) repeatable on QUERY | MUTATION directive @a on QUERY +directive @a repeatable on QUERY directive @a(as: String) on QUERY @@ -30,8 +32,10 @@ directive @a(as: String = 1) on QUERY directive @a(as: String, b: Int!) on QUERY directive @a(as: String! = 1 @deprecated) on QUERY directive @a(as: String! = 1 @deprecated) on QUERY | MUTATION +directive @a(as: String! = 1 @deprecated) repeatable on QUERY | MUTATION directive @a on QUERY +directive @a repeatable on QUERY directive @a(as: String) on QUERY diff --git a/tests/graphql_directive_decl/directive_decl.graphql b/tests/graphql_directive_decl/directive_decl.graphql index 531c6112f..318e0552b 100644 --- a/tests/graphql_directive_decl/directive_decl.graphql +++ b/tests/graphql_directive_decl/directive_decl.graphql @@ -4,8 +4,10 @@ directive @a(as: String = 1) on QUERY directive @a(as: String, b: Int!) on QUERY directive @a(as: String! = 1 @deprecated) on QUERY directive @a(as: String! = 1 @deprecated) on QUERY | MUTATION +directive @a(as: String! = 1 @deprecated) repeatable on QUERY | MUTATION directive @a on QUERY +directive @a repeatable on QUERY directive @a(as: String) on QUERY From 024f51e5f8cdffc959dc29c3e4cbddd69058a0f3 Mon Sep 17 00:00:00 2001 From: Selvazhagan <38141381+selvazhagan@users.noreply.github.com> Date: Mon, 6 Jan 2020 11:00:09 -0800 Subject: [PATCH 85/88] =?UTF-8?q?Fixes=20:=20#5915=20HTML=20comments=20in?= =?UTF-8?q?=20pre=20tags=20causes=20bad=20formatting=20o=E2=80=A6=20(#5959?= =?UTF-8?q?)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- changelog_unreleased/html/pr-5959 | 24 +++++ src/language-html/utils.js | 2 + .../__snapshots__/jsfmt.spec.js.snap | 100 ++++++++++++++++++ tests/html_tags/pre.html | 9 ++ 4 files changed, 135 insertions(+) create mode 100644 changelog_unreleased/html/pr-5959 diff --git a/changelog_unreleased/html/pr-5959 b/changelog_unreleased/html/pr-5959 new file mode 100644 index 000000000..a55167123 --- /dev/null +++ b/changelog_unreleased/html/pr-5959 @@ -0,0 +1,24 @@ +#### Comments in `pre` tags caused bad formatting of following closing tag ([#5959](https://github.com/prettier/prettier/pull/5959) by [@selvazhagan](https://github.com/selvazhagan)) + + +``` + +
+
+    
+  
+ + +
+
+    
+  
+ + +
+
+    
+  
+
+``` diff --git a/src/language-html/utils.js b/src/language-html/utils.js index 0b7827312..8a9cab05c 100644 --- a/src/language-html/utils.js +++ b/src/language-html/utils.js @@ -194,6 +194,7 @@ function isLeadingSpaceSensitiveNode(node) { if ( !node.prev && (node.parent.type === "root" || + (isPreLikeNode(node) && node.parent) || isScriptLikeTag(node.parent) || !isFirstChildLeadingSpaceSensitiveCssDisplay(node.parent.cssDisplay)) ) { @@ -235,6 +236,7 @@ function isTrailingSpaceSensitiveNode(node) { if ( !node.next && (node.parent.type === "root" || + (isPreLikeNode(node) && node.parent) || isScriptLikeTag(node.parent) || !isLastChildTrailingSpaceSensitiveCssDisplay(node.parent.cssDisplay)) ) { diff --git a/tests/html_tags/__snapshots__/jsfmt.spec.js.snap b/tests/html_tags/__snapshots__/jsfmt.spec.js.snap index 41f028cc1..7b9b5127e 100644 --- a/tests/html_tags/__snapshots__/jsfmt.spec.js.snap +++ b/tests/html_tags/__snapshots__/jsfmt.spec.js.snap @@ -806,6 +806,15 @@ ___________________________
+
+

+  
+ +
+  
+
+
+ =====================================output=====================================
 --------------------------------------------------------------------------------
@@ -896,6 +905,17 @@ ___________________________
 
 
+
+

+  
+
+ +
+
+  
+
+
+ ================================================================================ `; @@ -986,6 +1006,15 @@ ___________________________
+
+

+  
+ +
+  
+
+
+ =====================================output=====================================
 --------------------------------------------------------------------------------
@@ -1100,6 +1129,17 @@ ___________________________
 
 
+
+

+  
+
+ +
+
+  
+
+
+ ================================================================================ `; @@ -1189,6 +1229,15 @@ ___________________________
+
+

+  
+ +
+  
+
+
+ =====================================output=====================================
 --------------------------------------------------------------------------------
@@ -1271,6 +1320,17 @@ ___________________________
 
 
+
+

+  
+
+ +
+
+  
+
+
+ ================================================================================ `; @@ -1362,6 +1422,15 @@ ___________________________
+
+

+  
+ +
+  
+
+
+ =====================================output=====================================
 --------------------------------------------------------------------------------
@@ -1452,6 +1521,17 @@ ___________________________
 
 
+
+

+  
+
+ +
+
+  
+
+
+ ================================================================================ `; @@ -1543,6 +1623,15 @@ ___________________________
+
+

+  
+ +
+  
+
+
+ =====================================output=====================================
 --------------------------------------------------------------------------------
@@ -1633,6 +1722,17 @@ ___________________________
 
 
+
+

+  
+
+ +
+
+  
+
+
+ ================================================================================ `; diff --git a/tests/html_tags/pre.html b/tests/html_tags/pre.html index 6307de469..05b61de54 100644 --- a/tests/html_tags/pre.html +++ b/tests/html_tags/pre.html @@ -78,3 +78,12 @@ ___________________________

 
 
+ +
+

+  
+ +
+  
+
+
From e11b6e8992946026383226c9886bc13eb7f835e3 Mon Sep 17 00:00:00 2001 From: Kohei Ueno Date: Tue, 7 Jan 2020 05:25:22 +0900 Subject: [PATCH 86/88] Fix adding unnecessary colons on Mapped Types (#7221) * fix #7174 by checking typeAnnotation existance * add changelog for pr-7174 * fix typo * revert mappedType test in conformance/ * add new directory and tests * fix missing a line * Update changelog_unreleased/typescript/pr-7174.md Co-Authored-By: Georgii Dolzhykov Co-authored-by: Georgii Dolzhykov --- changelog_unreleased/typescript/pr-7174.md | 13 +++++++++++++ src/language-js/printer-estree.js | 2 +- .../__snapshots__/jsfmt.spec.js.snap | 19 +++++++++++++++++++ tests/typescript_mapped_type/jsfmt.spec.js | 1 + tests/typescript_mapped_type/mapped-type.ts | 3 +++ 5 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 changelog_unreleased/typescript/pr-7174.md create mode 100644 tests/typescript_mapped_type/__snapshots__/jsfmt.spec.js.snap create mode 100644 tests/typescript_mapped_type/jsfmt.spec.js create mode 100644 tests/typescript_mapped_type/mapped-type.ts diff --git a/changelog_unreleased/typescript/pr-7174.md b/changelog_unreleased/typescript/pr-7174.md new file mode 100644 index 000000000..225335abc --- /dev/null +++ b/changelog_unreleased/typescript/pr-7174.md @@ -0,0 +1,13 @@ +#### Fix printing of mapped types with the template type omitted ([#7221](https://github.com/prettier/prettier/pull/7221) by [@cola119](https://github.com/cola119)) + + +```ts +// Input +type A = { [key in B] }; + +// Prettier stable +type A = { [key in B]: }; + +// Prettier master +type A = { [key in B] }; +``` diff --git a/src/language-js/printer-estree.js b/src/language-js/printer-estree.js index 3f16b2f9f..29a4ab142 100644 --- a/src/language-js/printer-estree.js +++ b/src/language-js/printer-estree.js @@ -3333,7 +3333,7 @@ function printPathNoParens(path, options, print, args) { n.optional ? getTypeScriptMappedTypeModifier(n.optional, "?") : "", - ": ", + n.typeAnnotation ? ": " : "", path.call(print, "typeAnnotation"), ifBreak(semi, "") ]) diff --git a/tests/typescript_mapped_type/__snapshots__/jsfmt.spec.js.snap b/tests/typescript_mapped_type/__snapshots__/jsfmt.spec.js.snap new file mode 100644 index 000000000..aa88ebac3 --- /dev/null +++ b/tests/typescript_mapped_type/__snapshots__/jsfmt.spec.js.snap @@ -0,0 +1,19 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`mapped-type.ts 1`] = ` +====================================options===================================== +parsers: ["typescript"] +printWidth: 80 + | printWidth +=====================================input====================================== +type Keys = 'option1' | 'option2'; +type A = { [K in Keys] }; +type B = { [K in Keys]+? }; + +=====================================output===================================== +type Keys = "option1" | "option2"; +type A = { [K in Keys] }; +type B = { [K in Keys]+? }; + +================================================================================ +`; diff --git a/tests/typescript_mapped_type/jsfmt.spec.js b/tests/typescript_mapped_type/jsfmt.spec.js new file mode 100644 index 000000000..2ea3bb6eb --- /dev/null +++ b/tests/typescript_mapped_type/jsfmt.spec.js @@ -0,0 +1 @@ +run_spec(__dirname, ["typescript"]); diff --git a/tests/typescript_mapped_type/mapped-type.ts b/tests/typescript_mapped_type/mapped-type.ts new file mode 100644 index 000000000..83e408571 --- /dev/null +++ b/tests/typescript_mapped_type/mapped-type.ts @@ -0,0 +1,3 @@ +type Keys = 'option1' | 'option2'; +type A = { [K in Keys] }; +type B = { [K in Keys]+? }; From 87d532b1b60ddccd906596cd6bbe32915242a7f5 Mon Sep 17 00:00:00 2001 From: Daiki Ihara Date: Wed, 8 Jan 2020 06:17:52 +0900 Subject: [PATCH 87/88] Markdown: fix PR 7181 broke HTML blocks inside list items (#7220) * fix PR 7181 broke HTML blocks inside list items * add test for indented html after list item * add changelog_unreleased for pr-7220 * update changelog of pr-7181 * fix pointed out --- changelog_unreleased/markdown/pr-7181.md | 11 ++++++++++- src/language-markdown/printer-markdown.js | 3 ++- tests/markdown_html/__snapshots__/jsfmt.spec.js.snap | 6 ++++++ .../markdown_html/beginning-tag-after-a-list-item.md | 3 +++ 4 files changed, 21 insertions(+), 2 deletions(-) diff --git a/changelog_unreleased/markdown/pr-7181.md b/changelog_unreleased/markdown/pr-7181.md index 1aecd8624..0498a031f 100644 --- a/changelog_unreleased/markdown/pr-7181.md +++ b/changelog_unreleased/markdown/pr-7181.md @@ -1,4 +1,4 @@ -#### fix HTML formatting broken if the beginning tag starts after a list item ([#7181](https://github.com/prettier/prettier/pull/7181) by [@sasurau4](https://github.com/sasurau4)) +#### fix HTML formatting broken if the beginning tag starts after a list item ([#7181](https://github.com/prettier/prettier/pull/7181) by [@sasurau4](https://github.com/sasurau4), [#7220](https://github.com/prettier/prettier/pull/7220) by [@sasurau4](https://github.com/sasurau4)) Previously, when Prettier format the html tag that starts after a list item, it would insert indent and break the relationship of open and close tag. Now, Prettier no longer change anything. @@ -14,6 +14,9 @@ Previously, when Prettier format the html tag that starts after a list item, it

+- A list item +
asdf
+ - A list item. @@ -25,6 +28,9 @@ Previously, when Prettier format the html tag that starts after a list item, it

+- A list item +
asdf
+ - A list item.
Summary @@ -34,4 +40,7 @@ Previously, when Prettier format the html tag that starts after a list item, it

+ +- A list item +
asdf
``` diff --git a/src/language-markdown/printer-markdown.js b/src/language-markdown/printer-markdown.js index d34b829af..220c2d5d0 100644 --- a/src/language-markdown/printer-markdown.js +++ b/src/language-markdown/printer-markdown.js @@ -259,7 +259,8 @@ function genericPrint(path, options, print) { if ( childNode.children.length === 2 && childNode.children[1].type === "html" && - childNode.children[1].position.indent.every(indent => indent === 1) + childNode.children[0].position.start.column !== + childNode.children[1].position.start.column ) { return concat([ prefix, diff --git a/tests/markdown_html/__snapshots__/jsfmt.spec.js.snap b/tests/markdown_html/__snapshots__/jsfmt.spec.js.snap index 492ff792a..675a87d05 100644 --- a/tests/markdown_html/__snapshots__/jsfmt.spec.js.snap +++ b/tests/markdown_html/__snapshots__/jsfmt.spec.js.snap @@ -23,6 +23,9 @@ proseWrap: "always" quoted sentence2

+- indented html is formatted as it is +
asdf
+ =====================================output===================================== - A list item.
Summary @@ -40,6 +43,9 @@ quoted sentence2

quoted sentence2

+- indented html is formatted as it is +
asdf
+ ================================================================================ `; diff --git a/tests/markdown_html/beginning-tag-after-a-list-item.md b/tests/markdown_html/beginning-tag-after-a-list-item.md index 43b7b8f80..a530428d5 100644 --- a/tests/markdown_html/beginning-tag-after-a-list-item.md +++ b/tests/markdown_html/beginning-tag-after-a-list-item.md @@ -13,3 +13,6 @@

quoted sentence1
quoted sentence2

+ +- indented html is formatted as it is +
asdf
From 0bb75fd1b9bcd23f223f2fe6c969628d2ef67066 Mon Sep 17 00:00:00 2001 From: Cyrille David Date: Wed, 8 Jan 2020 13:24:45 +0100 Subject: [PATCH 88/88] handlebars: Fix superfluous line breaks in ConcatStatement (#7051) --- changelog_unreleased/handlebars/pr-7051.md | 58 ++++++++ src/language-handlebars/printer-glimmer.js | 11 +- .../__snapshots__/jsfmt.spec.js.snap | 105 +++++++++++--- .../in-attr-node.hbs | 7 + .../__snapshots__/jsfmt.spec.js.snap | 132 ++++++++++++++++++ .../handlebars-mustache-statement/basics.hbs | 26 ++++ 6 files changed, 310 insertions(+), 29 deletions(-) create mode 100644 changelog_unreleased/handlebars/pr-7051.md create mode 100644 tests/handlebars-concat-statement/in-attr-node.hbs diff --git a/changelog_unreleased/handlebars/pr-7051.md b/changelog_unreleased/handlebars/pr-7051.md new file mode 100644 index 000000000..505bf926e --- /dev/null +++ b/changelog_unreleased/handlebars/pr-7051.md @@ -0,0 +1,58 @@ +#### handlebars: Fix superfluous line breaks in ConcatStatement ([7051](https://github.com/prettier/prettier/pull/7051) by [@dcyriller](https://github.com/dcyriller)) + + +```hbs +{{!-- input --}} +Link + +{{!-- Prettier stable --}} + + Link + + +{{!-- Prettier master --}} + + Link + +``` + +and + +```hbs +{{!-- input --}} +
+ Hello +
+ +{{!-- Prettier stable --}} +
+ Hello +
+ +{{!-- Prettier master --}} +
+ Hello +
+``` diff --git a/src/language-handlebars/printer-glimmer.js b/src/language-handlebars/printer-glimmer.js index e34789e51..9c05c49fd 100644 --- a/src/language-handlebars/printer-glimmer.js +++ b/src/language-handlebars/printer-glimmer.js @@ -198,15 +198,8 @@ function print(path, options, print) { case "ConcatStatement": { return concat([ '"', - group( - indent( - join( - softline, - path - .map(partPath => print(partPath), "parts") - .filter(a => a !== "") - ) - ) + concat( + path.map(partPath => print(partPath), "parts").filter(a => a !== "") ), '"' ]); diff --git a/tests/handlebars-concat-statement/__snapshots__/jsfmt.spec.js.snap b/tests/handlebars-concat-statement/__snapshots__/jsfmt.spec.js.snap index 4be7aaf87..92a4eddeb 100644 --- a/tests/handlebars-concat-statement/__snapshots__/jsfmt.spec.js.snap +++ b/tests/handlebars-concat-statement/__snapshots__/jsfmt.spec.js.snap @@ -32,16 +32,9 @@ printWidth: 80
Hello
@@ -94,16 +87,9 @@ singleQuote: true
Hello
@@ -122,3 +108,82 @@ singleQuote: true
================================================================================ `; + +exports[`in-attr-node.hbs 1`] = ` +====================================options===================================== +parsers: ["glimmer"] +printWidth: 80 + | printWidth +=====================================input====================================== +
hey
+Link + + +=====================================output===================================== +
+ hey +
+ + Link + + +================================================================================ +`; + +exports[`in-attr-node.hbs 2`] = ` +====================================options===================================== +parsers: ["glimmer"] +printWidth: 80 +singleQuote: true + | printWidth +=====================================input====================================== +
hey
+Link + + +=====================================output===================================== +
+ hey +
+ + Link + + +================================================================================ +`; diff --git a/tests/handlebars-concat-statement/in-attr-node.hbs b/tests/handlebars-concat-statement/in-attr-node.hbs new file mode 100644 index 000000000..05ee942a5 --- /dev/null +++ b/tests/handlebars-concat-statement/in-attr-node.hbs @@ -0,0 +1,7 @@ +
hey
+Link + diff --git a/tests/handlebars-mustache-statement/__snapshots__/jsfmt.spec.js.snap b/tests/handlebars-mustache-statement/__snapshots__/jsfmt.spec.js.snap index 0b185ed6a..4808e2b90 100644 --- a/tests/handlebars-mustache-statement/__snapshots__/jsfmt.spec.js.snap +++ b/tests/handlebars-mustache-statement/__snapshots__/jsfmt.spec.js.snap @@ -23,6 +23,32 @@ printWidth: 80 data-test-beneficiary-account-number /> +
+
+ +
+
+ +
+
+ +
+
+ =====================================output===================================== + +
+
+ +
+
+ +
+
+ +
+
================================================================================ `; @@ -76,6 +142,32 @@ singleQuote: true data-test-beneficiary-account-number /> +
+
+ +
+
+ +
+
+ +
+
+ =====================================output===================================== + +
+
+ +
+
+ +
+
+ +
+
================================================================================ `; diff --git a/tests/handlebars-mustache-statement/basics.hbs b/tests/handlebars-mustache-statement/basics.hbs index db7834d51..ab4ddb54a 100644 --- a/tests/handlebars-mustache-statement/basics.hbs +++ b/tests/handlebars-mustache-statement/basics.hbs @@ -14,3 +14,29 @@ @errors={{or this.aVeryLongProperty (and this.aProperty (v-get bike "number" "message"))}} data-test-beneficiary-account-number /> + +
+
+ +
+
+ +
+
+ +
+