diff --git a/website/components/basic-hero/index.jsx b/website/components/basic-hero/index.jsx index dd3b2f174b..109f052057 100644 --- a/website/components/basic-hero/index.jsx +++ b/website/components/basic-hero/index.jsx @@ -39,7 +39,11 @@ export default function BasicHero({ {links[2] && (
- + {links[2].text} diff --git a/website/package-lock.json b/website/package-lock.json index 36c2d1b7ee..5a408c9ca5 100644 --- a/website/package-lock.json +++ b/website/package-lock.json @@ -3085,9 +3085,9 @@ } }, "@babel/runtime-corejs3": { - "version": "7.10.2", - "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.10.2.tgz", - "integrity": "sha512-+a2M/u7r15o3dV1NEizr9bRi+KUVnrs/qYxF0Z06DAPx/4VCWaz1WA7EcbE+uqGgt39lp5akWGmHsTseIkHkHg==", + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.10.4.tgz", + "integrity": "sha512-BFlgP2SoLO9HJX9WBwN67gHWMBhDX/eDz64Jajd6mR/UAUzqrNMm99d4qHnVaKscAElZoFiPv+JpR/Siud5lXw==", "requires": { "core-js-pure": "^3.0.0", "regenerator-runtime": "^0.13.4" @@ -3130,20 +3130,20 @@ } }, "@bugsnag/browser": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@bugsnag/browser/-/browser-7.1.1.tgz", - "integrity": "sha512-9LjNsSVhnHizEtixPa8XnB1LYWAfdSf7spKwVW8UBBt1yfa9h/q0AhU6CrxEPi/uehkQaHx5k/2ZvaMP5G5SAA==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@bugsnag/browser/-/browser-7.2.0.tgz", + "integrity": "sha512-mD0oBpruWOIDEcbmlyw5EiSURX84FW4wYxU4SNQ59gw2tZskxXV4bcWjdxXmdH2SorI8R2SsNXWM+V1N+sMiKg==", "requires": { - "@bugsnag/core": "^7.1.1" + "@bugsnag/core": "^7.2.0" } }, "@bugsnag/core": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@bugsnag/core/-/core-7.1.1.tgz", - "integrity": "sha512-PWj2JQJIIbv4lP1YBR88hA9fS3UbGLwn+1ZxxUK5xxcUbTpViMIaoMGdQflfxHh7xfH6YmtwgA5mg2zDZGHCBw==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@bugsnag/core/-/core-7.2.0.tgz", + "integrity": "sha512-v1XpF5TVQYrwKpveL8cb1dBSA0DniGzI5we2ICJNmWhylLgzRKZuAs1HUxYB+5+beU51YNrEp8yQy/WKC6HiMg==", "requires": { "@bugsnag/cuid": "^3.0.0", - "@bugsnag/safe-json-stringify": "^5.0.0", + "@bugsnag/safe-json-stringify": "^6.0.0", "error-stack-parser": "^2.0.3", "iserror": "0.0.2", "stack-generator": "^2.0.3" @@ -3155,20 +3155,20 @@ "integrity": "sha512-LOt8aaBI+KvOQGneBtpuCz3YqzyEAehd1f3nC5yr9TIYW1+IzYKa2xWS4EiMz5pPOnRPHkyyS5t/wmSmN51Gjg==" }, "@bugsnag/js": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@bugsnag/js/-/js-7.1.1.tgz", - "integrity": "sha512-pa7d3kRt398hvrhjKvEzMBKE+m1JOJpwW7c8+Btu6HrjCxBcLj7SeSzzN2mbDmT/DfPU4hjeZ+oXGTWVWjUkgQ==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@bugsnag/js/-/js-7.2.0.tgz", + "integrity": "sha512-tEt0/rHWKdl0VhpnECY/sfjH0SZB7a2EX3oLz6IcSGoTEsm6V228DMa9AEtgk/0cdvBfriYy63zaAG/WUoCLaQ==", "requires": { - "@bugsnag/browser": "^7.1.1", - "@bugsnag/node": "^7.1.1" + "@bugsnag/browser": "^7.2.0", + "@bugsnag/node": "^7.2.0" } }, "@bugsnag/node": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@bugsnag/node/-/node-7.1.1.tgz", - "integrity": "sha512-1ciecltpLBfr1kPTrSoHt8umPDZXxHAWdgVE1jx4QyTl1+e5WIpMvp5cs36jisIR+dbOKBB5Y3hgv6VOX5u50A==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@bugsnag/node/-/node-7.2.0.tgz", + "integrity": "sha512-ydgRAT2JcZ+yLyfAZeH8TL31xLVHQ6+3/Flo/7vyH/pmMORtuGErtzhT9G9L31Qx8OqBfG4a2dJ28ib11ZLubw==", "requires": { - "@bugsnag/core": "^7.1.1", + "@bugsnag/core": "^7.2.0", "byline": "^5.0.0", "error-stack-parser": "^2.0.2", "iserror": "^0.0.2", @@ -3177,17 +3177,17 @@ } }, "@bugsnag/plugin-react": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@bugsnag/plugin-react/-/plugin-react-7.1.1.tgz", - "integrity": "sha512-bxz3hZa0Our7OO42sVsHWgzEuw0vdTC2cCVG1vXKQUeFQqgggMizC8yzSbxCGaqyj04Dui/YzlYnAGV3MRoUjQ==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@bugsnag/plugin-react/-/plugin-react-7.2.0.tgz", + "integrity": "sha512-JgJArvaEMFh4MzW7rJ/XoOts86JeTi+odIMRf4qk2Lc9uVWFSGAOFceDlk9zfgoYUJWddJLaC6nEp8joQd1v0Q==", "requires": { - "@bugsnag/core": "^7.1.1" + "@bugsnag/core": "^7.2.0" } }, "@bugsnag/safe-json-stringify": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@bugsnag/safe-json-stringify/-/safe-json-stringify-5.0.0.tgz", - "integrity": "sha512-EdGnA7n2UmX9Z0e2tIU0biKz8tCgtjbY69KoyH3yiMzm7Q9sriIlN9bZjqhTOKzM0GdLSGrkyKWif08xWKyucA==" + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@bugsnag/safe-json-stringify/-/safe-json-stringify-6.0.0.tgz", + "integrity": "sha512-htzFO1Zc57S8kgdRK9mLcPVTW1BY2ijfH7Dk2CeZmspTWKdKqSo1iwmqrq2WtRjFlo8aRZYgLX0wFrDXF/9DLA==" }, "@csstools/convert-colors": { "version": "1.4.0", @@ -3244,33 +3244,37 @@ "integrity": "sha512-ajCBCcxDpiwfxsh8wMGHu9GuKcNRmuiFyfgUiRXipvLqHFnNLZwZfBwaFxgCT8EK1jxdkfUWJTFkPY3rXmIo2A==" }, "@hashicorp/nextjs-scripts": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/@hashicorp/nextjs-scripts/-/nextjs-scripts-10.0.2.tgz", - "integrity": "sha512-s18LHSyrWcgNbsFEnyMLUa7jaLBz2/UXu984UrxVoapHTq5eL4HEk1dJZ3yHcRCJjG7TEYvaXzgkL4IHc1UR5w==", + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/@hashicorp/nextjs-scripts/-/nextjs-scripts-11.1.0.tgz", + "integrity": "sha512-qUkUsXcBRaa3DMhz6FJQ77qX+eNhFnBmuALnPIZqdu+V9cxRDFRkshf7aDPnGc9AVSDy9/tWrGGzDbBAzS7Puw==", "requires": { - "@bugsnag/js": "7.1.1", - "@bugsnag/plugin-react": "7.1.1", - "@hashicorp/react-consent-manager": "2.1.2", + "@bugsnag/js": "7.2.0", + "@bugsnag/plugin-react": "7.2.0", + "@hashicorp/react-consent-manager": "2.1.3", "@hashicorp/react-enterprise-alert": "^2.1.0", "@hashicorp/react-tabs": "^0.4.0", "@hashicorp/remark-plugins": "3.0.0", - "@mapbox/rehype-prism": "0.4.0", - "@mdx-js/react": "^1.6.5", + "@mapbox/rehype-prism": "0.5.0", + "@mdx-js/react": "^1.6.6", "@next/bundle-analyzer": "9.4.4", - "@typescript-eslint/eslint-plugin": "3.2.0", - "@typescript-eslint/parser": "3.2.0", + "@typescript-eslint/eslint-plugin": "3.6.0", + "@typescript-eslint/parser": "3.6.0", "babel-eslint": "10.1.0", "chalk": "4.1.0", "debug": "4.1.1", "ejs": "3.1.3", - "eslint": "7.2.0", + "eslint": "7.4.0", "eslint-config-prettier": "6.11.0", - "eslint-plugin-jsx-a11y": "6.2.3", - "eslint-plugin-prettier": "3.1.3", - "eslint-plugin-react": "7.20.0", + "eslint-plugin-jsx-a11y": "6.3.1", + "eslint-plugin-prettier": "3.1.4", + "eslint-plugin-react": "7.20.3", "fs-extra": "9.0.1", - "inquirer": "7.1.0", - "lint-staged": "10.2.9", + "globby": "^11.0.1", + "imagemin-mozjpeg": "^9.0.0", + "imagemin-optipng": "^8.0.0", + "imagemin-svgo": "^8.0.0", + "inquirer": "7.3.0", + "lint-staged": "10.2.11", "next-mdx-enhanced": "3.0.0", "next-optimized-images": "2.6.1", "next-transpile-modules": "3.3.0", @@ -3279,21 +3283,20 @@ "postcss-flexbugs-fixes": "4.2.1", "postcss-normalize": "9.0.0", "postcss-preset-env": "6.7.0", - "pretty-quick": "2.0.1", "readdirp": "3.4.0", "rehype-katex": "^3.0.0", "remark-math": "^2.0.1", - "rivet-graphql": "0.0.2", + "rivet-graphql": "0.2.0", "signale": "1.4.0", - "stylelint": "^13.6.0", + "stylelint": "^13.6.1", "stylelint-config-css-modules": "^2.2.0", - "stylelint-config-prettier": "^8.0.1", + "stylelint-config-prettier": "^8.0.2", "stylelint-config-standard": "^20.0.0", "stylelint-media-use-custom-media": "^2.0.0", "stylelint-order": "^4.1.0", "stylelint-use-nesting": "^3.0.0", "stylelint-value-no-unknown-custom-properties": "^3.0.0", - "typescript": "3.9.5", + "typescript": "3.9.6", "typewriter": "7.1.0" }, "dependencies": { @@ -3409,11 +3412,11 @@ } }, "@hashicorp/react-consent-manager": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@hashicorp/react-consent-manager/-/react-consent-manager-2.1.2.tgz", - "integrity": "sha512-AjCFIEZPa6K9UFr3Nvjy8cLHuGDa2qpQat/QVFHKp0t/acflC8z7xIDh8Yo9RBCp+YF+gF+g50ll/hhzX0pEeQ==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@hashicorp/react-consent-manager/-/react-consent-manager-2.1.3.tgz", + "integrity": "sha512-fTexdZn8bgiItSa3mpyMDCB0auIAz/1fxO/XXJcG+lxojGRqzkSYyaEqk6ckNvPDrY72VhYoLEOnM/pZO/dHEA==", "requires": { - "@hashicorp/react-button": "^2.2.0", + "@hashicorp/react-button": "^2.2.1", "@hashicorp/react-toggle": "^1.0.1", "@segment/in-eu": "^0.2.1", "js-cookie": "^2.2.0", @@ -3833,53 +3836,43 @@ } }, "@mapbox/rehype-prism": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/@mapbox/rehype-prism/-/rehype-prism-0.4.0.tgz", - "integrity": "sha512-3lOB7cClhuKj4isJQITZp+YGXSmJ3cU71nmZ3vic4zpYrUlotNAogazelzz4QeJC16KsKv3pzP3mer3fgESeCg==", + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@mapbox/rehype-prism/-/rehype-prism-0.5.0.tgz", + "integrity": "sha512-sE5EetmSR6At7AU2s3N2rFUUqm8BpvxUcGcesgfTZgqF7bQoekqsKxLX8gunIDjZs34acZJ6fgPFHepEWnYKCQ==", "requires": { - "hast-util-to-string": "^1.0.0", - "refractor": "^2.3.0", - "unist-util-visit": "^1.1.3" - }, - "dependencies": { - "unist-util-visit": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-1.4.1.tgz", - "integrity": "sha512-AvGNk7Bb//EmJZyhtRUnNMEpId/AZ5Ph/KUpTI09WHQuDZHKovQ1oEv3mfmKpWKtoMzyMC4GLBm1Zy5k12fjIw==", - "requires": { - "unist-util-visit-parents": "^2.0.0" - } - } + "hast-util-to-string": "^1.0.3", + "refractor": "^3.0.0", + "unist-util-visit": "^2.0.2" } }, "@mdx-js/loader": { - "version": "1.6.5", - "resolved": "https://registry.npmjs.org/@mdx-js/loader/-/loader-1.6.5.tgz", - "integrity": "sha512-KAryT4UgOu+RVLMH0yZkmV1MQXSb/T8allsq5YZe5XFkOPHD341Po4tPlOddr6hpQKkHyZtDN70YNBxP4dVX6w==", + "version": "1.6.6", + "resolved": "https://registry.npmjs.org/@mdx-js/loader/-/loader-1.6.6.tgz", + "integrity": "sha512-9jTmXGf5DsVM3XFEX6eYuB8DzIRg2Qo13DHMS2uOBYjrU3w1AUa06Tzz/CnDYQcPSPxHCuRy+m0tMXmG2rQ4Xg==", "requires": { - "@mdx-js/mdx": "^1.6.5", - "@mdx-js/react": "^1.6.5", + "@mdx-js/mdx": "^1.6.6", + "@mdx-js/react": "^1.6.6", "loader-utils": "2.0.0" } }, "@mdx-js/mdx": { - "version": "1.6.5", - "resolved": "https://registry.npmjs.org/@mdx-js/mdx/-/mdx-1.6.5.tgz", - "integrity": "sha512-DC13eeEM0Dv9OD+UVhyB69BlV29d2eoAmfiR/XdgNl4R7YmRNEPGRD3QvGUdRUDxYdJBHauMz5ZIV507cNXXaA==", + "version": "1.6.6", + "resolved": "https://registry.npmjs.org/@mdx-js/mdx/-/mdx-1.6.6.tgz", + "integrity": "sha512-Q1j/RtjNbRZRC/ciaOqQLplsJ9lb0jJhDSvkusmzCsCX+NZH7YTUvccWf7l6zKW1CAiofJfqZdZtXkeJUDZiMw==", "requires": { "@babel/core": "7.9.6", "@babel/plugin-syntax-jsx": "7.8.3", "@babel/plugin-syntax-object-rest-spread": "7.8.3", - "@mdx-js/util": "^1.6.5", - "babel-plugin-apply-mdx-type-prop": "^1.6.5", - "babel-plugin-extract-import-names": "^1.6.5", + "@mdx-js/util": "^1.6.6", + "babel-plugin-apply-mdx-type-prop": "^1.6.6", + "babel-plugin-extract-import-names": "^1.6.6", "camelcase-css": "2.0.1", "detab": "2.0.3", "hast-util-raw": "5.0.2", "lodash.uniq": "4.5.0", "mdast-util-to-hast": "9.1.0", "remark-footnotes": "1.0.0", - "remark-mdx": "^1.6.5", + "remark-mdx": "^1.6.6", "remark-parse": "8.0.2", "remark-squeeze-paragraphs": "4.0.0", "style-to-object": "0.3.0", @@ -3888,42 +3881,6 @@ "unist-util-visit": "2.0.2" }, "dependencies": { - "parse-entities": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-2.0.0.tgz", - "integrity": "sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==", - "requires": { - "character-entities": "^1.0.0", - "character-entities-legacy": "^1.0.0", - "character-reference-invalid": "^1.0.0", - "is-alphanumerical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-hexadecimal": "^1.0.0" - } - }, - "remark-parse": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-8.0.2.tgz", - "integrity": "sha512-eMI6kMRjsAGpMXXBAywJwiwAse+KNpmt+BK55Oofy4KvBZEqUDj6mWbGLJZrujoPIPPxDXzn3T9baRlpsm2jnQ==", - "requires": { - "ccount": "^1.0.0", - "collapse-white-space": "^1.0.2", - "is-alphabetical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-whitespace-character": "^1.0.0", - "is-word-character": "^1.0.0", - "markdown-escapes": "^1.0.0", - "parse-entities": "^2.0.0", - "repeat-string": "^1.5.4", - "state-toggle": "^1.0.0", - "trim": "0.0.1", - "trim-trailing-lines": "^1.0.0", - "unherit": "^1.0.4", - "unist-util-remove-position": "^2.0.0", - "vfile-location": "^3.0.0", - "xtend": "^4.0.1" - } - }, "unified": { "version": "9.0.0", "resolved": "https://registry.npmjs.org/unified/-/unified-9.0.0.tgz", @@ -3936,31 +3893,18 @@ "trough": "^1.0.0", "vfile": "^4.0.0" } - }, - "unist-util-remove-position": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-2.0.1.tgz", - "integrity": "sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA==", - "requires": { - "unist-util-visit": "^2.0.0" - } - }, - "vfile-location": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-3.0.1.tgz", - "integrity": "sha512-yYBO06eeN/Ki6Kh1QAkgzYpWT1d3Qln+ZCtSbJqFExPl1S3y2qqotJQXoh6qEvl/jDlgpUJolBn3PItVnnZRqQ==" } } }, "@mdx-js/react": { - "version": "1.6.5", - "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-1.6.5.tgz", - "integrity": "sha512-y1Yu9baw3KokFrs7g5RxHpJNSU4e1zk/5bAJX94yVATglG5HyAL0lYMySU8YzebXNE+fJJMCx9CuiQHy2ezoew==" + "version": "1.6.6", + "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-1.6.6.tgz", + "integrity": "sha512-zOOdNreHUNSFQ0dg3wYYg9sOGg2csf7Sk8JGBigeBq+4Xk4LO0QdycGAmgKNfeme+SyBV5LBIPjt1NNsScyWEQ==" }, "@mdx-js/util": { - "version": "1.6.5", - "resolved": "https://registry.npmjs.org/@mdx-js/util/-/util-1.6.5.tgz", - "integrity": "sha512-ljr9hGQYW3kZY1NmQbmSe4yXvgq3KDRt0FMBOB5OaDWqi4X2WzEsp6SZ02KmVrieNW1cjWlj13pgvcf0towZPw==" + "version": "1.6.6", + "resolved": "https://registry.npmjs.org/@mdx-js/util/-/util-1.6.6.tgz", + "integrity": "sha512-PKTHVgMHnK5p+kcMWWNnZuoR7O19VmHiOujmVcyN50hya7qIdDb5vvsYC+dwLxApEXiABhLozq0dlIwFeS3yjg==" }, "@mrmlnc/readdir-enhanced": { "version": "2.2.1", @@ -4018,19 +3962,12 @@ "requires": { "@nodelib/fs.stat": "2.0.3", "run-parallel": "^1.1.9" - }, - "dependencies": { - "@nodelib/fs.stat": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.3.tgz", - "integrity": "sha512-bQBFruR2TAwoevBEd/NWMoAAtNGzTRgdrqnYCc7dhzfoNvqPzLyqlEQnzZ3kVnNrSp25iyxE00/3h2fqGAGArA==" - } } }, "@nodelib/fs.stat": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz", - "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==" + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.3.tgz", + "integrity": "sha512-bQBFruR2TAwoevBEd/NWMoAAtNGzTRgdrqnYCc7dhzfoNvqPzLyqlEQnzZ3kVnNrSp25iyxE00/3h2fqGAGArA==" }, "@nodelib/fs.walk": { "version": "1.2.4", @@ -4078,129 +4015,6 @@ "requires": { "remark": "^12.0.0", "unist-util-find-all-after": "^3.0.1" - }, - "dependencies": { - "markdown-table": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-2.0.0.tgz", - "integrity": "sha512-Ezda85ToJUBhM6WGaG6veasyym+Tbs3cMAw/ZhOPqXiYsr0jgocBV3j3nx+4lk47plLlIqjwuTm/ywVI+zjJ/A==", - "requires": { - "repeat-string": "^1.0.0" - } - }, - "mdast-util-compact": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-compact/-/mdast-util-compact-2.0.1.tgz", - "integrity": "sha512-7GlnT24gEwDrdAwEHrU4Vv5lLWrEer4KOkAiKT9nYstsTad7Oc1TwqT2zIMKRdZF7cTuaf+GA1E4Kv7jJh8mPA==", - "requires": { - "unist-util-visit": "^2.0.0" - } - }, - "parse-entities": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-2.0.0.tgz", - "integrity": "sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==", - "requires": { - "character-entities": "^1.0.0", - "character-entities-legacy": "^1.0.0", - "character-reference-invalid": "^1.0.0", - "is-alphanumerical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-hexadecimal": "^1.0.0" - } - }, - "remark": { - "version": "12.0.0", - "resolved": "https://registry.npmjs.org/remark/-/remark-12.0.0.tgz", - "integrity": "sha512-oX4lMIS0csgk8AEbzY0h2jdR0ngiCHOpwwpxjmRa5TqAkeknY+tkhjRJGZqnCmvyuWh55/0SW5WY3R3nn3PH9A==", - "requires": { - "remark-parse": "^8.0.0", - "remark-stringify": "^8.0.0", - "unified": "^9.0.0" - } - }, - "remark-parse": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-8.0.2.tgz", - "integrity": "sha512-eMI6kMRjsAGpMXXBAywJwiwAse+KNpmt+BK55Oofy4KvBZEqUDj6mWbGLJZrujoPIPPxDXzn3T9baRlpsm2jnQ==", - "requires": { - "ccount": "^1.0.0", - "collapse-white-space": "^1.0.2", - "is-alphabetical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-whitespace-character": "^1.0.0", - "is-word-character": "^1.0.0", - "markdown-escapes": "^1.0.0", - "parse-entities": "^2.0.0", - "repeat-string": "^1.5.4", - "state-toggle": "^1.0.0", - "trim": "0.0.1", - "trim-trailing-lines": "^1.0.0", - "unherit": "^1.0.4", - "unist-util-remove-position": "^2.0.0", - "vfile-location": "^3.0.0", - "xtend": "^4.0.1" - } - }, - "remark-stringify": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-8.1.0.tgz", - "integrity": "sha512-FSPZv1ds76oAZjurhhuV5qXSUSoz6QRPuwYK38S41sLHwg4oB7ejnmZshj7qwjgYLf93kdz6BOX9j5aidNE7rA==", - "requires": { - "ccount": "^1.0.0", - "is-alphanumeric": "^1.0.0", - "is-decimal": "^1.0.0", - "is-whitespace-character": "^1.0.0", - "longest-streak": "^2.0.1", - "markdown-escapes": "^1.0.0", - "markdown-table": "^2.0.0", - "mdast-util-compact": "^2.0.0", - "parse-entities": "^2.0.0", - "repeat-string": "^1.5.4", - "state-toggle": "^1.0.0", - "stringify-entities": "^3.0.0", - "unherit": "^1.0.4", - "xtend": "^4.0.1" - } - }, - "stringify-entities": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-3.0.1.tgz", - "integrity": "sha512-Lsk3ISA2++eJYqBMPKcr/8eby1I6L0gP0NlxF8Zja6c05yr/yCYyb2c9PwXjd08Ib3If1vn1rbs1H5ZtVuOfvQ==", - "requires": { - "character-entities-html4": "^1.0.0", - "character-entities-legacy": "^1.0.0", - "is-alphanumerical": "^1.0.0", - "is-decimal": "^1.0.2", - "is-hexadecimal": "^1.0.0" - } - }, - "unified": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/unified/-/unified-9.0.0.tgz", - "integrity": "sha512-ssFo33gljU3PdlWLjNp15Inqb77d6JnJSfyplGJPT/a+fNRNyCBeveBAYJdO5khKdF6WVHa/yYCC7Xl6BDwZUQ==", - "requires": { - "bail": "^1.0.0", - "extend": "^3.0.0", - "is-buffer": "^2.0.0", - "is-plain-obj": "^2.0.0", - "trough": "^1.0.0", - "vfile": "^4.0.0" - } - }, - "unist-util-remove-position": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-2.0.1.tgz", - "integrity": "sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA==", - "requires": { - "unist-util-visit": "^2.0.0" - } - }, - "vfile-location": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-3.0.1.tgz", - "integrity": "sha512-yYBO06eeN/Ki6Kh1QAkgzYpWT1d3Qln+ZCtSbJqFExPl1S3y2qqotJQXoh6qEvl/jDlgpUJolBn3PItVnnZRqQ==" - } } }, "@szmarczak/http-timer": { @@ -4243,11 +4057,6 @@ "@types/unist": "*" } }, - "@types/minimatch": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", - "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" - }, "@types/minimist": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.0.tgz", @@ -4279,11 +4088,12 @@ "integrity": "sha512-S9q47ByT2pPvD65IvrWp7qppVMpk9WGMbVq9wbWZOHg6tnXSD4vyhao6nOSBwwfDdV2p3Kx9evA9vI+XWTfDvw==" }, "@typescript-eslint/eslint-plugin": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-3.2.0.tgz", - "integrity": "sha512-t9RTk/GyYilIXt6BmZurhBzuMT9kLKw3fQoJtK9ayv0tXTlznXEAnx07sCLXdkN3/tZDep1s1CEV95CWuARYWA==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-3.6.0.tgz", + "integrity": "sha512-ubHlHVt1lsPQB/CZdEov9XuOFhNG9YRC//kuiS1cMQI6Bs1SsqKrEmZnpgRwthGR09/kEDtr9MywlqXyyYd8GA==", "requires": { - "@typescript-eslint/experimental-utils": "3.2.0", + "@typescript-eslint/experimental-utils": "3.6.0", + "debug": "^4.1.1", "functional-red-black-tree": "^1.0.1", "regexpp": "^3.0.0", "semver": "^7.3.2", @@ -4291,34 +4101,42 @@ } }, "@typescript-eslint/experimental-utils": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-3.2.0.tgz", - "integrity": "sha512-UbJBsk+xO9dIFKtj16+m42EvUvsjZbbgQ2O5xSTSfVT1Z3yGkL90DVu0Hd3029FZ5/uBgl+F3Vo8FAcEcqc6aQ==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-3.6.0.tgz", + "integrity": "sha512-4Vdf2hvYMUnTdkCNZu+yYlFtL2v+N2R7JOynIOkFbPjf9o9wQvRwRkzUdWlFd2YiiUwJLbuuLnl5civNg5ykOQ==", "requires": { "@types/json-schema": "^7.0.3", - "@typescript-eslint/typescript-estree": "3.2.0", + "@typescript-eslint/types": "3.6.0", + "@typescript-eslint/typescript-estree": "3.6.0", "eslint-scope": "^5.0.0", "eslint-utils": "^2.0.0" } }, "@typescript-eslint/parser": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-3.2.0.tgz", - "integrity": "sha512-Vhu+wwdevDLVDjK1lIcoD6ZbuOa93fzqszkaO3iCnmrScmKwyW/AGkzc2UvfE5TCoCXqq7Jyt6SOXjsIlpqF4A==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-3.6.0.tgz", + "integrity": "sha512-taghDxuLhbDAD1U5Fk8vF+MnR0yiFE9Z3v2/bYScFb0N1I9SK8eKHkdJl1DAD48OGFDMFTeOTX0z7g0W6SYUXw==", "requires": { "@types/eslint-visitor-keys": "^1.0.0", - "@typescript-eslint/experimental-utils": "3.2.0", - "@typescript-eslint/typescript-estree": "3.2.0", + "@typescript-eslint/experimental-utils": "3.6.0", + "@typescript-eslint/types": "3.6.0", + "@typescript-eslint/typescript-estree": "3.6.0", "eslint-visitor-keys": "^1.1.0" } }, + "@typescript-eslint/types": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-3.6.0.tgz", + "integrity": "sha512-JwVj74ohUSt0ZPG+LZ7hb95fW8DFOqBuR6gE7qzq55KDI3BepqsCtHfBIoa0+Xi1AI7fq5nCu2VQL8z4eYftqg==" + }, "@typescript-eslint/typescript-estree": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-3.2.0.tgz", - "integrity": "sha512-uh+Y2QO7dxNrdLw7mVnjUqkwO/InxEqwN0wF+Za6eo3coxls9aH9kQ/5rSvW2GcNanebRTmsT5w1/92lAOb1bA==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-3.6.0.tgz", + "integrity": "sha512-G57NDSABHjvob7zVV09ehWyD1K6/YUKjz5+AufObFyjNO4DVmKejj47MHjVHHlZZKgmpJD2yyH9lfCXHrPITFg==", "requires": { + "@typescript-eslint/types": "3.6.0", + "@typescript-eslint/visitor-keys": "3.6.0", "debug": "^4.1.1", - "eslint-visitor-keys": "^1.1.0", "glob": "^7.1.6", "is-glob": "^4.0.1", "lodash": "^4.17.15", @@ -4326,6 +4144,14 @@ "tsutils": "^3.17.1" } }, + "@typescript-eslint/visitor-keys": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-3.6.0.tgz", + "integrity": "sha512-p1izllL2Ubwunite0ITjubuMQRBGgjdVYwyG7lXPX8GbrA6qF0uwSRz9MnXZaHMxID4948gX0Ez8v9tUDi/KfQ==", + "requires": { + "eslint-visitor-keys": "^1.1.0" + } + }, "@webassemblyjs/ast": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", @@ -4645,9 +4471,9 @@ "integrity": "sha512-AI+BjTeGt2+WFk4eWcqbQ7snZpDBt8SaLlj0RT2h5xfdWaiy51OjYvqwMrNzJLGy8iOAL6nKDITWO+rd4MkYEA==" }, "ansi-colors": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.4.tgz", - "integrity": "sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA==" + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", + "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==" }, "ansi-escapes": { "version": "4.3.1", @@ -4849,12 +4675,22 @@ } }, "aria-query": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-3.0.0.tgz", - "integrity": "sha1-ZbP8wcoRVajJrmTW7uKX8V1RM8w=", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-4.2.2.tgz", + "integrity": "sha512-o/HelwhuKpTj/frsOsbNLNgnNGVIFsVP/SW2BSF14gVl7kAfMOJ6/8wUAUvG1R1NHKrfG+2sHZTu0yauT1qBrA==", "requires": { - "ast-types-flow": "0.0.7", - "commander": "^2.11.0" + "@babel/runtime": "^7.10.2", + "@babel/runtime-corejs3": "^7.10.2" + }, + "dependencies": { + "@babel/runtime": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.10.4.tgz", + "integrity": "sha512-UpTN5yUJr9b4EX2CnGNWIvER7Ab83ibv0pcvvHc4UOdrBI5jb8bj+32cCwPX6xu0mt2daFNjYhoi+X7beH0RSw==", + "requires": { + "regenerator-runtime": "^0.13.4" + } + } } }, "arity-n": { @@ -4882,11 +4718,6 @@ "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=" }, - "array-differ": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz", - "integrity": "sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg==" - }, "array-find-index": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", @@ -4908,12 +4739,9 @@ } }, "array-union": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", - "requires": { - "array-uniq": "^1.0.1" - } + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==" }, "array-uniq": { "version": "1.0.3", @@ -4925,6 +4753,16 @@ "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" }, + "array.prototype.flatmap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.3.tgz", + "integrity": "sha512-OOEk+lkePcg+ODXIpvuU9PAryCikCJyo7GlDG1upleEpQRx6mzL9puEBkozQ5iAx20KV0l3DbyQwqciJtqe5Pg==", + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0-next.1", + "function-bind": "^1.1.1" + } + }, "arrify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", @@ -5001,19 +4839,24 @@ "integrity": "sha512-Hdw8qdNiqdJ8LqT0iK0sVzkFbzg6fhnQqqfWhBDxcHZvU75+B+ayzTy8x+k5Ix0Y92XOhOUlx74ps+bA6BeYMQ==" }, "autoprefixer": { - "version": "9.8.0", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.8.0.tgz", - "integrity": "sha512-D96ZiIHXbDmU02dBaemyAg53ez+6F5yZmapmgKcjm35yEe1uVDYI8hGW3VYoGRaG290ZFf91YxHrR518vC0u/A==", + "version": "9.8.4", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.8.4.tgz", + "integrity": "sha512-84aYfXlpUe45lvmS+HoAWKCkirI/sw4JK0/bTeeqgHYco3dcsOn0NqdejISjptsYwNji/21dnkDri9PsYKk89A==", "requires": { "browserslist": "^4.12.0", - "caniuse-lite": "^1.0.30001061", - "chalk": "^2.4.2", + "caniuse-lite": "^1.0.30001087", + "colorette": "^1.2.0", "normalize-range": "^0.1.2", "num2fraction": "^1.2.2", - "postcss": "^7.0.30", + "postcss": "^7.0.32", "postcss-value-parser": "^4.1.0" }, "dependencies": { + "caniuse-lite": { + "version": "1.0.30001096", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001096.tgz", + "integrity": "sha512-PFTw9UyVfbkcMEFs82q8XVlRayj7HKvnhu5BLcmjGpv+SNyiWasCcWXPGJuO0rK0dhLRDJmtZcJ+LHUfypbw1w==" + }, "chalk": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", @@ -5022,10 +4865,48 @@ "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", "supports-color": "^5.3.0" + }, + "dependencies": { + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss": { + "version": "7.0.32", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.32.tgz", + "integrity": "sha512-03eXong5NLnNCD05xscnGKGDZ98CyzoqPSMjOe6SuoQY7Z2hIj0Ld1g/O/UQRuOle2aRtiIRDg9tDcTGAkLfKw==", + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "requires": { + "has-flag": "^3.0.0" } } } }, + "axe-core": { + "version": "3.5.5", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-3.5.5.tgz", + "integrity": "sha512-5P0QZ6J5xGikH780pghEdbEKijCTrruK9KxtPZCFWUpef0f6GipO+xEZ5GKCb020mmqgbiNO6TcA55CriL784Q==" + }, "axios": { "version": "0.18.1", "resolved": "https://registry.npmjs.org/axios/-/axios-0.18.1.tgz", @@ -5044,9 +4925,9 @@ } }, "axobject-query": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.1.2.tgz", - "integrity": "sha512-ICt34ZmrVt8UQnvPl6TVyDTkmhXmAyAT4Jh5ugfGUX4MOrZ+U/ZY6/sdylRw3qGNr9Ub5AJsaHeDMzNLehRdOQ==" + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz", + "integrity": "sha512-Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA==" }, "babel-code-frame": { "version": "6.26.0", @@ -5114,12 +4995,12 @@ } }, "babel-plugin-apply-mdx-type-prop": { - "version": "1.6.5", - "resolved": "https://registry.npmjs.org/babel-plugin-apply-mdx-type-prop/-/babel-plugin-apply-mdx-type-prop-1.6.5.tgz", - "integrity": "sha512-Bs2hv/bYFTJyhBqvsWOsceFyPXAhVM1gvwF8fIm6GeXYTQV+sY+qRR5TClamgr3OEsD8ZApmw+kxJSHgJggVyw==", + "version": "1.6.6", + "resolved": "https://registry.npmjs.org/babel-plugin-apply-mdx-type-prop/-/babel-plugin-apply-mdx-type-prop-1.6.6.tgz", + "integrity": "sha512-rUzVvkQa8/9M63OZT6qQQ1bS8P0ozhXp9e5uJ3RwRJF5Me7s4nZK5SYhyNHYc0BkAflWnCOGMP3oPQUfuyB8tg==", "requires": { "@babel/helper-plugin-utils": "7.8.3", - "@mdx-js/util": "^1.6.5" + "@mdx-js/util": "^1.6.6" } }, "babel-plugin-dynamic-import-node": { @@ -5131,9 +5012,9 @@ } }, "babel-plugin-extract-import-names": { - "version": "1.6.5", - "resolved": "https://registry.npmjs.org/babel-plugin-extract-import-names/-/babel-plugin-extract-import-names-1.6.5.tgz", - "integrity": "sha512-rrNoCZ1DHMdy3vuihvkuO2AjE2DVFrI78e61W7eVsgpNTbG0KO1UESQwXMTlS3v1PMnlEJjdvoteRAkatEkWFQ==", + "version": "1.6.6", + "resolved": "https://registry.npmjs.org/babel-plugin-extract-import-names/-/babel-plugin-extract-import-names-1.6.6.tgz", + "integrity": "sha512-UtMuiQJnhVPAGE2+pDe7Nc9NVEmDdqGTN74BtRALgH+7oag88RpxFLOSiA+u5mFkFg741wW9Ut5KiyJpksEj/g==", "requires": { "@babel/helper-plugin-utils": "7.8.3" } @@ -5561,10 +5442,26 @@ "responselike": "1.0.2" }, "dependencies": { + "clone-response": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", + "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", + "requires": { + "mimic-response": "^1.0.0" + } + }, "lowercase-keys": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.0.tgz", "integrity": "sha1-TjNms55/VFfjXxMkvfb4jQv8cwY=" + }, + "responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", + "requires": { + "lowercase-keys": "^1.0.0" + } } } }, @@ -5628,10 +5525,46 @@ "url-to-options": "^1.0.1" }, "dependencies": { + "decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "requires": { + "mimic-response": "^1.0.0" + } + }, + "duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=" + }, + "is-retry-allowed": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz", + "integrity": "sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==" + }, + "lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==" + }, "pify": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" + }, + "prepend-http": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=" + }, + "url-parse-lax": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", + "requires": { + "prepend-http": "^2.0.0" + } } } }, @@ -5651,6 +5584,13 @@ "integrity": "sha512-eguHnq22OE3uVoSYG0LVWNP+4ppamWr9+zWBe1bsNcovIMy6huUJFPgy4mGwCd/rnl3vOLGW1MTlu4c57CT1xA==", "requires": { "json-buffer": "3.0.0" + }, + "dependencies": { + "json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=" + } } }, "normalize-url": { @@ -5661,6 +5601,13 @@ "prepend-http": "^2.0.0", "query-string": "^5.0.1", "sort-keys": "^2.0.0" + }, + "dependencies": { + "prepend-http": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=" + } } }, "p-cancelable": { @@ -6470,6 +6417,16 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + }, "slice-ansi": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", @@ -6479,13 +6436,23 @@ "astral-regex": "^2.0.0", "is-fullwidth-code-point": "^3.0.0" } + }, + "string-width": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } } } }, "cli-width": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz", - "integrity": "sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==" + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==" }, "clipboard": { "version": "2.0.6", @@ -6513,26 +6480,6 @@ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, "strip-ansi": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", @@ -6653,6 +6600,11 @@ "simple-swizzle": "^0.2.2" } }, + "colorette": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.1.tgz", + "integrity": "sha512-puCDz0CzydiSYOrnXpz/PKd69zRrribezjtE9yd4zvytoRc8+RY/KJPvtPFKZS3E3wP6neGyMe0vOTlHO5L3Pw==" + }, "comma-separated-tokens": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-1.0.8.tgz", @@ -6861,12 +6813,11 @@ } }, "cross-fetch": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-2.2.2.tgz", - "integrity": "sha1-pH/09/xxLauo9qaVoRyUhEDUVyM=", + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.0.5.tgz", + "integrity": "sha512-FFLcLtraisj5eteosnX1gf01qYDCOc4fDy0+euOt8Kn9YBY2NtXL/pCoYPavw24NIQkQqm5ZOLsGD5Zzj0gyew==", "requires": { - "node-fetch": "2.1.2", - "whatwg-fetch": "2.0.4" + "node-fetch": "2.6.0" } }, "cross-spawn": { @@ -7543,27 +7494,11 @@ } }, "dir-glob": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.0.0.tgz", - "integrity": "sha512-37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", "requires": { - "arrify": "^1.0.1", - "path-type": "^3.0.0" - }, - "dependencies": { - "path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", - "requires": { - "pify": "^3.0.0" - } - }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" - } + "path-type": "^4.0.0" } }, "doctrine": { @@ -7691,6 +7626,31 @@ "timed-out": "^4.0.0", "url-parse-lax": "^1.0.0", "url-to-options": "^1.0.1" + }, + "dependencies": { + "decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "requires": { + "mimic-response": "^1.0.0" + } + }, + "duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=" + }, + "is-retry-allowed": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz", + "integrity": "sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==" + }, + "lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==" + } } }, "is-plain-obj": { @@ -7833,11 +7793,11 @@ } }, "enquirer": { - "version": "2.3.5", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.5.tgz", - "integrity": "sha512-BNT1C08P9XD0vNg3J475yIUG+mVdp9T6towYFHUv897X0KoHBjB1shyrNmhmtHWKP17iSWgo7Gqh7BBuzLZMSA==", + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", "requires": { - "ansi-colors": "^3.2.1" + "ansi-colors": "^4.1.1" } }, "entities": { @@ -7937,9 +7897,9 @@ "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" }, "eslint": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.2.0.tgz", - "integrity": "sha512-B3BtEyaDKC5MlfDa2Ha8/D6DsS4fju95zs0hjS3HdGazw+LNayai38A25qMppK37wWGWNYSPOR6oYzlz5MHsRQ==", + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.4.0.tgz", + "integrity": "sha512-gU+lxhlPHu45H3JkEGgYhWhkR9wLHHEXC9FbWFnTlEkbKyZKWgWRLgf61E8zWmBuI6g5xKBph9ltg3NtZMVF8g==", "requires": { "@babel/code-frame": "^7.0.0", "ajv": "^6.10.0", @@ -7947,6 +7907,7 @@ "cross-spawn": "^7.0.2", "debug": "^4.0.1", "doctrine": "^3.0.0", + "enquirer": "^2.3.5", "eslint-scope": "^5.1.0", "eslint-utils": "^2.0.0", "eslint-visitor-keys": "^1.2.0", @@ -7960,7 +7921,6 @@ "ignore": "^4.0.6", "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", - "inquirer": "^7.0.0", "is-glob": "^4.0.0", "js-yaml": "^3.13.1", "json-stable-stringify-without-jsonify": "^1.0.1", @@ -7998,52 +7958,62 @@ } }, "eslint-plugin-jsx-a11y": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.2.3.tgz", - "integrity": "sha512-CawzfGt9w83tyuVekn0GDPU9ytYtxyxyFZ3aSWROmnRRFQFT2BiPJd7jvRdzNDi6oLWaS2asMeYSNMjWTV4eNg==", + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.3.1.tgz", + "integrity": "sha512-i1S+P+c3HOlBJzMFORRbC58tHa65Kbo8b52/TwCwSKLohwvpfT5rm2GjGWzOHTEuq4xxf2aRlHHTtmExDQOP+g==", "requires": { - "@babel/runtime": "^7.4.5", - "aria-query": "^3.0.0", - "array-includes": "^3.0.3", + "@babel/runtime": "^7.10.2", + "aria-query": "^4.2.2", + "array-includes": "^3.1.1", "ast-types-flow": "^0.0.7", - "axobject-query": "^2.0.2", - "damerau-levenshtein": "^1.0.4", - "emoji-regex": "^7.0.2", + "axe-core": "^3.5.4", + "axobject-query": "^2.1.2", + "damerau-levenshtein": "^1.0.6", + "emoji-regex": "^9.0.0", "has": "^1.0.3", - "jsx-ast-utils": "^2.2.1" + "jsx-ast-utils": "^2.4.1", + "language-tags": "^1.0.5" }, "dependencies": { + "@babel/runtime": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.10.4.tgz", + "integrity": "sha512-UpTN5yUJr9b4EX2CnGNWIvER7Ab83ibv0pcvvHc4UOdrBI5jb8bj+32cCwPX6xu0mt2daFNjYhoi+X7beH0RSw==", + "requires": { + "regenerator-runtime": "^0.13.4" + } + }, "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.0.0.tgz", + "integrity": "sha512-6p1NII1Vm62wni/VR/cUMauVQoxmLVb9csqQlvLz+hO2gk8U2UYDfXHQSUYIBKmZwAKz867IDqG7B+u0mj+M6w==" } } }, "eslint-plugin-prettier": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-3.1.3.tgz", - "integrity": "sha512-+HG5jmu/dN3ZV3T6eCD7a4BlAySdN7mLIbJYo0z1cFQuI+r2DiTJEFeF68ots93PsnrMxbzIZ2S/ieX+mkrBeQ==", + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-3.1.4.tgz", + "integrity": "sha512-jZDa8z76klRqo+TdGDTFJSavwbnWK2ZpqGKNZ+VvweMW516pDUMmQ2koXvxEE4JhzNvTv+radye/bWGBmA6jmg==", "requires": { "prettier-linter-helpers": "^1.0.0" } }, "eslint-plugin-react": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.20.0.tgz", - "integrity": "sha512-rqe1abd0vxMjmbPngo4NaYxTcR3Y4Hrmc/jg4T+sYz63yqlmJRknpEQfmWY+eDWPuMmix6iUIK+mv0zExjeLgA==", + "version": "7.20.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.20.3.tgz", + "integrity": "sha512-txbo090buDeyV0ugF3YMWrzLIUqpYTsWSDZV9xLSmExE1P/Kmgg9++PD931r+KEWS66O1c9R4srLVVHmeHpoAg==", "requires": { "array-includes": "^3.1.1", + "array.prototype.flatmap": "^1.2.3", "doctrine": "^2.1.0", "has": "^1.0.3", - "jsx-ast-utils": "^2.2.3", - "object.entries": "^1.1.1", + "jsx-ast-utils": "^2.4.1", + "object.entries": "^1.1.2", "object.fromentries": "^2.0.2", "object.values": "^1.1.1", "prop-types": "^15.7.2", - "resolve": "^1.15.1", - "string.prototype.matchall": "^4.0.2", - "xregexp": "^4.3.0" + "resolve": "^1.17.0", + "string.prototype.matchall": "^4.0.2" }, "dependencies": { "doctrine": { @@ -8074,9 +8044,9 @@ } }, "eslint-visitor-keys": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.2.0.tgz", - "integrity": "sha512-WFb4ihckKil6hu3Dp798xdzSfddwKKU3+nGniKF6HfeW6OLd2OUDEPP7TcHtB5+QXOKg2s6B2DaMPE1Nn/kxKQ==" + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==" }, "espree": { "version": "7.1.0", @@ -8238,9 +8208,9 @@ } }, "execa": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/execa/-/execa-4.0.2.tgz", - "integrity": "sha512-QI2zLa6CjGWdiQsmSkZoGtDx2N+cQIGb3yNolGTdjSQzydzLgYYf8LRuagp7S7fPimjcrzUDSUFd/MgzELMi4Q==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/execa/-/execa-4.0.3.tgz", + "integrity": "sha512-WFDXGHckXPWZX19t1kCsXzOpqX9LWYNqn4C+HqZlk/V0imTkzJZqf87ZBhvpHaftERYknpk0fjSylnXVlVgI0A==", "requires": { "cross-spawn": "^7.0.0", "get-stream": "^5.0.0", @@ -8477,156 +8447,16 @@ "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==" }, "fast-glob": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-2.2.7.tgz", - "integrity": "sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.4.tgz", + "integrity": "sha512-kr/Oo6PX51265qeuCYsyGypiO5uJFgBS0jksyG7FUeCyQzNwYnzrNIMR1NXfkZXsMYXYLRAHgISHBz8gQcxKHQ==", "requires": { - "@mrmlnc/readdir-enhanced": "^2.2.1", - "@nodelib/fs.stat": "^1.1.2", - "glob-parent": "^3.1.0", - "is-glob": "^4.0.0", - "merge2": "^1.2.3", - "micromatch": "^3.1.10" - }, - "dependencies": { - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", - "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "requires": { - "is-extglob": "^2.1.0" - } - } - } - }, - "is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } - } + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.0", + "merge2": "^1.3.0", + "micromatch": "^4.0.2", + "picomatch": "^2.2.1" } }, "fast-json-stable-stringify": { @@ -9271,28 +9101,22 @@ "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==" }, "globby": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-8.0.2.tgz", - "integrity": "sha512-yTzMmKygLp8RUpG1Ymu2VXPSJQZjNAZPD4ywgYEaG7e4tBJeUQBO8OpXrf1RCNcEs5alsoJYPAMiIHP0cmeC7w==", + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.1.tgz", + "integrity": "sha512-iH9RmgwCmUJHi2z5o2l3eTtGBtXek1OYlHrbcxOYugyHLmAsZrPj43OtHThd62Buh/Vv6VyCBD2bdyWcGNQqoQ==", "requires": { - "array-union": "^1.0.1", - "dir-glob": "2.0.0", - "fast-glob": "^2.0.2", - "glob": "^7.1.2", - "ignore": "^3.3.5", - "pify": "^3.0.0", - "slash": "^1.0.0" + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.1.1", + "ignore": "^5.1.4", + "merge2": "^1.3.0", + "slash": "^3.0.0" }, "dependencies": { "ignore": { - "version": "3.3.10", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", - "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==" - }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" + "version": "5.1.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", + "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==" } } }, @@ -9357,19 +9181,16 @@ "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=" }, "graphql": { - "version": "14.6.0", - "resolved": "https://registry.npmjs.org/graphql/-/graphql-14.6.0.tgz", - "integrity": "sha512-VKzfvHEKybTKjQVpTFrA5yUq2S9ihcZvfJAtsDBBCuV6wauPu1xl/f9ehgVf0FcEJJs4vz6ysb/ZMkGigQZseg==", - "requires": { - "iterall": "^1.2.2" - } + "version": "15.3.0", + "resolved": "https://registry.npmjs.org/graphql/-/graphql-15.3.0.tgz", + "integrity": "sha512-GTCJtzJmkFLWRfFJuoo9RWWa/FfamUHgiFosxi/X1Ani4AVWbeyBenZTNX6dM+7WSbbFfTo/25eh0LLkwHMw2w==" }, "graphql-request": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/graphql-request/-/graphql-request-1.8.2.tgz", - "integrity": "sha512-dDX2M+VMsxXFCmUX0Vo0TopIZIX4ggzOtiCsThgtrKR4niiaagsGTDIHj3fsOMFETpa064vzovI+4YV4QnMbcg==", + "version": "2.1.0-next.1", + "resolved": "https://registry.npmjs.org/graphql-request/-/graphql-request-2.1.0-next.1.tgz", + "integrity": "sha512-9Qr+z4FCzxwFrnG9BE366v9KcgRXLv2bmFkj3RHfSQNDgPHCUM2mA83bwjhgxg4jig/F8X/pcceOZPwRkMleKQ==", "requires": { - "cross-fetch": "2.2.2" + "cross-fetch": "^3.0.4" } }, "gray-matter": { @@ -9627,9 +9448,9 @@ } }, "hast-util-to-string": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/hast-util-to-string/-/hast-util-to-string-1.0.3.tgz", - "integrity": "sha512-3lDgDE5OdpTfP3aFeKRWEwdIZ4vprztvp+AoD+RhF7uGOBs1yBDWZFadxnjcUV4KCoI3vB9A7gdFO98hEXA90w==" + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/hast-util-to-string/-/hast-util-to-string-1.0.4.tgz", + "integrity": "sha512-eK0MxRX47AV2eZ+Lyr18DCpQgodvaS3fAQO2+b9Two9F5HEoRPhiUMNzoXArMJfZi2yieFzUBMRl3HNJ3Jus3w==" }, "hast-util-to-text": { "version": "2.0.0", @@ -9837,6 +9658,227 @@ "p-pipe": "^1.1.0", "pify": "^4.0.1", "replace-ext": "^1.0.0" + }, + "dependencies": { + "@nodelib/fs.stat": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz", + "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==" + }, + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "requires": { + "array-uniq": "^1.0.1" + } + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "dir-glob": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.0.0.tgz", + "integrity": "sha512-37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag==", + "requires": { + "arrify": "^1.0.1", + "path-type": "^3.0.0" + } + }, + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "fast-glob": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-2.2.7.tgz", + "integrity": "sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw==", + "requires": { + "@mrmlnc/readdir-enhanced": "^2.2.1", + "@nodelib/fs.stat": "^1.1.2", + "glob-parent": "^3.1.0", + "is-glob": "^4.0.0", + "merge2": "^1.2.3", + "micromatch": "^3.1.10" + } + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "requires": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "globby": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-8.0.2.tgz", + "integrity": "sha512-yTzMmKygLp8RUpG1Ymu2VXPSJQZjNAZPD4ywgYEaG7e4tBJeUQBO8OpXrf1RCNcEs5alsoJYPAMiIHP0cmeC7w==", + "requires": { + "array-union": "^1.0.1", + "dir-glob": "2.0.0", + "fast-glob": "^2.0.2", + "glob": "^7.1.2", + "ignore": "^3.3.5", + "pify": "^3.0.0", + "slash": "^1.0.0" + }, + "dependencies": { + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" + } + } + }, + "ignore": { + "version": "3.3.10", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", + "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==" + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "requires": { + "pify": "^3.0.0" + }, + "dependencies": { + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" + } + } + }, + "slash": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", + "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=" + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + } } }, "imagemin-mozjpeg": { @@ -10020,20 +10062,15 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" - }, "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" }, "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" }, "log-update": { "version": "3.4.0", @@ -10121,23 +10158,6 @@ "ansi-styles": "^4.0.0", "astral-regex": "^2.0.0", "is-fullwidth-code-point": "^3.0.0" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - } - } - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" } }, "strip-ansi": { @@ -10189,18 +10209,18 @@ } }, "ink-spinner": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ink-spinner/-/ink-spinner-3.0.1.tgz", - "integrity": "sha512-AVR4Z/NXDQ7dT5ltWcCzFS9Dd4T8eaO//E2UO8VYNiJcZpPCSJ11o5A0UVPcMlZxGbGD6ikUFDR3ZgPUQk5haQ==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/ink-spinner/-/ink-spinner-3.1.0.tgz", + "integrity": "sha512-sPqmE4qeJ43vJFk9DGLd0wIqhMBAr3129ZqHPt7b847fVl+YTZ3g96khI82Db+FYE7v/Fc5B3lp4ZNtJfqpRUg==", "requires": { "cli-spinners": "^1.0.0", "prop-types": "^15.5.10" } }, "ink-text-input": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/ink-text-input/-/ink-text-input-3.2.2.tgz", - "integrity": "sha512-h4EEJYOO88uK16U1mhgmJBMYeEy8ZmkrdV6gybyluCbAOQtAyND/WuRQVIKhe7D2dtYd2wwYTC648nuAxwltPQ==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/ink-text-input/-/ink-text-input-3.3.0.tgz", + "integrity": "sha512-gO4wrOf2ie3YuEARTIwGlw37lMjFn3Gk6CKIDrMlHb46WFMagZU7DplohjM24zynlqfnXA5UDEIfC2NBcvD8kg==", "requires": { "chalk": "^3.0.0", "prop-types": "^15.5.10" @@ -10258,20 +10278,20 @@ "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==" }, "inquirer": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.1.0.tgz", - "integrity": "sha512-5fJMWEmikSYu0nv/flMc475MhGbB7TSPd/2IpFV4I4rMklboCH2rQjYY5kKiYGHqUF9gvaambupcJFFG9dvReg==", + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.0.tgz", + "integrity": "sha512-K+LZp6L/6eE5swqIcVXrxl21aGDU4S50gKH0/d96OMQnSBCyGyZl/oZhbkVmdp5sBoINHd4xZvFSARh2dk6DWA==", "requires": { "ansi-escapes": "^4.2.1", - "chalk": "^3.0.0", + "chalk": "^4.1.0", "cli-cursor": "^3.1.0", - "cli-width": "^2.0.0", + "cli-width": "^3.0.0", "external-editor": "^3.0.3", "figures": "^3.0.0", "lodash": "^4.17.15", "mute-stream": "0.0.8", "run-async": "^2.4.0", - "rxjs": "^6.5.3", + "rxjs": "^6.6.0", "string-width": "^4.1.0", "strip-ansi": "^6.0.0", "through": "^2.3.6" @@ -10287,9 +10307,9 @@ } }, "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", "requires": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -10308,11 +10328,31 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + }, + "string-width": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, "supports-color": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", @@ -10527,9 +10567,9 @@ "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==" }, "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" }, "is-glob": { "version": "4.0.1", @@ -10722,11 +10762,6 @@ "is-object": "^1.0.1" } }, - "iterall": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/iterall/-/iterall-1.3.0.tgz", - "integrity": "sha512-QZ9qOMdF+QLHxy1QIpUHUU1D5pS2CG2P69LF6L6CPjPYA/XMOmKV3PZpawHoAjHNyB0swdVTRxdYT4tbBbxqwg==" - }, "jake": { "version": "10.8.2", "resolved": "https://registry.npmjs.org/jake/-/jake-10.8.2.tgz", @@ -10896,6 +10931,19 @@ "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.19.0.tgz", "integrity": "sha512-eYboRV94Vco725nKMlpkn3nV2+96p9c3gKXRsYqAJSswSENvBhN7n5L+uDhY58xQa0UukWsDMTGELzmD8Q+wTA==" }, + "language-subtag-registry": { + "version": "0.3.20", + "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.20.tgz", + "integrity": "sha512-KPMwROklF4tEx283Xw0pNKtfTj1gZ4UByp4EsIFWLgBavJltF4TiYPc39k06zSTsLzxTVXXDSpbwaQXaFB4Qeg==" + }, + "language-tags": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.5.tgz", + "integrity": "sha1-0yHbxNowuovzAk4ED6XBRmH5GTo=", + "requires": { + "language-subtag-registry": "~0.3.2" + } + }, "latest-version": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", @@ -10932,9 +10980,9 @@ "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=" }, "lint-staged": { - "version": "10.2.9", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-10.2.9.tgz", - "integrity": "sha512-ziRAuXEqvJLSXg43ezBpHxRW8FOJCXISaXU//BWrxRrp5cBdRkIx7g5IsB3OI45xYGE0S6cOacfekSjDyDKF2g==", + "version": "10.2.11", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-10.2.11.tgz", + "integrity": "sha512-LRRrSogzbixYaZItE2APaS4l2eJMjjf5MbclRZpLJtcQJShcvUzKXsNeZgsLIZ0H0+fg2tL4B59fU9wHIHtFIA==", "requires": { "chalk": "^4.0.0", "cli-truncate": "2.1.0", @@ -10961,9 +11009,9 @@ } }, "listr2": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/listr2/-/listr2-2.1.8.tgz", - "integrity": "sha512-Op+hheiChfAphkJ5qUxZtHgyjlX9iNnAeFS/S134xw7mVSg0YVrQo1IY4/K+ElY6XgOPg2Ij4z07urUXR+YEew==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-2.2.0.tgz", + "integrity": "sha512-Q8qbd7rgmEwDo1nSyHaWQeztfGsdL6rb4uh7BA+Q80AZiDET5rVntiU1+13mu2ZTDVaBVbvAD1Db11rnu3l9sg==", "requires": { "chalk": "^4.0.0", "cli-truncate": "^2.1.0", @@ -11129,6 +11177,11 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + }, "slice-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", @@ -11692,40 +11745,11 @@ "logalot": "^2.1.0" } }, - "mri": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/mri/-/mri-1.1.5.tgz", - "integrity": "sha512-d2RKzMD4JNyHMbnbWnznPaa8vbdlq/4pNZ3IgdaGrVbBhebBsGUUE/6qorTMYNS6TwuH3ilfOlD2bf4Igh8CKg==" - }, "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" }, - "multimatch": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-4.0.0.tgz", - "integrity": "sha512-lDmx79y1z6i7RNx0ZGCPq1bzJ6ZoDDKbvh7jxr9SJcWLkShMzXrHbYVpTdnhNM5MXpDUxCQ4DgqVttVXlBgiBQ==", - "requires": { - "@types/minimatch": "^3.0.3", - "array-differ": "^3.0.0", - "array-union": "^2.1.0", - "arrify": "^2.0.1", - "minimatch": "^3.0.4" - }, - "dependencies": { - "array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==" - }, - "arrify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", - "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==" - } - } - }, "mute-stream": { "version": "0.0.8", "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", @@ -11998,13 +12022,6 @@ "requires": { "micromatch": "^4.0.2", "slash": "^3.0.0" - }, - "dependencies": { - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==" - } } }, "nice-try": { @@ -12013,9 +12030,9 @@ "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==" }, "node-fetch": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.1.2.tgz", - "integrity": "sha1-q4hOjn5X44qUR1POxwb3iNF2i7U=" + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.0.tgz", + "integrity": "sha512-8dG4H5ujfvFiqDmVu9fQ5bOHUC15JMjMY/Zumv26oOvvVJjM67KF8koCWIabKQ1GJIa9r2mMZscBq/TbdOcmNA==" }, "node-libs-browser": { "version": "2.2.1", @@ -12420,11 +12437,6 @@ "p-timeout": "^1.1.1" } }, - "p-finally": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-2.0.1.tgz", - "integrity": "sha512-vpm09aKwq6H9phqRQzecoDpD8TmVyGw70qmWlyq5onxY7tqyTTFVvxMykxQSQKILBSFlbXpypIw2T1Ml7+DDtw==" - }, "p-is-promise": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-1.1.0.tgz", @@ -13868,107 +13880,10 @@ "fast-diff": "^1.1.2" } }, - "pretty-quick": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pretty-quick/-/pretty-quick-2.0.1.tgz", - "integrity": "sha512-y7bJt77XadjUr+P1uKqZxFWLddvj3SKY6EU4BuQtMxmmEFSMpbN132pUWdSG1g1mtUfO0noBvn7wBf0BVeomHg==", - "requires": { - "chalk": "^2.4.2", - "execa": "^2.1.0", - "find-up": "^4.1.0", - "ignore": "^5.1.4", - "mri": "^1.1.4", - "multimatch": "^4.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "execa": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-2.1.0.tgz", - "integrity": "sha512-Y/URAVapfbYy2Xp/gb6A0E7iR8xeqOCXsuuaoMn7A5PzrXUK84E1gyiEfq0wQd/GHA6GsoHWwhNq8anb0mleIw==", - "requires": { - "cross-spawn": "^7.0.0", - "get-stream": "^5.0.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^3.0.0", - "onetime": "^5.1.0", - "p-finally": "^2.0.0", - "signal-exit": "^3.0.2", - "strip-final-newline": "^2.0.0" - } - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "ignore": { - "version": "5.1.8", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", - "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==" - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "requires": { - "p-locate": "^4.1.0" - } - }, - "npm-run-path": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-3.1.0.tgz", - "integrity": "sha512-Dbl4A/VfiVGLgQv29URL9xshU8XDY1GeLy+fsaZ1AA8JDSfjvr5P5+pzRbWqRSBxk6/DW7MIh8lTM/PaGnP2kg==", - "requires": { - "path-key": "^3.0.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" - } - } - }, "prismjs": { - "version": "1.17.1", - "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.17.1.tgz", - "integrity": "sha512-PrEDJAFdUGbOP6xK/UsfkC5ghJsPJviKgnQOoxaDbBjwc8op68Quupwt1DeAFoG8GImPhiKXAvvsH7wDSLsu1Q==", + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.20.0.tgz", + "integrity": "sha512-AEDjSrVNkynnw6A+B1DsFkd6AVdTnp+/WoUixFRULlCLZVRZlVQMVWio/16jv7G1FscUxQxOQhWwApgbnxr6kQ==", "requires": { "clipboard": "^2.0.0" } @@ -14426,13 +14341,28 @@ "integrity": "sha1-dJrO7H8/34tj+SegSAnpDFwLNGA=" }, "refractor": { - "version": "2.10.1", - "resolved": "https://registry.npmjs.org/refractor/-/refractor-2.10.1.tgz", - "integrity": "sha512-Xh9o7hQiQlDbxo5/XkOX6H+x/q8rmlmZKr97Ie1Q8ZM32IRRd3B/UxuA/yXDW79DBSXGWxm2yRTbcTVmAciJRw==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/refractor/-/refractor-3.0.0.tgz", + "integrity": "sha512-eCGK/oP4VuyW/ERqjMZRZHxl2QsztbkedkYy/SxqE/+Gh1gLaAF17tWIOcVJDiyGhar1NZy/0B9dFef7J0+FDw==", "requires": { "hastscript": "^5.0.0", - "parse-entities": "^1.1.2", - "prismjs": "~1.17.0" + "parse-entities": "^2.0.0", + "prismjs": "~1.20.0" + }, + "dependencies": { + "parse-entities": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-2.0.0.tgz", + "integrity": "sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==", + "requires": { + "character-entities": "^1.0.0", + "character-entities-legacy": "^1.0.0", + "character-reference-invalid": "^1.0.0", + "is-alphanumerical": "^1.0.0", + "is-decimal": "^1.0.0", + "is-hexadecimal": "^1.0.0" + } + } } }, "regenerate": { @@ -14615,56 +14545,20 @@ "integrity": "sha512-FokDg5BmlPbKaAdD4IfSVuRgYH6FBPeIn0zxZA6oZ6epc4qOSjoSJPyhsH0H/WKABuaCVMJuF5O2STti6UmBQw==" }, "remark-mdx": { - "version": "1.6.5", - "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-1.6.5.tgz", - "integrity": "sha512-zItwP3xcVQAEPJTHseFh+KZEyJ31+pbVJMOMzognqTuZ2zfzIR4Xrg0BAx6eo+paV4fHne/5vi2ugWtCeOaBRA==", + "version": "1.6.6", + "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-1.6.6.tgz", + "integrity": "sha512-BkR7SjP+3OvrCsWGlYy1tWEsZ8aQ86x+i7XWbW79g73Ws/cCaeVsEn0ZxAzzoTRH+PJWVU7Mbe64GdejEyKr2g==", "requires": { "@babel/core": "7.9.6", "@babel/helper-plugin-utils": "7.8.3", "@babel/plugin-proposal-object-rest-spread": "7.9.6", "@babel/plugin-syntax-jsx": "7.8.3", - "@mdx-js/util": "^1.6.5", + "@mdx-js/util": "^1.6.6", "is-alphabetical": "1.0.4", "remark-parse": "8.0.2", "unified": "9.0.0" }, "dependencies": { - "parse-entities": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-2.0.0.tgz", - "integrity": "sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==", - "requires": { - "character-entities": "^1.0.0", - "character-entities-legacy": "^1.0.0", - "character-reference-invalid": "^1.0.0", - "is-alphanumerical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-hexadecimal": "^1.0.0" - } - }, - "remark-parse": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-8.0.2.tgz", - "integrity": "sha512-eMI6kMRjsAGpMXXBAywJwiwAse+KNpmt+BK55Oofy4KvBZEqUDj6mWbGLJZrujoPIPPxDXzn3T9baRlpsm2jnQ==", - "requires": { - "ccount": "^1.0.0", - "collapse-white-space": "^1.0.2", - "is-alphabetical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-whitespace-character": "^1.0.0", - "is-word-character": "^1.0.0", - "markdown-escapes": "^1.0.0", - "parse-entities": "^2.0.0", - "repeat-string": "^1.5.4", - "state-toggle": "^1.0.0", - "trim": "0.0.1", - "trim-trailing-lines": "^1.0.0", - "unherit": "^1.0.4", - "unist-util-remove-position": "^2.0.0", - "vfile-location": "^3.0.0", - "xtend": "^4.0.1" - } - }, "unified": { "version": "9.0.0", "resolved": "https://registry.npmjs.org/unified/-/unified-9.0.0.tgz", @@ -14677,19 +14571,6 @@ "trough": "^1.0.0", "vfile": "^4.0.0" } - }, - "unist-util-remove-position": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-2.0.1.tgz", - "integrity": "sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA==", - "requires": { - "unist-util-visit": "^2.0.0" - } - }, - "vfile-location": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-3.0.1.tgz", - "integrity": "sha512-yYBO06eeN/Ki6Kh1QAkgzYpWT1d3Qln+ZCtSbJqFExPl1S3y2qqotJQXoh6qEvl/jDlgpUJolBn3PItVnnZRqQ==" } } }, @@ -14997,12 +14878,12 @@ } }, "rivet-graphql": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/rivet-graphql/-/rivet-graphql-0.0.2.tgz", - "integrity": "sha512-l3OVdEx7ZyECF/xIItCkMnyFIX1V/xY+HgrfrxjqEg4L9vz3U/qD853eB8fUa79P4pzFQ3FxRU2t2BKB6cyJTQ==", + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/rivet-graphql/-/rivet-graphql-0.2.0.tgz", + "integrity": "sha512-TUjTvG3gIBwvbE5KZfMszAlTJhhxAGy7vvMlOihDQQJh7kriMOlyegNEKJo2lWfEi/s1LibpuH53IR85lk8LiQ==", "requires": { - "graphql": "^14.5.8", - "graphql-request": "^1.8.2" + "graphql": "^15.3.0", + "graphql-request": "^2.1.0-next.1" } }, "run-async": { @@ -15024,9 +14905,9 @@ } }, "rxjs": { - "version": "6.5.5", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.5.tgz", - "integrity": "sha512-WfQI+1gohdf0Dai/Bbmk5L5ItH5tYqm3ki2c5GdWhKjalzjg93N3avFjVStyZZz+A2Em+ZxKH5bNghw9UeylGQ==", + "version": "6.6.0", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.0.tgz", + "integrity": "sha512-3HMA8z/Oz61DUHe+SdOiQyzIf4tOx5oQHmMir7IZEu6TMqCLHT4LRcmNaUS0NwOz8VLvmmBduMsoaUvMaIiqzg==", "requires": { "tslib": "^1.9.0" } @@ -15370,9 +15251,9 @@ } }, "slash": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=" + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==" }, "slice-ansi": { "version": "2.1.0", @@ -15382,13 +15263,6 @@ "ansi-styles": "^3.2.0", "astral-regex": "^1.0.0", "is-fullwidth-code-point": "^2.0.0" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" - } } }, "slugify": { @@ -15578,9 +15452,9 @@ "integrity": "sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==" }, "spdx-correct": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", - "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", "requires": { "spdx-expression-parse": "^3.0.0", "spdx-license-ids": "^3.0.0" @@ -15835,19 +15709,32 @@ } }, "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" }, "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" + }, "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "requires": { + "ansi-regex": "^4.1.0" + } } } }, @@ -16162,11 +16049,6 @@ "write-file-atomic": "^3.0.3" }, "dependencies": { - "@nodelib/fs.stat": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.3.tgz", - "integrity": "sha512-bQBFruR2TAwoevBEd/NWMoAAtNGzTRgdrqnYCc7dhzfoNvqPzLyqlEQnzZ3kVnNrSp25iyxE00/3h2fqGAGArA==" - }, "ansi-styles": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", @@ -16176,11 +16058,6 @@ "color-convert": "^2.0.1" } }, - "array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==" - }, "arrify": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", @@ -16235,26 +16112,10 @@ "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==" }, - "dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "requires": { - "path-type": "^4.0.0" - } - }, - "fast-glob": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.4.tgz", - "integrity": "sha512-kr/Oo6PX51265qeuCYsyGypiO5uJFgBS0jksyG7FUeCyQzNwYnzrNIMR1NXfkZXsMYXYLRAHgISHBz8gQcxKHQ==", - "requires": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.0", - "merge2": "^1.3.0", - "micromatch": "^4.0.2", - "picomatch": "^2.2.1" - } + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" }, "find-up": { "version": "4.1.0", @@ -16270,19 +16131,6 @@ "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz", "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==" }, - "globby": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.1.tgz", - "integrity": "sha512-iH9RmgwCmUJHi2z5o2l3eTtGBtXek1OYlHrbcxOYugyHLmAsZrPj43OtHThd62Buh/Vv6VyCBD2bdyWcGNQqoQ==", - "requires": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.1.1", - "ignore": "^5.1.4", - "merge2": "^1.3.0", - "slash": "^3.0.0" - } - }, "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -16298,6 +16146,11 @@ "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-4.0.0.tgz", "integrity": "sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==" }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + }, "locate-path": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", @@ -16482,16 +16335,21 @@ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==" }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==" - }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" }, + "string-width": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, "strip-indent": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", @@ -16526,9 +16384,9 @@ "integrity": "sha512-+zjcDbot+zbuxy1UA31k4G2lUG+nHUwnLyii3uT2F09B8kT2YrT9LZYNfMtAWlDidrxr7sFd5HX9EqPHGU3WKA==" }, "stylelint-config-prettier": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/stylelint-config-prettier/-/stylelint-config-prettier-8.0.1.tgz", - "integrity": "sha512-RcjNW7MUaNVqONhJH4+rtlAE3ow/9SsAM0YWV0Lgu3dbTKdWTa/pQXRdFWgoHWpzUKn+9oBKR5x8JdH+20wmgw==" + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/stylelint-config-prettier/-/stylelint-config-prettier-8.0.2.tgz", + "integrity": "sha512-TN1l93iVTXpF9NJstlvP7nOu9zY2k+mN0NSFQ/VEGz15ZIP9ohdDZTtCWHs5LjctAhSAzaILULGbgiM0ItId3A==" }, "stylelint-config-recommended": { "version": "3.0.0", @@ -16730,41 +16588,6 @@ "lodash": "^4.17.14", "slice-ansi": "^2.1.0", "string-width": "^3.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "requires": { - "ansi-regex": "^4.1.0" - } - } } }, "tapable": { @@ -17249,9 +17072,9 @@ } }, "typescript": { - "version": "3.9.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.5.tgz", - "integrity": "sha512-hSAifV3k+i6lEoCJ2k6R2Z/rp/H3+8sdmcn5NrS3/3kE7+RyZXm9aqvxWqjEXHAd8b0pShatpcdMTvEdvAJltQ==" + "version": "3.9.6", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.6.tgz", + "integrity": "sha512-Pspx3oKAPJtjNwE92YS05HQoY7z2SFyOpHo9MqJor3BXAGNaPUs83CuVp9VISFkSjyRfiTpmKuAYGJB7S7hOxw==" }, "typewriter": { "version": "7.1.0", @@ -17305,13 +17128,10 @@ "integrity": "sha512-+O8/qh/Qj8CgC6eYBVBykMrNtp5Gebn4dlGD/kKXVkJNDwyrAwSIqwz8CDf+tsAIWVycKcku6gIXJ0qwx/ZXaQ==" }, "uglify-js": { - "version": "3.9.4", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.9.4.tgz", - "integrity": "sha512-8RZBJq5smLOa7KslsNsVcSH+KOXf1uDU8yqLeNuVKwmT0T3FA0ZoXlinQfRad7SDcbZZRZE4ov+2v71EnxNyCA==", - "optional": true, - "requires": { - "commander": "~2.20.3" - } + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.10.0.tgz", + "integrity": "sha512-Esj5HG5WAyrLIdYU74Z3JdG2PxdIusvj6IWHMtlyESxc7kcDz7zYlYjpnSokn1UbpV0d/QX9fan7gkCNd/9BQA==", + "optional": true }, "unbzip2-stream": { "version": "1.4.3", @@ -18139,11 +17959,6 @@ } } }, - "whatwg-fetch": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.4.tgz", - "integrity": "sha512-dcQ1GWpOD/eEQ97k66aiEVpNnapVj90/+R+SXTPYGHpYBBypfKJEQjLrvMZ7YXbKm21gXd4NcuxUTjiv1YtLng==" - }, "whatwg-url": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz", @@ -18184,6 +17999,28 @@ "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", "requires": { "string-width": "^4.0.0" + }, + "dependencies": { + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + }, + "string-width": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + } } }, "word-wrap": { @@ -18243,6 +18080,26 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + }, + "string-width": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } } } }, @@ -18278,14 +18135,6 @@ "async-limiter": "~1.0.0" } }, - "xregexp": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-4.3.0.tgz", - "integrity": "sha512-7jXDIFXh5yJ/orPn4SXjuVrWWoi4Cr8jfV1eHv9CixKSbU+jY4mxfrBwAuDvupPNKpMUY+FeIqsVw/JLT9+B8g==", - "requires": { - "@babel/runtime-corejs3": "^7.8.3" - } - }, "xtend": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", @@ -18323,16 +18172,6 @@ "yargs-parser": "^13.1.2" }, "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" - }, "find-up": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", @@ -18341,11 +18180,6 @@ "locate-path": "^3.0.0" } }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" - }, "locate-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", @@ -18376,24 +18210,6 @@ "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "requires": { - "ansi-regex": "^4.1.0" - } - }, "yargs-parser": { "version": "13.1.2", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", diff --git a/website/package.json b/website/package.json index 87538ec25b..761d357884 100644 --- a/website/package.json +++ b/website/package.json @@ -4,7 +4,7 @@ "version": "0.0.1", "author": "HashiCorp", "dependencies": { - "@hashicorp/nextjs-scripts": "10.0.2", + "@hashicorp/nextjs-scripts": "11.1.0", "@hashicorp/react-alert": "2.0.1", "@hashicorp/react-alert-banner": "3.1.0", "@hashicorp/react-button": "2.2.1", @@ -36,9 +36,6 @@ "babel-plugin-import-glob-array": "0.2.0", "dotenv": "8.2.0", "gray-matter": "4.0.2", - "imagemin-mozjpeg": "9.0.0", - "imagemin-optipng": "8.0.0", - "imagemin-svgo": "8.0.0", "next": "9.4.4", "nuka-carousel": "4.7.0", "react": "16.13.1", diff --git a/website/pages/api-docs/acl/binding-rules.mdx b/website/pages/api-docs/acl/binding-rules.mdx index a896e73d7b..7f67c2883c 100644 --- a/website/pages/api-docs/acl/binding-rules.mdx +++ b/website/pages/api-docs/acl/binding-rules.mdx @@ -63,7 +63,7 @@ The table below shows this endpoint's support for ] } ``` - + - `BindType=node` - The computed bind name value is used as an `ACLNodeIdentity.NodeName` field in the token that is created. @@ -243,7 +243,7 @@ The table below shows this endpoint's support for ] } ``` - + - `BindType=node` - The computed bind name value is used as an `ACLNodeIdentity.NodeName` field in the token that is created. @@ -254,7 +254,7 @@ The table below shows this endpoint's support for ] } ``` - + - `BindType=role` - The computed bind name value is used as a `RoleLink.Name` field in the token that is created. This binding rule will only apply if a role with the given name exists at login-time. If it does not then this diff --git a/website/pages/api-docs/acl/roles.mdx b/website/pages/api-docs/acl/roles.mdx index 544633fd08..c9e24a95cf 100644 --- a/website/pages/api-docs/acl/roles.mdx +++ b/website/pages/api-docs/acl/roles.mdx @@ -338,7 +338,7 @@ The table below shows this endpoint's support for - `NodeIdentities` `(array)` - The list of [node identities](/docs/acl/acl-system#acl-node-identities) that should be applied to the role. Added in Consul 1.8.1. - + - `Namespace` `(string: "")` - Specifies the namespace of the role to update. If not provided in the JSON body, the value of the `ns` URL query parameter or in the `X-Consul-Namespace` header will be used. diff --git a/website/pages/api-docs/catalog.mdx b/website/pages/api-docs/catalog.mdx index 1790eaa29c..33a1f86a7a 100644 --- a/website/pages/api-docs/catalog.mdx +++ b/website/pages/api-docs/catalog.mdx @@ -906,8 +906,8 @@ top level object. The following selectors and filter operations are supported: This endpoint returns the services associated with an ingress gateway or terminating gateway. -| Method | Path | Produces | -| ------ | ------------------------------ | ------------------ | +| Method | Path | Produces | +| ------ | ------------------------------------ | ------------------ | | `GET` | `/catalog/gateway-services/:gateway` | `application/json` | The table below shows this endpoint's support for @@ -916,8 +916,8 @@ The table below shows this endpoint's support for [agent caching](/api/features/caching), and [required ACLs](/api#authentication). -| Blocking Queries | Consistency Modes | Agent Caching | ACL Required | -| ---------------- | ----------------- | ------------- | ------------------------ | +| Blocking Queries | Consistency Modes | Agent Caching | ACL Required | +| ---------------- | ----------------- | ------------- | -------------- | | `YES` | `all` | `none` | `service:read` | ### Parameters @@ -962,7 +962,7 @@ $ curl \ "SNI": "api.my-domain", "CreateIndex": 16, "ModifyIndex": 16 -}, + }, { "Gateway": { "Name": "my-terminating-gateway", @@ -993,7 +993,7 @@ $ curl \ "GatewayKind": "ingress-gateway", "Port": 8888, "Protocol": "http", - "Hosts": ["api.mydomain.com"], + "Hosts": ["api.mydomain.com"], "CreateIndex": 15, "ModifyIndex": 15 }, diff --git a/website/pages/api-docs/config.mdx b/website/pages/api-docs/config.mdx index 85b63ea204..61125a8c8f 100644 --- a/website/pages/api-docs/config.mdx +++ b/website/pages/api-docs/config.mdx @@ -39,7 +39,7 @@ The table below shows this endpoint's support for

| Config Entry Kind | Required ACL | -| ----------------- | ---------------- | +| ------------------- | ---------------- | | ingress-gateway | `operator:write` | | proxy-defaults | `operator:write` | | service-defaults | `service:write` | @@ -104,15 +104,15 @@ The table below shows this endpoint's support for 1 The ACL required depends on the config entry kind being read: -| Config Entry Kind | Required ACL | -| ----------------- | ---------------- | -| ingress-gateway | `service:read` | -| proxy-defaults | `` | -| service-defaults | `service:read` | -| service-resolver | `service:read` | -| service-router | `service:read` | -| service-splitter | `service:read` | -| terminating-gateway | `service:read` | +| Config Entry Kind | Required ACL | +| ------------------- | -------------- | +| ingress-gateway | `service:read` | +| proxy-defaults | `` | +| service-defaults | `service:read` | +| service-resolver | `service:read` | +| service-router | `service:read` | +| service-splitter | `service:read` | +| terminating-gateway | `service:read` | ### Parameters @@ -171,15 +171,15 @@ The table below shows this endpoint's support for 1 The ACL required depends on the config entry kind being read: -| Config Entry Kind | Required ACL | -| ----------------- | ---------------- | -| ingress-gateway | `service:read` | -| proxy-defaults | `` | -| service-defaults | `service:read` | -| service-resolver | `service:read` | -| service-router | `service:read` | -| service-splitter | `service:read` | -| terminating-gateway | `service:read` | +| Config Entry Kind | Required ACL | +| ------------------- | -------------- | +| ingress-gateway | `service:read` | +| proxy-defaults | `` | +| service-defaults | `service:read` | +| service-resolver | `service:read` | +| service-router | `service:read` | +| service-splitter | `service:read` | +| terminating-gateway | `service:read` | ### Parameters @@ -245,7 +245,7 @@ The table below shows this endpoint's support for 1 The ACL required depends on the config entry kind being deleted: | Config Entry Kind | Required ACL | -| ----------------- | ---------------- | +| ------------------- | ---------------- | | ingress-gateway | `operator:write` | | proxy-defaults | `operator:write` | | service-defaults | `service:write` | diff --git a/website/pages/api-docs/connect/intentions.mdx b/website/pages/api-docs/connect/intentions.mdx index d54c0e00f0..91ae0f5208 100644 --- a/website/pages/api-docs/connect/intentions.mdx +++ b/website/pages/api-docs/connect/intentions.mdx @@ -51,14 +51,14 @@ The table below shows this endpoint's support for service doesn't need to be registered. - `SourceNS` `(string: "")` - The namespace for the - `SourceName` parameter. + `SourceName` parameter. - `DestinationName` `(string: )` - The destination of the intention. The intention destination is always a Consul service, unlike the source. The service doesn't need to be registered. - `DestinationNS` `(string: "")` - The namespace for the - `DestinationName` parameter. + `DestinationName` parameter. - `SourceType` `(string: )` - The type for the `SourceName` value. This can be only "consul" today to represent a Consul service. @@ -75,9 +75,9 @@ The table below shows this endpoint's support for - `ns` `(string: "")` - Specifies the default namespace to use when `SourceNS` or `DestinationNS` are omitted or empty. If not provided at all, the default namespace will be inherited from the - request's ACL token or will default to the `default` namespace. + request's ACL token or will default to the `default` namespace. This value may be provided by either the `ns` URL query parameter or in the - `X-Consul-Namespace` header. + `X-Consul-Namespace` header. Added in Consul 1.9.0. ### Sample Payload @@ -208,9 +208,9 @@ The table below shows this endpoint's support for - `ns` `(string: "")` - Specifies the default namespace to use when `source` or `destination` parameters lack namespaces. If not provided at all, the default namespace will be inherited from the - request's ACL token or will default to the `default` namespace. + request's ACL token or will default to the `default` namespace. This value may be provided by either the `ns` URL query parameter or in the - `X-Consul-Namespace` header. + `X-Consul-Namespace` header. Added in Consul 1.9.0. ### Sample Request @@ -273,13 +273,13 @@ The table below shows this endpoint's support for - `filter` `(string: "")` - Specifies the expression used to filter the queries results prior to returning the data. -- `ns` `(string: "")` - Specifies the - namespace to list intentions from. +- `ns` `(string: "")` - Specifies the + namespace to list intentions from. The `*` wildcard may be used to list intentions from all namespaces. If not provided at all, the default namespace will be inherited from the - request's ACL token or will default to the `default` namespace. + request's ACL token or will default to the `default` namespace. This value may be provided by either the `ns` URL query parameter or in the - `X-Consul-Namespace` header. + `X-Consul-Namespace` header. Added in Consul 1.9.0. ### Sample Request @@ -471,9 +471,9 @@ The table below shows this endpoint's support for - `ns` `(string: "")` - Specifies the default namespace to use when `source` or `destination` parameters lack namespaces. If not provided at all, the default namespace will be inherited from the - request's ACL token or will default to the `default` namespace. + request's ACL token or will default to the `default` namespace. This value may be provided by either the `ns` URL query parameter or in the - `X-Consul-Namespace` header. + `X-Consul-Namespace` header. Added in Consul 1.9.0. ### Sample Request @@ -533,9 +533,9 @@ The table below shows this endpoint's support for - `ns` `(string: "")` - Specifies the default namespace to use when `name` parameter lacks namespaces. If not provided at all, the default namespace will be inherited from the - request's ACL token or will default to the `default` namespace. + request's ACL token or will default to the `default` namespace. This value may be provided by either the `ns` URL query parameter or in the - `X-Consul-Namespace` header. + `X-Consul-Namespace` header. Added in Consul 1.9.0. ### Sample Request diff --git a/website/pages/docs/acl/acl-legacy.mdx b/website/pages/docs/acl/acl-legacy.mdx index f01acb453e..1889e218a8 100644 --- a/website/pages/docs/acl/acl-legacy.mdx +++ b/website/pages/docs/acl/acl-legacy.mdx @@ -199,7 +199,7 @@ as to whether they are set on servers, clients, or both. | Configuration Option | Servers | Clients | Purpose | | --------------------------------------------------------------------- | ---------- | ---------- | ----------------------------------------------------------------------------------------- | | [`acl_datacenter`](/docs/agent/options#acl_datacenter) | `REQUIRED` | `REQUIRED` | Master control that enables ACLs by defining the authoritative Consul datacenter for ACLs | -| [`acl_default_policy`](/docs/agent/options#acl_default_policy_legacy) | `OPTIONAL` | `N/A` | Determines allowlist or denylist mode | +| [`acl_default_policy`](/docs/agent/options#acl_default_policy_legacy) | `OPTIONAL` | `N/A` | Determines allowlist or denylist mode | | [`acl_down_policy`](/docs/agent/options#acl_down_policy_legacy) | `OPTIONAL` | `OPTIONAL` | Determines what to do when the ACL datacenter is offline | | [`acl_ttl`](/docs/agent/options#acl_ttl_legacy) | `OPTIONAL` | `OPTIONAL` | Determines time-to-live for cached ACLs | @@ -276,8 +276,8 @@ datacenter. In this example, we are configuring the following: 1. An ACL datacenter of "dc1", which is where these servers are 2. An ACL master token of "b1gs33cr3t"; see below for an alternative using the [/v1/acl/bootstrap API](/api/acl/acl#bootstrap-acls) 3. A default policy of "deny" which means we are in allowlist mode -4. A down policy of "extend-cache" which means that we will ignore token TTLs -during an outage +4. A down policy of "extend-cache" which means that we will ignore token TTLs + during an outage Here's the corresponding JSON configuration file: diff --git a/website/pages/docs/acl/acl-system.mdx b/website/pages/docs/acl/acl-system.mdx index 3d384718f9..8dc3ba30f5 100644 --- a/website/pages/docs/acl/acl-system.mdx +++ b/website/pages/docs/acl/acl-system.mdx @@ -45,7 +45,7 @@ may benefit from additional components in the ACL system: additional policy was attached, the contents of which are described further below. These are directly attached to tokens and roles and are not independently configured. (Added in Consul 1.5.0) - + - **ACL Node Identities** - Node identities are a policy template for expressing a link to a policy suitable for use as an [Consul `agent` token ](/docs/agent/options#acl_tokens_agent). At authorization time this acts like an @@ -279,7 +279,7 @@ as to whether they are set on servers, clients, or both. | Configuration Option | Servers | Clients | Purpose | | -------------------------------------------------------------- | ---------- | ---------- | ---------------------------------------------------------------------- | | [`acl.enabled`](/docs/agent/options#acl_enabled) | `REQUIRED` | `REQUIRED` | Controls whether ACLs are enabled | -| [`acl.default_policy`](/docs/agent/options#acl_default_policy) | `OPTIONAL` | `N/A` | Determines allowlist or denylist mode | +| [`acl.default_policy`](/docs/agent/options#acl_default_policy) | `OPTIONAL` | `N/A` | Determines allowlist or denylist mode | | [`acl.down_policy`](/docs/agent/options#acl_down_policy) | `OPTIONAL` | `OPTIONAL` | Determines what to do when the remote token or policy resolution fails | | [`acl.role_ttl`](/docs/agent/options#acl_role_ttl) | `OPTIONAL` | `OPTIONAL` | Determines time-to-live for cached ACL Roles | | [`acl.policy_ttl`](/docs/agent/options#acl_policy_ttl) | `OPTIONAL` | `OPTIONAL` | Determines time-to-live for cached ACL Policies | diff --git a/website/pages/docs/acl/auth-methods/index.mdx b/website/pages/docs/acl/auth-methods/index.mdx index fe6ada50d3..c18484d56d 100644 --- a/website/pages/docs/acl/auth-methods/index.mdx +++ b/website/pages/docs/acl/auth-methods/index.mdx @@ -35,11 +35,11 @@ service mesh with minimal operator intervention. ## Supported Types -| Types | Consul Version | -| ----- | -------------- | -| [`kubernetes`](/docs/acl/auth-methods/kubernetes) | 1.5.0+ | -| [`jwt`](/docs/acl/auth-methods/jwt) | 1.8.0+ | -| [`oidc`](/docs/acl/auth-methods/oidc) | 1.8.0+ | +| Types | Consul Version | +| ------------------------------------------------- | --------------------------------- | +| [`kubernetes`](/docs/acl/auth-methods/kubernetes) | 1.5.0+ | +| [`jwt`](/docs/acl/auth-methods/jwt) | 1.8.0+ | +| [`oidc`](/docs/acl/auth-methods/oidc) | 1.8.0+ | ## Operator Configuration diff --git a/website/pages/docs/acl/auth-methods/jwt.mdx b/website/pages/docs/acl/auth-methods/jwt.mdx index d4e367cd26..1bf9fa2b1a 100644 --- a/website/pages/docs/acl/auth-methods/jwt.mdx +++ b/website/pages/docs/acl/auth-methods/jwt.mdx @@ -14,7 +14,7 @@ description: >- -> **1.8.0+:** This feature is available in Consul versions 1.8.0 and newer. The `jwt` auth method can be used to authenticate with Consul by providing a -[JWT](https://en.wikipedia.org/wiki/JSON_Web_Token) directly. The JWT is +[JWT](https://en.wikipedia.org/wiki/JSON_Web_Token) directly. The JWT is cryptographically verified using locally-provided keys, or, if configured, an OIDC Discovery service can be used to fetch the appropriate keys. @@ -55,7 +55,7 @@ parameters are required to properly configure an auth method of type used to talk with the JWKS URL. NOTE: Every line must end with a newline (`\n`). If not set, system certificates are used. -- `ClaimMappings` `(map[string]string)` - Mappings of claims (key) that +- `ClaimMappings` `(map[string]string)` - Mappings of claims (key) that [will be copied to a metadata field](#trusted-identity-attributes-via-claim-mappings) (value). Use this if the claim you are capturing is singular (such as an attribute). @@ -79,15 +79,15 @@ parameters are required to properly configure an auth method of type claim in a JWT. - `ExpirationLeeway` `(duration: 0s)` - Duration in seconds of leeway when - validating expiration of a token to account for clock skew. Defaults to 150 + validating expiration of a token to account for clock skew. Defaults to 150 (2.5 minutes) if set to 0 and can be disabled if set to -1. - `NotBeforeLeeway` `(duration: 0s)` - Duration in seconds of leeway when - validating not before values of a token to account for clock skew. Defaults + validating not before values of a token to account for clock skew. Defaults to 150 (2.5 minutes) if set to 0 and can be disabled if set to -1. - `ClockSkewLeeway` `(duration: 0s)` - Duration in seconds of leeway when - validating all claims to account for clock skew. Defaults to 60 (1 minute) + validating all claims to account for clock skew. Defaults to 60 (1 minute) if set to 0 and can be disabled if set to -1. ### Sample Configs diff --git a/website/pages/docs/agent/config-entries/ingress-gateway.mdx b/website/pages/docs/agent/config-entries/ingress-gateway.mdx index b55d2ac6ca..0b0051f5d5 100644 --- a/website/pages/docs/agent/config-entries/ingress-gateway.mdx +++ b/website/pages/docs/agent/config-entries/ingress-gateway.mdx @@ -11,35 +11,36 @@ description: >- -> **1.8.0+:** This config entry is available in Consul versions 1.8.0 and newer. - The `ingress-gateway` config entry kind allows you to configure ingress gateways - with listeners that expose a set of services outside the Consul service mesh. - See [Ingress Gateway](/docs/connect/ingress-gateway) for more information. +The `ingress-gateway` config entry kind allows you to configure ingress gateways +with listeners that expose a set of services outside the Consul service mesh. +See [Ingress Gateway](/docs/connect/ingress-gateway) for more information. ~> [Configuration entries](/docs/agent/config-entries) are global in scope. A configuration entry for a gateway name applies - across all federated Consul datacenters. If ingress gateways in different Consul datacenters need to route to different - sets of services within their datacenter then the ingress gateways **must** be registered with different names. +across all federated Consul datacenters. If ingress gateways in different Consul datacenters need to route to different +sets of services within their datacenter then the ingress gateways **must** be registered with different names. - See [Ingress Gateway](/docs/connect/ingress-gateway) for more information. +See [Ingress Gateway](/docs/connect/ingress-gateway) for more information. ## Wildcard service specification - Ingress gateways can optionally target all services within a Consul namespace by - specifying a wildcard `*` as the service name. A wildcard specifier allows - for a single listener to route traffic to all available services on the - Consul service mesh, differentiating between the services by their host/authority - header. +Ingress gateways can optionally target all services within a Consul namespace by +specifying a wildcard `*` as the service name. A wildcard specifier allows +for a single listener to route traffic to all available services on the +Consul service mesh, differentiating between the services by their host/authority +header. - A wildcard specifier provides the following properties for an ingress - gateway: - - All services with the same - [protocol](/docs/agent/config-entries/ingress-gateway#protocol) as the - listener will be routable. - - The ingress gateway will route traffic based on the host/authority header, - expecting a value matching `.ingress.*`, or if using namespaces, - `.ingress..*`. This matches the [Consul DNS - ingress subdomain](/docs/agent/dns#ingress-service-lookups). +A wildcard specifier provides the following properties for an ingress +gateway: - A wildcard specifier cannot be set on a listener of protocol `tcp`. +- All services with the same + [protocol](/docs/agent/config-entries/ingress-gateway#protocol) as the + listener will be routable. +- The ingress gateway will route traffic based on the host/authority header, + expecting a value matching `.ingress.*`, or if using namespaces, + `.ingress..*`. This matches the [Consul DNS + ingress subdomain](/docs/agent/dns#ingress-service-lookups). + +A wildcard specifier cannot be set on a listener of protocol `tcp`. ## Sample Config Entries @@ -325,16 +326,16 @@ Also make two services in the frontend namespace available over a custom port wi - `Namespace` `(string: "default")` - Specifies the namespace the config entry will apply to. This must be the namespace - the gateway is registered in. If omitted, the namespace will be inherited + the gateway is registered in. If omitted, the namespace will be inherited from [the request](/api/config#ns) or will default to the `default` namespace. - `TLS` `(TLSConfig: )` - TLS configuration for this gateway. - - `Enabled` `(bool: false)` - Set this configuration to enable TLS for - every listener on the gateway. + - `Enabled` `(bool: false)` - Set this configuration to enable TLS for + every listener on the gateway. - If TLS is enabled, then each host defined in the `Host` field will be added - as a DNSSAN to the gateway's x509 certificate. + If TLS is enabled, then each host defined in the `Host` field will be added + as a DNSSAN to the gateway's x509 certificate. - `Listeners` `(array: )` - A list of listeners that the ingress gateway should setup, uniquely identified by their port number. diff --git a/website/pages/docs/agent/config-entries/terminating-gateway.mdx b/website/pages/docs/agent/config-entries/terminating-gateway.mdx index 77c02c0888..787a2bddbc 100644 --- a/website/pages/docs/agent/config-entries/terminating-gateway.mdx +++ b/website/pages/docs/agent/config-entries/terminating-gateway.mdx @@ -11,35 +11,36 @@ description: >- -> **1.8.0+:** This config entry is available in Consul versions 1.8.0 and newer. - The `terminating-gateway` config entry kind you to configure terminating gateways - to proxy traffic from services in the Consul service mesh to services registered with Consul that do not have a - [Connect service sidecar proxy](/docs/connect/proxies). The configuration is associated with the name of a gateway service - and will apply to all instances of the gateway with that name. +The `terminating-gateway` config entry kind you to configure terminating gateways +to proxy traffic from services in the Consul service mesh to services registered with Consul that do not have a +[Connect service sidecar proxy](/docs/connect/proxies). The configuration is associated with the name of a gateway service +and will apply to all instances of the gateway with that name. ~> [Configuration entries](/docs/agent/config-entries) are global in scope. A configuration entry for a gateway name applies - across all federated Consul datacenters. If terminating gateways in different Consul datacenters need to route to different - sets of services within their datacenter then the terminating gateways **must** be registered with different names. +across all federated Consul datacenters. If terminating gateways in different Consul datacenters need to route to different +sets of services within their datacenter then the terminating gateways **must** be registered with different names. - See [Terminating Gateway](/docs/connect/terminating-gateway) for more information. +See [Terminating Gateway](/docs/connect/terminating-gateway) for more information. ## TLS Origination - By specifying a path to a [CA file](/docs/agent/config-entries/terminating-gateway#cafile) connections - from the terminating gateway will be encrypted using one-way TLS authentication. If a path to a - [client certificate](/docs/agent/config-entries/terminating-gateway#certfile) - and [private key](/docs/agent/config-entries/terminating-gateway#keyfile) are also specified connections - from the terminating gateway will be encrypted using mutual TLS authentication. - If none of these are provided, Consul will **only** encrypt connections to the gateway and not - from the gateway to the destination service. +By specifying a path to a [CA file](/docs/agent/config-entries/terminating-gateway#cafile) connections +from the terminating gateway will be encrypted using one-way TLS authentication. If a path to a +[client certificate](/docs/agent/config-entries/terminating-gateway#certfile) +and [private key](/docs/agent/config-entries/terminating-gateway#keyfile) are also specified connections +from the terminating gateway will be encrypted using mutual TLS authentication. + +If none of these are provided, Consul will **only** encrypt connections to the gateway and not +from the gateway to the destination service. ## Wildcard service specification - Terminating gateways can optionally target all services within a Consul namespace by specifying a wildcard "*" - as the service name. Configuration options set on the wildcard act as defaults that can be overridden - by options set on a specific service name. +Terminating gateways can optionally target all services within a Consul namespace by specifying a wildcard "\*" +as the service name. Configuration options set on the wildcard act as defaults that can be overridden +by options set on a specific service name. - Note that if the wildcard specifier is used, and some services in that namespace have a Connect sidecar proxy, - traffic from the mesh to those services will be evenly load-balanced between the gateway and their sidecars. +Note that if the wildcard specifier is used, and some services in that namespace have a Connect sidecar proxy, +traffic from the mesh to those services will be evenly load-balanced between the gateway and their sidecars. ## Sample Config Entries @@ -310,7 +311,7 @@ Services = [ -Link gateway named "us-west-gateway" in the default namespace with all services in the finance namespace, +Link gateway named "us-west-gateway" in the default namespace with all services in the finance namespace, and configure default certificates for mutual TLS. Also override the SNI and CA file used for connections to the billing service: ```hcl @@ -336,7 +337,7 @@ Services = [ ``` - + Link gateway named "us-west-gateway" with all services in the datacenter, and configure default certificates for mutual TLS. Also override the SNI and CA file used for connections to the billing service: @@ -351,21 +352,21 @@ Also override the SNI and CA file used for connections to the billing service: "CAFile": "/etc/billing-ca/ca-chain.cert.pem", "KeyFile": "/etc/certs/gateway.key.pem", "CertFile": "/etc/certs/gateway.cert.pem", - "SNI": "billing.service.com" + "SNI": "billing.service.com" }, { "Name": "billing", "CAFile": "/etc/billing-ca/ca-chain.cert.pem", - "SNI": "billing.service.com" + "SNI": "billing.service.com" } ] } ``` - + -Link gateway named "us-west-gateway" in the default namespace with all services in the finance namespace, +Link gateway named "us-west-gateway" in the default namespace with all services in the finance namespace, and configure default certificates for mutual TLS. Also override the SNI and CA file used for connections to the billing service: ```json @@ -374,19 +375,19 @@ and configure default certificates for mutual TLS. Also override the SNI and CA "Name": "us-west-gateway", "Namespace": "default", "Services": [ - { + { "Namespace": "finance", "Name": "*", "CAFile": "/etc/billing-ca/ca-chain.cert.pem", "KeyFile": "/etc/certs/gateway.key.pem", "CertFile": "/etc/certs/gateway.cert.pem", - "SNI": "billing.service.com" + "SNI": "billing.service.com" }, - { + { "Namespace": "finance", "Name": "billing", "CAFile": "/etc/billing-ca/ca-chain.cert.pem", - "SNI": "billing.service.com" + "SNI": "billing.service.com" } ] } @@ -402,37 +403,37 @@ and configure default certificates for mutual TLS. Also override the SNI and CA - `Name` `(string: )` - Set to the name of the gateway being configured. - `Namespace` `(string: "default")` - Specifies the namespace - the config entry will apply to. This must be the namespace the gateway is registered in. - If omitted, the namespace will be inherited from [the request](/api/config#ns) - or will default to the `default` namespace. + the config entry will apply to. This must be the namespace the gateway is registered in. + If omitted, the namespace will be inherited from [the request](/api/config#ns) + or will default to the `default` namespace. - `Services` `(array: )` - A list of services to link - with the gateway. The gateway will proxy traffic to these services. These linked services - must be registered with Consul for the gateway to discover their addresses. They must also - be registered in the same Consul datacenter as the terminating gateway. + with the gateway. The gateway will proxy traffic to these services. These linked services + must be registered with Consul for the gateway to discover their addresses. They must also + be registered in the same Consul datacenter as the terminating gateway. - - `Name` `(string: "")` - The name of the service to link with the gateway. + - `Name` `(string: "")` - The name of the service to link with the gateway. If the wildcard specifier, `*`, is provided, then ALL services within the namespace will be linked with the gateway. - - `Namespace` `(string: "")` - The namespace of the service. + - `Namespace` `(string: "")` - The namespace of the service. If omitted, the namespace will be inherited from the config entry. - - `CAFile` `(string: "")` - A file path to a PEM-encoded certificate authority. + - `CAFile` `(string: "")` - A file path to a PEM-encoded certificate authority. The file must be present on the proxy's filesystem. The certificate authority is used to verify the authenticity of the service linked with the gateway. It can be provided along with a CertFile and KeyFile for mutual TLS authentication, or on its own for one-way TLS authentication. If none is provided the gateway **will not** encrypt the traffic to the destination. - - `CertFile` `(string: "")` - A file path to a PEM-encoded certificate. + - `CertFile` `(string: "")` - A file path to a PEM-encoded certificate. The file must be present on the proxy's filesystem. The certificate is provided servers to verify the gateway's authenticity. It must be provided if a KeyFile was specified. - - `KeyFile` `(string: "")` - A file path to a PEM-encoded private key. - The file must be present on the proxy's filesystem. - The key is used with the certificate to verify the gateway's authenticity. It must be provided along if a CertFile was specified. + - `KeyFile` `(string: "")` - A file path to a PEM-encoded private key. + The file must be present on the proxy's filesystem. + The key is used with the certificate to verify the gateway's authenticity. It must be provided along if a CertFile was specified. - - `SNI` `(string: "")` - An optional hostname or domain name to specify during the TLS handshake. + - `SNI` `(string: "")` - An optional hostname or domain name to specify during the TLS handshake. ## ACLs diff --git a/website/pages/docs/agent/index.mdx b/website/pages/docs/agent/index.mdx index 25ab38354e..96599b422d 100644 --- a/website/pages/docs/agent/index.mdx +++ b/website/pages/docs/agent/index.mdx @@ -15,7 +15,7 @@ information, registers services, runs checks, responds to queries, and more. The agent must run on every node that is part of a Consul cluster. Any agent may run in one of two modes: client or server. A server -node takes on the additional responsibility of being part of the +node takes on the additional responsibility of being part of the [consensus quorum](/docs/internals/consensus). These nodes take part in Raft and provide strong consistency and availability in the case of failure. The higher burden on the server nodes means that usually @@ -27,11 +27,11 @@ operations and maintain very little state of their own. ## Running an Agent The agent is started with the [`consul agent`](/docs/commands/agent) command. -This command blocks, running forever or until told to quit. You can test a -local agent by following the +This command blocks, running forever or until told to quit. You can test a +local agent by following the [Getting Started guides](https://learn.hashicorp.com/consul/getting-started/install?utm_source=consul.io&utm_medium=docs). -The agent command takes a variety of +The agent command takes a variety of [`configuration options`](/docs/agent/options#command-line-options), but most have sane defaults. @@ -54,22 +54,22 @@ $ consul agent -data-dir=/tmp/consul ... ``` -There are several important messages that +There are several important messages that [`consul agent`](/docs/commands/agent) outputs: - **Node name**: This is a unique name for the agent. By default, this is the hostname of the machine, but you may customize it using the [`-node`](/docs/agent/options#_node) flag. -- **Datacenter**: This is the datacenter in which the agent is configured to -run. +- **Datacenter**: This is the datacenter in which the agent is configured to + run. Consul has first-class support for multiple datacenters; however, to work - efficiently, each node must be configured to report its datacenter. The - [`-datacenter`](/docs/agent/options#_datacenter) flag can be used to set the + efficiently, each node must be configured to report its datacenter. The + [`-datacenter`](/docs/agent/options#_datacenter) flag can be used to set the datacenter. For single-DC configurations, the agent will default to "dc1". - **Server**: This indicates whether the agent is running in server or client -mode. + mode. Server nodes have the extra burden of participating in the consensus quorum, storing cluster state, and handling queries. Additionally, a server may be in ["bootstrap"](/docs/agent/options#_bootstrap_expect) mode. Multiple servers @@ -97,7 +97,7 @@ service definition file has to have `Type=notify` set. An agent can be stopped in two ways: gracefully or forcefully. Servers and Clients both behave differently depending on the leave that is performed. There -are two potential states a process can be in after a system signal is sent: +are two potential states a process can be in after a system signal is sent: _left_ and _failed_. To gracefully halt an agent, send the process an _interrupt signal_ (usually @@ -111,7 +111,7 @@ cluster that the node has _left_. When a Server is gracefully exited, the server will not be marked as _left_. This is to minimally impact the consensus quorum. Instead, the Server will be -marked as _failed_. To remove a server from the cluster, the +marked as _failed_. To remove a server from the cluster, the [`force-leave`](/docs/commands/force-leave) command is used. Using `force-leave` will put the server instance in a _left_ state so long as the Server agent is not alive. diff --git a/website/pages/docs/agent/options.mdx b/website/pages/docs/agent/options.mdx index 78dd44bf3f..153ee5652b 100644 --- a/website/pages/docs/agent/options.mdx +++ b/website/pages/docs/agent/options.mdx @@ -825,51 +825,51 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." - `serf_wan_allowed_cidrs` ((#serf_wan_allowed_cidrs)) Equivalent to the [`-serf-wan-allowed-cidrs` command-line flag](#_serf_wan_allowed_cidrs). - `audit` - Added in Consul 1.8, the audit object allow users to enable auditing - and configure a sink and filters for their audit logs. + and configure a sink and filters for their audit logs. - ```hcl - audit { - enabled = true - sink "My sink" { - type = "file" - format = "json" - path = "data/audit/audit.json" - delivery_guarantee = "best-effort" - rotate_duration = "24h" - rotate_max_files = 15 - rotate_bytes = 25165824 - } - } - ``` + ```hcl + audit { + enabled = true + sink "My sink" { + type = "file" + format = "json" + path = "data/audit/audit.json" + delivery_guarantee = "best-effort" + rotate_duration = "24h" + rotate_max_files = 15 + rotate_bytes = 25165824 + } + } + ``` - The following sub-keys are available: + The following sub-keys are available: - - `enabled` - Controls whether Consul logs out each time a user + - `enabled` - Controls whether Consul logs out each time a user performs an operation. ACLs must be enabled to use this feature. Defaults to `false`. - - `sink` - This object provides configuration for the destination to which - Consul will log auditing events. Sink is an object containing keys to sink objects, where the key is the name of the sink. + - `sink` - This object provides configuration for the destination to which + Consul will log auditing events. Sink is an object containing keys to sink objects, where the key is the name of the sink. - - `type` - Type specifies what kind of sink this is. - The following keys are valid: - - `file` - Currently only file sinks are available, they take the following keys. - - `format` - Format specifies what format the events will - be emitted with. - The following keys are valid: - - `json` - Currently only json events are offered. - - `path` - The directory and filename to write audit events to. - - `delivery_guarantee` - Specifies - the rules governing how audit events are written. - The following keys are valid: - - `best-effort` - Consul only supports `best-effort` event delivery. - - `rotate_duration` - Specifies the - interval by which the system rotates to a new log file. At least one of `rotate_duration` or `rotate_bytes` - must be configured to enable audit logging. - - `rotate_max_files` - Defines the - limit that Consul should follow before it deletes old log files. - - `rotate_bytes` - Specifies how large an - individual log file can grow before Consul rotates to a new file. At least one of `rotate_bytes` or - `rotate_duration` must be configured to enable audit logging. + - `type` - Type specifies what kind of sink this is. + The following keys are valid: + - `file` - Currently only file sinks are available, they take the following keys. + - `format` - Format specifies what format the events will + be emitted with. + The following keys are valid: + - `json` - Currently only json events are offered. + - `path` - The directory and filename to write audit events to. + - `delivery_guarantee` - Specifies + the rules governing how audit events are written. + The following keys are valid: + - `best-effort` - Consul only supports `best-effort` event delivery. + - `rotate_duration` - Specifies the + interval by which the system rotates to a new log file. At least one of `rotate_duration` or `rotate_bytes` + must be configured to enable audit logging. + - `rotate_max_files` - Defines the + limit that Consul should follow before it deletes old log files. + - `rotate_bytes` - Specifies how large an + individual log file can grow before Consul rotates to a new file. At least one of `rotate_bytes` or + `rotate_duration` must be configured to enable audit logging. - `autopilot` Added in Consul 0.8, this object allows a number of sub-keys to be set which can configure operator-friendly settings for @@ -1763,7 +1763,7 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." - `prefix_filter` ((#telemetry-prefix_filter)) This is a list of filter rules to apply for allowing/blocking metrics by prefix in the following format: - + ```json ["+consul.raft.apply", "-consul.http", "+consul.http.GET"] ``` @@ -1814,7 +1814,7 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." - `tls_cipher_suites` Added in Consul 0.8.2, this specifies the list of supported ciphersuites as a comma-separated-list. The list of all supported - ciphersuites is available through + ciphersuites is available through [this search](https://github.com/hashicorp/consul/search?q=cipherMap+%3A%3D+map&unscoped_q=cipherMap+%3A%3D+map). - `tls_prefer_server_cipher_suites` Added in Consul 0.8.2, this diff --git a/website/pages/docs/agent/telemetry.mdx b/website/pages/docs/agent/telemetry.mdx index cd9f66920e..7e6ec0f9a5 100644 --- a/website/pages/docs/agent/telemetry.mdx +++ b/website/pages/docs/agent/telemetry.mdx @@ -147,9 +147,9 @@ This is a full list of metrics emitted by Consul. | `consul.client.api.catalog_register.` | This increments whenever a Consul agent receives a catalog register request. | requests | counter | | `consul.client.api.success.catalog_register.` | This increments whenever a Consul agent successfully responds to a catalog register request. | requests | counter | | `consul.client.rpc.error.catalog_register.` | This increments whenever a Consul agent receives an RPC error for a catalog register request. | errors | counter | -| `consul.client.api.catalog_deregister.` | This increments whenever a Consul agent receives a catalog deregister request. | requests | counter | -| `consul.client.api.success.catalog_deregister.` | This increments whenever a Consul agent successfully responds to a catalog deregister request. | requests | counter | -| `consul.client.rpc.error.catalog_deregister.` | This increments whenever a Consul agent receives an RPC error for a catalog deregister request. | errors | counter | +| `consul.client.api.catalog_deregister.` | This increments whenever a Consul agent receives a catalog deregister request. | requests | counter | +| `consul.client.api.success.catalog_deregister.` | This increments whenever a Consul agent successfully responds to a catalog deregister request. | requests | counter | +| `consul.client.rpc.error.catalog_deregister.` | This increments whenever a Consul agent receives an RPC error for a catalog deregister request. | errors | counter | | `consul.client.api.catalog_datacenters.` | This increments whenever a Consul agent receives a request to list datacenters in the catalog. | requests | counter | | `consul.client.api.success.catalog_datacenters.` | This increments whenever a Consul agent successfully responds to a request to list datacenters. | requests | counter | | `consul.client.rpc.error.catalog_datacenters.` | This increments whenever a Consul agent receives an RPC error for a request to list datacenters. | errors | counter | @@ -163,11 +163,11 @@ This is a full list of metrics emitted by Consul. | `consul.client.api.success.catalog_service_nodes.` | This increments whenever a Consul agent successfully responds to a request to list nodes offering a service. | requests | counter | | `consul.client.rpc.error.catalog_service_nodes.` | This increments whenever a Consul agent receives an RPC error for a request to list nodes offering a service. | errors | counter | | `consul.client.api.catalog_node_services.` | This increments whenever a Consul agent receives a request to list services registered in a node. | requests | counter | -| `consul.client.api.success.catalog_node_services.` | This increments whenever a Consul agent successfully responds to a request to list services in a node. | requests | counter | -| `consul.client.rpc.error.catalog_node_services.` | This increments whenever a Consul agent receives an RPC error for a request to list services in a node. | errors | counter | -| `consul.client.api.catalog_gateway_services.` | This increments whenever a Consul agent receives a request to list services associated with a gateway. | requests | counter | -| `consul.client.api.success.catalog_gateway_services.` | This increments whenever a Consul agent successfully responds to a request to list services associated with a gateway. | requests | counter | -| `consul.client.rpc.error.catalog_gateway_services.` | This increments whenever a Consul agent receives an RPC error for a request to list services associated with a gateway. | errors | counter | +| `consul.client.api.success.catalog_node_services.` | This increments whenever a Consul agent successfully responds to a request to list services in a node. | requests | counter | +| `consul.client.rpc.error.catalog_node_services.` | This increments whenever a Consul agent receives an RPC error for a request to list services in a node. | errors | counter | +| `consul.client.api.catalog_gateway_services.` | This increments whenever a Consul agent receives a request to list services associated with a gateway. | requests | counter | +| `consul.client.api.success.catalog_gateway_services.` | This increments whenever a Consul agent successfully responds to a request to list services associated with a gateway. | requests | counter | +| `consul.client.rpc.error.catalog_gateway_services.` | This increments whenever a Consul agent receives an RPC error for a request to list services associated with a gateway. | errors | counter | | `consul.runtime.num_goroutines` | This tracks the number of running goroutines and is a general load pressure indicator. This may burst from time to time but should return to a steady state value. | number of goroutines | gauge | | `consul.runtime.alloc_bytes` | This measures the number of bytes allocated by the Consul process. This may burst from time to time but should return to a steady state value. | bytes | gauge | | `consul.runtime.heap_objects` | This measures the number of objects allocated on the heap and is a general memory pressure indicator. This may burst from time to time but should return to a steady state value. | number of objects | gauge | diff --git a/website/pages/docs/commands/connect/expose.mdx b/website/pages/docs/commands/connect/expose.mdx index 04373d9bad..08237ac61b 100644 --- a/website/pages/docs/commands/connect/expose.mdx +++ b/website/pages/docs/commands/connect/expose.mdx @@ -12,7 +12,7 @@ description: > Command: `consul connect expose` -The connect expose subcommand is used to expose a Connect-enabled service +The connect expose subcommand is used to expose a Connect-enabled service through an Ingress gateway by modifying the gateway's configuration and adding an intention to allow traffic from the gateway to the service. See the [Ingress gateway documentation](/docs/connect/ingress-gateway) for more information @@ -46,7 +46,7 @@ Usage: consul connect expose [options] - `-protocol` - The protocol for the service. Defaults to 'tcp'. -- `-host` - Additional DNS hostname to use for routing to this service. Can be +- `-host` - Additional DNS hostname to use for routing to this service. Can be specified multiple times. ## Examples diff --git a/website/pages/docs/commands/index.mdx b/website/pages/docs/commands/index.mdx index fc5b144099..f00eca7d02 100644 --- a/website/pages/docs/commands/index.mdx +++ b/website/pages/docs/commands/index.mdx @@ -248,8 +248,8 @@ scheme should be used, or `CONSUL_HTTP_SSL` set. ### `CONSUL_NAMESPACE` **Enterprise only** -If you're using Consul Enterprise namespaces you can set this for the CLI to -explicitly use a single namespace. This is common across all Hashicorp +If you're using Consul Enterprise namespaces you can set this for the CLI to +explicitly use a single namespace. This is common across all Hashicorp products that support Enterprise namespaces. ``` diff --git a/website/pages/docs/commands/intention/index.mdx b/website/pages/docs/commands/intention/index.mdx index fae4235bb6..922f59b7e8 100644 --- a/website/pages/docs/commands/intention/index.mdx +++ b/website/pages/docs/commands/intention/index.mdx @@ -70,10 +70,10 @@ $ consul intention match db Intention commands commonly take positional arguments referred to as `SRC` and `DST` in the command documentation. These can take several forms: -| Format | Meaning | -| ----------------------- | -----------------------------------------------------------------------| -| `` | the named service in the current namespace | -| `*` | any service in the current namespace | -| `/` | the named service in a specific namespace | -| `/*` | any service in the specified namespace | -| `*/*` | any service in any namespace | +| Format | Meaning | +| ----------------------- | -------------------------------------------------------------------- | +| `` | the named service in the current namespace | +| `*` | any service in the current namespace | +| `/` | the named service in a specific namespace | +| `/*` | any service in the specified namespace | +| `*/*` | any service in any namespace | diff --git a/website/pages/docs/commands/license.mdx b/website/pages/docs/commands/license.mdx index a47b5095c5..d0a547b920 100644 --- a/website/pages/docs/commands/license.mdx +++ b/website/pages/docs/commands/license.mdx @@ -42,7 +42,7 @@ Usage: consul license [options] [args] Retrieve the current license: $ consul license get - + Reset the current license: $ consul license reset @@ -117,7 +117,7 @@ Licensed Features: ## reset -Resets license for the datacenter to the one builtin in Consul binary, if it is still valid. +Resets license for the datacenter to the one builtin in Consul binary, if it is still valid. If the builtin license is invalid, the current one stays active. Usage: `consul license reset [options]` diff --git a/website/pages/docs/commands/operator/raft.mdx b/website/pages/docs/commands/operator/raft.mdx index 619a19f753..0e1236fbb5 100644 --- a/website/pages/docs/commands/operator/raft.mdx +++ b/website/pages/docs/commands/operator/raft.mdx @@ -59,7 +59,7 @@ but may be upgraded to a GUID in a future version of Consul. Raft configuration. `Voter` is "true" or "false", indicating if the server has a vote in the Raft -configuration. +configuration. ## remove-peer diff --git a/website/pages/docs/connect/connect-internals.mdx b/website/pages/docs/connect/connect-internals.mdx index f151531a1e..20750e107f 100644 --- a/website/pages/docs/connect/connect-internals.mdx +++ b/website/pages/docs/connect/connect-internals.mdx @@ -15,8 +15,8 @@ but will help you build a mental model of what's going on under the hood, which may help you reason about Connect's behavior in more complex deployment scenarios. -To try Connect locally, complete the [Getting Started with Consul service -mesh](https://learn.hashicorp.com/consul/gs-consul-service-mesh/understand-consul-service-mesh?utm_source=WEBSITE&utm_medium=WEB_IO&utm_offer=ARTICLE_PAGE&utm_content=DOCS) +To try Connect locally, complete the [Getting Started with Consul service +mesh](https://learn.hashicorp.com/consul/gs-consul-service-mesh/understand-consul-service-mesh?utm_source=WEBSITE&utm_medium=WEB_IO&utm_offer=ARTICLE_PAGE&utm_content=DOCS) guide. ## Mutual Transport Layer Security (mTLS) diff --git a/website/pages/docs/connect/ingress-gateway.mdx b/website/pages/docs/connect/ingress-gateway.mdx index 449aeb0163..9243169243 100644 --- a/website/pages/docs/connect/ingress-gateway.mdx +++ b/website/pages/docs/connect/ingress-gateway.mdx @@ -10,7 +10,7 @@ description: >- # Ingress Gateways --> **1.8.0+:** This feature is available in Consul versions 1.8.0 and newer. +-> **1.8.0+:** This feature is available in Consul versions 1.8.0 and newer. Ingress gateways enable ingress traffic from services outside the Consul service mesh to services inside the Consul service mesh. An ingress gateway is @@ -68,5 +68,5 @@ If the Consul client agent on the gateway's node is not configured to use the de must also provide `agent:read` for its node's name in order to discover the agent's gRPC port. gRPC is used to expose Envoy's xDS API to Envoy proxies. ~> [Configuration entries](/docs/agent/config-entries) are global in scope. A configuration entry for a gateway name applies - across all federated Consul datacenters. If ingress gateways in different Consul datacenters need to route to different - sets of services within their datacenter then the ingress gateways **must** be registered with different names. +across all federated Consul datacenters. If ingress gateways in different Consul datacenters need to route to different +sets of services within their datacenter then the ingress gateways **must** be registered with different names. diff --git a/website/pages/docs/connect/proxies/built-in.mdx b/website/pages/docs/connect/proxies/built-in.mdx index d8f52da55d..f4a40b6496 100644 --- a/website/pages/docs/connect/proxies/built-in.mdx +++ b/website/pages/docs/connect/proxies/built-in.mdx @@ -68,7 +68,7 @@ All fields are optional with a sane default. or `[::]` in which case this defaults to `127.0.0.1` and assumes the agent can dial the proxy over loopback. For more complex configurations where agent and proxy communicate over a bridge for example, this configuration can be used to specify - a different *address* (but not port) for the agent to use for health checks if + a different _address_ (but not port) for the agent to use for health checks if it can't talk to the proxy over localhost or it's publicly advertised port. The check always uses the same port that the proxy is bound to. diff --git a/website/pages/docs/connect/proxies/envoy.mdx b/website/pages/docs/connect/proxies/envoy.mdx index 3b407f197d..b1ae17d771 100644 --- a/website/pages/docs/connect/proxies/envoy.mdx +++ b/website/pages/docs/connect/proxies/envoy.mdx @@ -287,7 +287,6 @@ definition](/docs/connect/registration/service-registration) or - `max_failures` - The number of consecutive failures which cause a host to be removed from the load balancer. - ### Gateway Options These fields may also be overridden explicitly in the [proxy service @@ -319,7 +318,7 @@ will continue to be supported. - `envoy_gateway_no_default_bind` - Prevents binding to the default address of the gateway service. This should be used with one of the other options to configure the gateway's bind addresses. - + - `envoy_dns_discovery_type` - Determines how Envoy will resolve hostnames. Defaults to `LOGICAL_DNS`. Must be one of `STRICT_DNS` or `LOGICAL_DNS`. Details for each type are available in the [Envoy documentation](https://www.envoyproxy.io/docs/envoy/v1.14.1/intro/arch_overview/upstream/service_discovery). diff --git a/website/pages/docs/connect/wan-federation-via-mesh-gateways.mdx b/website/pages/docs/connect/wan-federation-via-mesh-gateways.mdx index 387abbf7df..3afc50e677 100644 --- a/website/pages/docs/connect/wan-federation-via-mesh-gateways.mdx +++ b/website/pages/docs/connect/wan-federation-via-mesh-gateways.mdx @@ -8,7 +8,7 @@ description: |- # WAN Federation via Mesh Gateways --> **1.8.0+:** This feature is available in Consul versions 1.8.0 and higher +-> **1.8.0+:** This feature is available in Consul versions 1.8.0 and higher ~> This topic requires familiarity with [mesh gateways](/docs/connect/mesh-gateway). @@ -28,11 +28,11 @@ the WAN. Sometimes this prerequisite is difficult or undesirable to meet: -* **Difficult:** The datacenters may exist in multiple Kubernetes clusters that +- **Difficult:** The datacenters may exist in multiple Kubernetes clusters that unfortunately have overlapping pod IP subnets, or may exist in different cloud provider VPCs that have overlapping subnets. -* **Undesirable:** Network security teams may not approve of granting so many +- **Undesirable:** Network security teams may not approve of granting so many firewall rules. When using platform autoscaling, keeping rules up to date becomes untenable. Operators looking to simplify their WAN deployment and minimize the exposed @@ -44,17 +44,16 @@ gateways](/docs/connect/mesh-gateways.html) to do so. There are two main kinds of communication that occur over the WAN link spanning the gulf between disparate Consul datacenters: -* **WAN gossip:** We leverage the serf and memberlist libraries to gossip +- **WAN gossip:** We leverage the serf and memberlist libraries to gossip around failure detector knowledge about Consul servers in each datacenter. By default this operates point to point between servers over `8302/udp` with a fallback to `8302/tcp` (which logs a warning indicating the network is misconfigured). -* **Cross-datacenter RPCs:** Consul servers expose a special multiplexed port +- **Cross-datacenter RPCs:** Consul servers expose a special multiplexed port over `8300/tcp`. Several distinct kinds of messages can be received on this port, such as RPC requests forwarded from servers in other datacenters. - In this network topology individual Consul client agents on a LAN in one datacenter never need to directly dial servers in other datacenters. This means you could introduce a set of firewall rules prohibiting `10.0.0.0/24` @@ -80,8 +79,7 @@ these SAN fields: server.. (normal) .server.. (needed for wan federation) -This can be achieved using any number of tools, including `consul tls cert -create` with the `-node` flag. +This can be achieved using any number of tools, including `consul tls cert create` with the `-node` flag. ### Mesh Gateways @@ -157,7 +155,6 @@ follow this general procedure: resolve ACL tokens from the secondary, at which time it should be possible to launch the mesh gateways in the secondary datacenter. - ### Existing secondary 1. Upgrade to the desired version of the consul binary for all servers, @@ -175,9 +172,9 @@ follow this general procedure: From any two datacenters joined together double check the following give you an expected result: -* Check that `consul members -wan` lists all servers in all datacenters with +- Check that `consul members -wan` lists all servers in all datacenters with their _local_ ip addresses and are listed as `alive`. -* Ensure any API request that activates datacenter request forwarding. such as +- Ensure any API request that activates datacenter request forwarding. such as [`/v1/catalog/services?dc=`](/api/catalog.html#dc-1) succeeds. diff --git a/website/pages/docs/enterprise/backups.mdx b/website/pages/docs/enterprise/backups.mdx index 2ce82f7262..277be48ed5 100644 --- a/website/pages/docs/enterprise/backups.mdx +++ b/website/pages/docs/enterprise/backups.mdx @@ -11,7 +11,8 @@ description: >- # Automated Backups - This feature is available in all versions of
Consul Enterprise. + This feature is available in all versions of{' '} + Consul Enterprise. Consul Enterprise enables you to run diff --git a/website/pages/docs/enterprise/federation.mdx b/website/pages/docs/enterprise/federation.mdx index 44ef2ee0f3..ae0e76bc94 100644 --- a/website/pages/docs/enterprise/federation.mdx +++ b/website/pages/docs/enterprise/federation.mdx @@ -11,7 +11,9 @@ description: >- # Consul Enterprise Advanced Federation - This feature requires Consul Enterprise with the Global Visibility, Routing, and Scale module. + This feature requires{' '} + Consul Enterprise{' '} + with the Global Visibility, Routing, and Scale module. Consul's core federation capability uses the same gossip mechanism that is used diff --git a/website/pages/docs/enterprise/namespaces.mdx b/website/pages/docs/enterprise/namespaces.mdx index ed3b14fc6c..f97c3bdbb3 100644 --- a/website/pages/docs/enterprise/namespaces.mdx +++ b/website/pages/docs/enterprise/namespaces.mdx @@ -8,7 +8,9 @@ description: Consul Enterprise enables data isolation with Namespaces. # Consul Enterprise Namespaces - This feature requires Consul Enterprise with the Governance and Policy module. + This feature requires{' '} + Consul Enterprise{' '} + with the Governance and Policy module. With Consul Enterprise v1.7.0, data for different users or teams diff --git a/website/pages/docs/enterprise/network-segments.mdx b/website/pages/docs/enterprise/network-segments.mdx index 88fe24ff75..dab8a575d8 100644 --- a/website/pages/docs/enterprise/network-segments.mdx +++ b/website/pages/docs/enterprise/network-segments.mdx @@ -10,7 +10,9 @@ description: |- # Network Segments - This feature requires Consul Enterprise with the Global Visibility, Routing, and Scale module. + This feature requires{' '} + Consul Enterprise{' '} + with the Global Visibility, Routing, and Scale module. Consul Network Segments enables operators to create separate LAN gossip segments diff --git a/website/pages/docs/enterprise/read-scale.mdx b/website/pages/docs/enterprise/read-scale.mdx index 90e46d7f13..a5bb4102f7 100644 --- a/website/pages/docs/enterprise/read-scale.mdx +++ b/website/pages/docs/enterprise/read-scale.mdx @@ -12,7 +12,9 @@ description: >- # Enhanced Read Scalability with Non-Voting Servers - This feature requires Consul Enterprise with the Global Visibility, Routing, and Scale module. + This feature requires{' '} + Consul Enterprise{' '} + with the Global Visibility, Routing, and Scale module. Consul Enterprise provides the ability to scale clustered Consul servers diff --git a/website/pages/docs/enterprise/redundancy.mdx b/website/pages/docs/enterprise/redundancy.mdx index 1e37df95b2..0a5d0957fb 100644 --- a/website/pages/docs/enterprise/redundancy.mdx +++ b/website/pages/docs/enterprise/redundancy.mdx @@ -10,7 +10,9 @@ description: >- # Redundancy Zones - This feature requires Consul Enterprise with the Global Visibility, Routing, and Scale module. + This feature requires{' '} + Consul Enterprise{' '} + with the Global Visibility, Routing, and Scale module. Consul Enterprise redundancy zones provide diff --git a/website/pages/docs/enterprise/sentinel.mdx b/website/pages/docs/enterprise/sentinel.mdx index 96b892b5d4..a69cd48fc8 100644 --- a/website/pages/docs/enterprise/sentinel.mdx +++ b/website/pages/docs/enterprise/sentinel.mdx @@ -11,7 +11,9 @@ description: >- # Sentinel in Consul - This feature requires Consul Enterprise with the Governance and Policy module. + This feature requires{' '} + Consul Enterprise{' '} + with the Governance and Policy module. Sentinel policies extend the ACL system in Consul beyond static "read", "write", diff --git a/website/pages/docs/enterprise/upgrades.mdx b/website/pages/docs/enterprise/upgrades.mdx index 9c4629da2e..87184ffa03 100644 --- a/website/pages/docs/enterprise/upgrades.mdx +++ b/website/pages/docs/enterprise/upgrades.mdx @@ -11,7 +11,8 @@ description: >- # Automated Upgrades - This feature is available in all versions of Consul Enterprise. + This feature is available in all versions of{' '} + Consul Enterprise. Consul Enterprise enables the capability of automatically upgrading a cluster of Consul servers to a new diff --git a/website/pages/docs/faq.mdx b/website/pages/docs/faq.mdx index 75b2259c3c..74fb877ab5 100644 --- a/website/pages/docs/faq.mdx +++ b/website/pages/docs/faq.mdx @@ -108,9 +108,9 @@ forward an RPC request to the remote Consul servers for that resource and return the results. If the remote datacenter is not available, then those resources will also not be available from that datacenter. That will not affect the requests to the local -datacenter. There are some special situations where a limited subset of data +datacenter. There are some special situations where a limited subset of data can be replicated, such as with Consul's built-in -[ACL replication](https://learn.hashicorp.com/consul/day-2-operations/acl-replication) +[ACL replication](https://learn.hashicorp.com/consul/day-2-operations/acl-replication) capability, or external tools like [consul-replicate](https://github.com/hashicorp/consul-replicate). @@ -129,10 +129,10 @@ Please see our ## Q: Are the Consul Docker Images OCI Compliant? -The official [Consul Docker image](https://hub.docker.com/_/consul/) uses +The official [Consul Docker image](https://hub.docker.com/_/consul/) uses [Docker image schema](https://docs.docker.com/registry/spec/manifest-v2-2/) V2, -which is OCI Compliant. To check the docker images on Docker Hub, use the -command `docker manifest inspect consul` to inspect the manifest payload. The +which is OCI Compliant. To check the docker images on Docker Hub, use the +command `docker manifest inspect consul` to inspect the manifest payload. The `docker manifest inspect` may require you to enable experimental features to use. diff --git a/website/pages/docs/guides/acl-legacy.mdx b/website/pages/docs/guides/acl-legacy.mdx index ef4a1470d7..733e59a042 100644 --- a/website/pages/docs/guides/acl-legacy.mdx +++ b/website/pages/docs/guides/acl-legacy.mdx @@ -187,7 +187,7 @@ as to whether they are set on servers, clients, or both. | Configuration Option | Servers | Clients | Purpose | | --------------------------------------------------------------------- | ---------- | ---------- | ----------------------------------------------------------------------------------------- | | [`primary_datacenter`](/docs/agent/options#primary_datacenter) | `REQUIRED` | `REQUIRED` | Master control that enables ACLs by defining the authoritative Consul datacenter for ACLs | -| [`acl_default_policy`](/docs/agent/options#acl_default_policy_legacy) | `OPTIONAL` | `N/A` | Determines allowlist or denylist mode | +| [`acl_default_policy`](/docs/agent/options#acl_default_policy_legacy) | `OPTIONAL` | `N/A` | Determines allowlist or denylist mode | | [`acl_down_policy`](/docs/agent/options#acl_down_policy_legacy) | `OPTIONAL` | `OPTIONAL` | Determines what to do when the ACL datacenter is offline | | [`acl_ttl`](/docs/agent/options#acl_ttl_legacy) | `OPTIONAL` | `OPTIONAL` | Determines time-to-live for cached ACLs | diff --git a/website/pages/docs/internals/coordinates.mdx b/website/pages/docs/internals/coordinates.mdx index 68fb9d291d..e9b17da5a1 100644 --- a/website/pages/docs/internals/coordinates.mdx +++ b/website/pages/docs/internals/coordinates.mdx @@ -2,10 +2,7 @@ layout: docs page_title: Network Coordinates sidebar_title: Network Coordinates -description: '' -Serf uses a network tomography system to compute network coordinates for nodes in the cluster. These coordinates are useful for easily calculating the estimated network round trip time between any two nodes in the cluster. This page documents the details of this system. The core of the network tomography system us based on Vivaldi: >- - A Decentralized Network Coordinate System, with several improvements based on - several follow-on papers. +description: A Decentralized Network Coordinate System, with several improvements based on several follow-on papers. --- # Network Coordinates diff --git a/website/pages/docs/k8s/helm.mdx b/website/pages/docs/k8s/helm.mdx index 7fcc00aaa0..445583280d 100644 --- a/website/pages/docs/k8s/helm.mdx +++ b/website/pages/docs/k8s/helm.mdx @@ -789,36 +789,36 @@ and consider if they're appropriate for your deployment. - `wanAddress` ((#v-meshgateway-wanaddress)) - What gets registered as WAN (wide area network) address for the gateway. - `source` ((#v-meshgateway-wanaddress-source)) (`string: "Service"`) - source configures where to retrieve the WAN address (and possibly port) - for the mesh gateway from. - Can be set to either: `Service`, `NodeIP`, `NodeName` or `Static`. See the behavior of each below: + for the mesh gateway from. + Can be set to either: `Service`, `NodeIP`, `NodeName` or `Static`. See the behavior of each below: - * `Service` - Determine the address based on the service type. + - `Service` - Determine the address based on the service type. - If `service.type=LoadBalancer` use the external IP or hostname of - the service. Use the port set by `service.port`. + If `service.type=LoadBalancer` use the external IP or hostname of + the service. Use the port set by `service.port`. - If `service.type=NodePort` use the Node IP. The port will be set to - `service.nodePort` so `service.nodePort` cannot be null. + If `service.type=NodePort` use the Node IP. The port will be set to + `service.nodePort` so `service.nodePort` cannot be null. - If `service.type=ClusterIP` use the ClusterIP. The port will be set to - `service.port`. + If `service.type=ClusterIP` use the ClusterIP. The port will be set to + `service.port`. - `service.type=ExternalName` is not supported. + `service.type=ExternalName` is not supported. - * `NodeIP` - The node IP as provided by the Kubernetes downward API. + - `NodeIP` - The node IP as provided by the Kubernetes downward API. - * `NodeName` - The name of the node as provided by the Kubernetes downward - API. This is useful if the node names are DNS entries that - are routable from other datacenters. + - `NodeName` - The name of the node as provided by the Kubernetes downward + API. This is useful if the node names are DNS entries that + are routable from other datacenters. - * `Static` - Use the address hardcoded in `meshGateway.wanAddress.static`. + - `Static` - Use the address hardcoded in `meshGateway.wanAddress.static`. - `port` ((#v-meshgateway-wanaddress-port)) (`integer: 443`) - Port that gets registered for WAN traffic. If source is set to "Service" then this setting will have no effect. See the documentation for `source` as to which port will be used in that case. - - `static` ((#v-meshgateway-wanaddress-static)) (`string: ""`) - If source is set to "Static" then this value will be used as the WAN + - `static` ((#v-meshgateway-wanaddress-static)) (`string: ""`) - If source is set to "Static" then this value will be used as the WAN address of the mesh gateways. This is useful if you've configured a DNS entry to point to your mesh gateways. @@ -851,8 +851,8 @@ and consider if they're appropriate for your deployment. - `dnsPolicy` ((#v-meshgateway-dnspolicy)) (`string: null`) - `dnsPolicy` to use. - `consulServiceName` ((#v-meshgateway-consulservicename)) (`string: "mesh-gateway"`) - Consul service name for the mesh gateways. - Cannot be set to anything other than `"mesh-gateway"` if `global.acls.manageSystemACLs` is true since the ACL token - generated is only for the name "mesh-gateway". + Cannot be set to anything other than `"mesh-gateway"` if `global.acls.manageSystemACLs` is true since the ACL token + generated is only for the name "mesh-gateway". - `containerPort` ((#v-meshgateway-containerPort)) (`integer: 8443`) - Port that the gateway will run on inside the container. @@ -920,8 +920,8 @@ and consider if they're appropriate for your deployment. "annotation-key": "annotation-value" ``` - - `consulNamespace` ((#v-ingressgateways-defaults-consulnamespace)) (`string: "default"`) - Defines the Consul namespace to register the gateway into. Requires `global.enableConsulNamespaces` to be true and - Consul Enterprise v1.7+ with a valid Consul Enterprise license. Note: The Consul namespace MUST exist before the gateway is deployed. + - `consulNamespace` ((#v-ingressgateways-defaults-consulnamespace)) (`string: "default"`) - Defines the Consul namespace to register the gateway into. Requires `global.enableConsulNamespaces` to be true and + Consul Enterprise v1.7+ with a valid Consul Enterprise license. Note: The Consul namespace MUST exist before the gateway is deployed. - `gateways` ((#v-ingressgateways-gateways)) - Gateways is a list of gateway objects. The only required field for each is `name`, though they can also contain any of the fields in `ingressGateways.defaults`. Values defined here override the defaults except in the case of annotations where both will be applied. @@ -941,9 +941,9 @@ and consider if they're appropriate for your deployment. extraVolumes: - type: 'secret' name: 'my-secret' - items: # optional items array + items: # optional items array - key: key - path: path # secret will now mount to /consul/userconfig/my-secret/path + path: path # secret will now mount to /consul/userconfig/my-secret/path ``` - `resources` ((#v-terminatinggateways-defaults-resources)) (`string`) - Resources for gateway pods. See values file for default. @@ -963,7 +963,7 @@ and consider if they're appropriate for your deployment. "annotation-key": "annotation-value" ``` - - `consulNamespace` ((#v-terminatinggateways-defaults-consulnamespace)) (`string: "default"`) - Defines the Consul namespace to register the gateway into. Requires `global.enableConsulNamespaces` to be true and Consul Enterprise v1.7+ with a valid Consul Enterprise license. Note: The Consul namespace MUST exist before the gateway is deployed. + - `consulNamespace` ((#v-terminatinggateways-defaults-consulnamespace)) (`string: "default"`) - Defines the Consul namespace to register the gateway into. Requires `global.enableConsulNamespaces` to be true and Consul Enterprise v1.7+ with a valid Consul Enterprise license. Note: The Consul namespace MUST exist before the gateway is deployed. - `gateways` ((#v-terminatinggateways-gateways)) - Gateways is a list of gateway objects. The only required field for each is `name`, though they can also contain any of the fields in `terminatingGateways.defaults`. Values defined here override the defaults except in the case of annotations where both will be applied. diff --git a/website/pages/home/index.jsx b/website/pages/home/index.jsx index d7c9f8e518..32d9cb12d0 100644 --- a/website/pages/home/index.jsx +++ b/website/pages/home/index.jsx @@ -195,16 +195,14 @@ export default function HomePage() { title: 'Getting Started', category: 'Step-by-Step Guides', time: '48 mins', - link: - 'https://learn.hashicorp.com/consul/getting-started/install', + link: 'https://learn.hashicorp.com/consul/getting-started/install', image: require('./img/learn/getting-started.svg?url'), }, { title: 'Run Consul on Kubernetes', category: 'Step-by-Step Guides', time: '142 mins', - link: - 'https://learn.hashicorp.com/consul/kubernetes/minikube', + link: 'https://learn.hashicorp.com/consul/kubernetes/minikube', image: require('./img/learn/kubernetes.svg?url'), }, ]} diff --git a/website/pages/partials/jwt_or_oidc.mdx b/website/pages/partials/jwt_or_oidc.mdx index 4bb3c4308f..c84579a3a4 100644 --- a/website/pages/partials/jwt_or_oidc.mdx +++ b/website/pages/partials/jwt_or_oidc.mdx @@ -7,7 +7,7 @@ bearer tokens, it may be confusing to know which is right for a given use case. in possession of a valid JWT to begin. There is no browser interaction required. This is ideal for machine-oriented headless login where an operator may have already arranged for a valid JWT to be dropped on a VM or provided - to a container. + to a container. - **OIDC**: The user performing the Consul login does not have a JWT nor do they even need to know what that means. This is ideal for human-oriented