diff --git a/.gitignore b/.gitignore index 30713b7..454fa04 100644 --- a/.gitignore +++ b/.gitignore @@ -3,7 +3,7 @@ .env.* # NPM -/node_modules +node_modules # Gatsby /.cache diff --git a/gatsby-config.esm.js b/gatsby-config.esm.js index 7127787..f4fac13 100644 --- a/gatsby-config.esm.js +++ b/gatsby-config.esm.js @@ -31,7 +31,9 @@ const config = { siteUrl: path.posix.join((process.env.SITE_URL || siteConfig.rootUrl), pathPrefix) }, plugins: [ - "gatsby-source-animethemes", + process.env.SOURCE_PLUGIN === "DB" + ? "gatsby-source-animethemes-db" + : "gatsby-source-animethemes", "gatsby-plugin-styled-components", "gatsby-plugin-react-helmet", { @@ -56,7 +58,8 @@ const config = { } }, "gatsby-plugin-eslint", - "gatsby-plugin-sass" + "gatsby-plugin-sass", + "gatsby-plugin-extract-schema" ] }; diff --git a/package-lock.json b/package-lock.json index e50bf94..8be92e3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -33,16 +33,16 @@ "integrity": "sha512-YaxPMGs/XIWtYqrdEOZOCPsVWfEoriXopnsz3/i7apYPXQ3698UFhS6dVT1KN5qOsWmVgw/FOrmQgpRaZayGsw==" }, "@babel/core": { - "version": "7.13.8", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.13.8.tgz", - "integrity": "sha512-oYapIySGw1zGhEFRd6lzWNLWFX2s5dA/jm+Pw/+59ZdXtjyIuwlXbrId22Md0rgZVop+aVoqow2riXhBLNyuQg==", + "version": "7.13.10", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.13.10.tgz", + "integrity": "sha512-bfIYcT0BdKeAZrovpMqX2Mx5NrgAckGbwT982AkdS5GNfn3KMGiprlBAtmBcFZRUmpaufS6WZFP8trvx8ptFDw==", "requires": { "@babel/code-frame": "^7.12.13", - "@babel/generator": "^7.13.0", - "@babel/helper-compilation-targets": "^7.13.8", + "@babel/generator": "^7.13.9", + "@babel/helper-compilation-targets": "^7.13.10", "@babel/helper-module-transforms": "^7.13.0", - "@babel/helpers": "^7.13.0", - "@babel/parser": "^7.13.4", + "@babel/helpers": "^7.13.10", + "@babel/parser": "^7.13.10", "@babel/template": "^7.12.13", "@babel/traverse": "^7.13.0", "@babel/types": "^7.13.0", @@ -64,9 +64,9 @@ } }, "@babel/compat-data": { - "version": "7.13.8", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.13.8.tgz", - "integrity": "sha512-EaI33z19T4qN3xLXsGf48M2cDqa6ei9tPZlfLdb2HC+e/cFtREiRd8hdSqDbwdLB0/+gLwqJmCYASH0z2bUdog==" + "version": "7.13.12", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.13.12.tgz", + "integrity": "sha512-3eJJ841uKxeV8dcN/2yGEUy+RfgQspPEgQat85umsE1rotuquQ2AbIub4S6j7c50a2d+4myc+zSlnXeIHrOnhQ==" }, "@babel/generator": { "version": "7.13.9", @@ -79,9 +79,9 @@ } }, "@babel/helper-compilation-targets": { - "version": "7.13.8", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.13.8.tgz", - "integrity": "sha512-pBljUGC1y3xKLn1nrx2eAhurLMA8OqBtBP/JwG4U8skN7kf8/aqwwxpV1N6T0e7r6+7uNitIa/fUxPFagSXp3A==", + "version": "7.13.10", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.13.10.tgz", + "integrity": "sha512-/Xju7Qg1GQO4mHZ/Kcs6Au7gfafgZnwm+a7sy/ow/tV1sHeraRUHbjdat8/UvDor4Tez+siGKDk6zIKtCPKVJA==", "requires": { "@babel/compat-data": "^7.13.8", "@babel/helper-validator-option": "^7.12.17", @@ -108,35 +108,34 @@ } }, "@babel/helper-member-expression-to-functions": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.13.0.tgz", - "integrity": "sha512-yvRf8Ivk62JwisqV1rFRMxiSMDGnN6KH1/mDMmIrij4jztpQNRoHqqMG3U6apYbGRPJpgPalhva9Yd06HlUxJQ==", + "version": "7.13.12", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.13.12.tgz", + "integrity": "sha512-48ql1CLL59aKbU94Y88Xgb2VFy7a95ykGRbJJaaVv+LX5U8wFpLfiGXJJGUozsmA1oEh/o5Bp60Voq7ACyA/Sw==", "requires": { - "@babel/types": "^7.13.0" + "@babel/types": "^7.13.12" } }, "@babel/helper-module-imports": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.12.13.tgz", - "integrity": "sha512-NGmfvRp9Rqxy0uHSSVP+SRIW1q31a7Ji10cLBcqSDUngGentY4FRiHOFZFE1CLU5eiL0oE8reH7Tg1y99TDM/g==", + "version": "7.13.12", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.13.12.tgz", + "integrity": "sha512-4cVvR2/1B693IuOvSI20xqqa/+bl7lqAMR59R4iu39R9aOX8/JoYY1sFaNvUMyMBGnHdwvJgUrzNLoUZxXypxA==", "requires": { - "@babel/types": "^7.12.13" + "@babel/types": "^7.13.12" } }, "@babel/helper-module-transforms": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.13.0.tgz", - "integrity": "sha512-Ls8/VBwH577+pw7Ku1QkUWIyRRNHpYlts7+qSqBBFCW3I8QteB9DxfcZ5YJpOwH6Ihe/wn8ch7fMGOP1OhEIvw==", + "version": "7.13.12", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.13.12.tgz", + "integrity": "sha512-7zVQqMO3V+K4JOOj40kxiCrMf6xlQAkewBB0eu2b03OO/Q21ZutOzjpfD79A5gtE/2OWi1nv625MrDlGlkbknQ==", "requires": { - "@babel/helper-module-imports": "^7.12.13", - "@babel/helper-replace-supers": "^7.13.0", - "@babel/helper-simple-access": "^7.12.13", + "@babel/helper-module-imports": "^7.13.12", + "@babel/helper-replace-supers": "^7.13.12", + "@babel/helper-simple-access": "^7.13.12", "@babel/helper-split-export-declaration": "^7.12.13", "@babel/helper-validator-identifier": "^7.12.11", "@babel/template": "^7.12.13", "@babel/traverse": "^7.13.0", - "@babel/types": "^7.13.0", - "lodash": "^4.17.19" + "@babel/types": "^7.13.12" } }, "@babel/helper-optimise-call-expression": { @@ -148,22 +147,22 @@ } }, "@babel/helper-replace-supers": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.13.0.tgz", - "integrity": "sha512-Segd5me1+Pz+rmN/NFBOplMbZG3SqRJOBlY+mA0SxAv6rjj7zJqr1AVr3SfzUVTLCv7ZLU5FycOM/SBGuLPbZw==", + "version": "7.13.12", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.13.12.tgz", + "integrity": "sha512-Gz1eiX+4yDO8mT+heB94aLVNCL+rbuT2xy4YfyNqu8F+OI6vMvJK891qGBTqL9Uc8wxEvRW92Id6G7sDen3fFw==", "requires": { - "@babel/helper-member-expression-to-functions": "^7.13.0", + "@babel/helper-member-expression-to-functions": "^7.13.12", "@babel/helper-optimise-call-expression": "^7.12.13", "@babel/traverse": "^7.13.0", - "@babel/types": "^7.13.0" + "@babel/types": "^7.13.12" } }, "@babel/helper-simple-access": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.12.13.tgz", - "integrity": "sha512-0ski5dyYIHEfwpWGx5GPWhH35j342JaflmCeQmsPWcrOQDtCN6C1zKAVRFVbK53lPW2c9TsuLLSUDf0tIGJ5hA==", + "version": "7.13.12", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.13.12.tgz", + "integrity": "sha512-7FEjbrx5SL9cWvXioDbnlYTppcZGuCY6ow3/D5vMggb2Ywgu4dMrpTJX0JdQAIcRRUElOIxF3yEooa9gUb9ZbA==", "requires": { - "@babel/types": "^7.12.13" + "@babel/types": "^7.13.12" } }, "@babel/helper-split-export-declaration": { @@ -185,9 +184,9 @@ "integrity": "sha512-TopkMDmLzq8ngChwRlyjR6raKD6gMSae4JdYDB8bByKreQgG0RBTuKe9LRxW3wFtUnjxOPRKBDwEH6Mg5KeDfw==" }, "@babel/highlight": { - "version": "7.13.8", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.13.8.tgz", - "integrity": "sha512-4vrIhfJyfNf+lCtXC2ck1rKSzDwciqF7IWFhXXrSOUC2O5DrVp+w4c6ed4AllTxhTkUP5x2tYj41VaxdVMMRDw==", + "version": "7.13.10", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.13.10.tgz", + "integrity": "sha512-5aPpe5XQPzflQrFwL1/QoeHkP2MsA4JCntcXHRhEsdsfPVkvPi2w7Qix4iV7t5S/oC9OodGrggd8aco1g3SZFg==", "requires": { "@babel/helper-validator-identifier": "^7.12.11", "chalk": "^2.0.0", @@ -195,9 +194,9 @@ } }, "@babel/parser": { - "version": "7.13.9", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.9.tgz", - "integrity": "sha512-nEUfRiARCcaVo3ny3ZQjURjHQZUo/JkEw7rLlSZy/psWGnvwXFtPcr6jb7Yb41DVW5LTe6KRq9LGleRNsg1Frw==" + "version": "7.13.12", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.12.tgz", + "integrity": "sha512-4T7Pb244rxH24yR116LAuJ+adxXXnHhZaLJjegJVKSdoNCe4x1eDBaud5YIcQFcqzsaD5BHvJw5BQ0AZapdCRw==" }, "@babel/template": { "version": "7.12.13", @@ -226,9 +225,9 @@ } }, "@babel/types": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.0.tgz", - "integrity": "sha512-hE+HE8rnG1Z6Wzo+MhaKE5lM5eMx71T4EHJgku2E3xIfaULhDcxiiRxUYgwX8qwP1BBSlag+TdGOt6JAidIZTA==", + "version": "7.13.12", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.12.tgz", + "integrity": "sha512-K4nY2xFN4QMvQwkQ+zmBDp6ANMbVNw6BbxWmYA4qNjhR9W+Lj/8ky5MEY2Me5r+B2c6/v6F53oMndG+f9s3IiA==", "requires": { "@babel/helper-validator-identifier": "^7.12.11", "lodash": "^4.17.19", @@ -243,9 +242,9 @@ } }, "@babel/eslint-parser": { - "version": "7.13.8", - "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.13.8.tgz", - "integrity": "sha512-XewKkiyukrGzMeqToXJQk6hjg2veI9SNQElGzAoAjKxYCLbgcVX4KA2WhoyqMon9N4RMdCZhNTJNOBcp9spsiw==", + "version": "7.13.10", + "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.13.10.tgz", + "integrity": "sha512-/I1HQ3jGPhIpeBFeI3wO9WwWOnBYpuR0pX0KlkdGcRQAVX9prB/FCS2HBpL7BiFbzhny1YCiBH8MTZD2jJa7Hg==", "requires": { "eslint-scope": "5.1.0", "eslint-visitor-keys": "^1.3.0", @@ -502,9 +501,9 @@ } }, "@babel/helpers": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.13.0.tgz", - "integrity": "sha512-aan1MeFPxFacZeSz6Ld7YZo5aPuqnKlD7+HZY75xQsueczFccP9A7V05+oe0XpLwHK3oLorPe9eaAUljL7WEaQ==", + "version": "7.13.10", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.13.10.tgz", + "integrity": "sha512-4VO883+MWPDUVRF3PhiLBUFHoX/bsLTGFpFK/HqvvfBZz2D57u9XzPVNFVBTc0PW/CWR9BXTOKt8NF4DInUHcQ==", "requires": { "@babel/template": "^7.12.13", "@babel/traverse": "^7.13.0", @@ -561,9 +560,9 @@ "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" }, "@babel/highlight": { - "version": "7.13.8", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.13.8.tgz", - "integrity": "sha512-4vrIhfJyfNf+lCtXC2ck1rKSzDwciqF7IWFhXXrSOUC2O5DrVp+w4c6ed4AllTxhTkUP5x2tYj41VaxdVMMRDw==", + "version": "7.13.10", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.13.10.tgz", + "integrity": "sha512-5aPpe5XQPzflQrFwL1/QoeHkP2MsA4JCntcXHRhEsdsfPVkvPi2w7Qix4iV7t5S/oC9OodGrggd8aco1g3SZFg==", "requires": { "@babel/helper-validator-identifier": "^7.12.11", "chalk": "^2.0.0", @@ -571,9 +570,9 @@ } }, "@babel/parser": { - "version": "7.13.9", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.9.tgz", - "integrity": "sha512-nEUfRiARCcaVo3ny3ZQjURjHQZUo/JkEw7rLlSZy/psWGnvwXFtPcr6jb7Yb41DVW5LTe6KRq9LGleRNsg1Frw==" + "version": "7.13.12", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.12.tgz", + "integrity": "sha512-4T7Pb244rxH24yR116LAuJ+adxXXnHhZaLJjegJVKSdoNCe4x1eDBaud5YIcQFcqzsaD5BHvJw5BQ0AZapdCRw==" }, "@babel/template": { "version": "7.12.13", @@ -602,9 +601,9 @@ } }, "@babel/types": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.0.tgz", - "integrity": "sha512-hE+HE8rnG1Z6Wzo+MhaKE5lM5eMx71T4EHJgku2E3xIfaULhDcxiiRxUYgwX8qwP1BBSlag+TdGOt6JAidIZTA==", + "version": "7.13.12", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.12.tgz", + "integrity": "sha512-K4nY2xFN4QMvQwkQ+zmBDp6ANMbVNw6BbxWmYA4qNjhR9W+Lj/8ky5MEY2Me5r+B2c6/v6F53oMndG+f9s3IiA==", "requires": { "@babel/helper-validator-identifier": "^7.12.11", "lodash": "^4.17.19", @@ -1225,9 +1224,9 @@ } }, "@babel/helper-create-class-features-plugin": { - "version": "7.13.8", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.13.8.tgz", - "integrity": "sha512-qioaRrKHQbn4hkRKDHbnuQ6kAxmmOF+kzKGnIfxPK4j2rckSJCpKzr/SSTlohSCiE3uAQpNDJ9FIh4baeE8W+w==", + "version": "7.13.11", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.13.11.tgz", + "integrity": "sha512-ays0I7XYq9xbjCSvT+EvysLgfc3tOkwCULHjrnscGT3A9qD4sk3wXnJ3of0MAWsWGjdinFvajHU2smYuqXKMrw==", "requires": { "@babel/helper-function-name": "^7.12.13", "@babel/helper-member-expression-to-functions": "^7.13.0", @@ -1255,11 +1254,11 @@ } }, "@babel/helper-member-expression-to-functions": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.13.0.tgz", - "integrity": "sha512-yvRf8Ivk62JwisqV1rFRMxiSMDGnN6KH1/mDMmIrij4jztpQNRoHqqMG3U6apYbGRPJpgPalhva9Yd06HlUxJQ==", + "version": "7.13.12", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.13.12.tgz", + "integrity": "sha512-48ql1CLL59aKbU94Y88Xgb2VFy7a95ykGRbJJaaVv+LX5U8wFpLfiGXJJGUozsmA1oEh/o5Bp60Voq7ACyA/Sw==", "requires": { - "@babel/types": "^7.13.0" + "@babel/types": "^7.13.12" } }, "@babel/helper-optimise-call-expression": { @@ -1276,14 +1275,14 @@ "integrity": "sha512-ZPafIPSwzUlAoWT8DKs1W2VyF2gOWthGd5NGFMsBcMMol+ZhK+EQY/e6V96poa6PA/Bh+C9plWN0hXO1uB8AfQ==" }, "@babel/helper-replace-supers": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.13.0.tgz", - "integrity": "sha512-Segd5me1+Pz+rmN/NFBOplMbZG3SqRJOBlY+mA0SxAv6rjj7zJqr1AVr3SfzUVTLCv7ZLU5FycOM/SBGuLPbZw==", + "version": "7.13.12", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.13.12.tgz", + "integrity": "sha512-Gz1eiX+4yDO8mT+heB94aLVNCL+rbuT2xy4YfyNqu8F+OI6vMvJK891qGBTqL9Uc8wxEvRW92Id6G7sDen3fFw==", "requires": { - "@babel/helper-member-expression-to-functions": "^7.13.0", + "@babel/helper-member-expression-to-functions": "^7.13.12", "@babel/helper-optimise-call-expression": "^7.12.13", "@babel/traverse": "^7.13.0", - "@babel/types": "^7.13.0" + "@babel/types": "^7.13.12" } }, "@babel/helper-split-export-declaration": { @@ -1300,9 +1299,9 @@ "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" }, "@babel/highlight": { - "version": "7.13.8", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.13.8.tgz", - "integrity": "sha512-4vrIhfJyfNf+lCtXC2ck1rKSzDwciqF7IWFhXXrSOUC2O5DrVp+w4c6ed4AllTxhTkUP5x2tYj41VaxdVMMRDw==", + "version": "7.13.10", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.13.10.tgz", + "integrity": "sha512-5aPpe5XQPzflQrFwL1/QoeHkP2MsA4JCntcXHRhEsdsfPVkvPi2w7Qix4iV7t5S/oC9OodGrggd8aco1g3SZFg==", "requires": { "@babel/helper-validator-identifier": "^7.12.11", "chalk": "^2.0.0", @@ -1310,9 +1309,9 @@ } }, "@babel/parser": { - "version": "7.13.9", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.9.tgz", - "integrity": "sha512-nEUfRiARCcaVo3ny3ZQjURjHQZUo/JkEw7rLlSZy/psWGnvwXFtPcr6jb7Yb41DVW5LTe6KRq9LGleRNsg1Frw==" + "version": "7.13.12", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.13.12.tgz", + "integrity": "sha512-4T7Pb244rxH24yR116LAuJ+adxXXnHhZaLJjegJVKSdoNCe4x1eDBaud5YIcQFcqzsaD5BHvJw5BQ0AZapdCRw==" }, "@babel/template": { "version": "7.12.13", @@ -1341,9 +1340,9 @@ } }, "@babel/types": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.0.tgz", - "integrity": "sha512-hE+HE8rnG1Z6Wzo+MhaKE5lM5eMx71T4EHJgku2E3xIfaULhDcxiiRxUYgwX8qwP1BBSlag+TdGOt6JAidIZTA==", + "version": "7.13.12", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.13.12.tgz", + "integrity": "sha512-K4nY2xFN4QMvQwkQ+zmBDp6ANMbVNw6BbxWmYA4qNjhR9W+Lj/8ky5MEY2Me5r+B2c6/v6F53oMndG+f9s3IiA==", "requires": { "@babel/helper-validator-identifier": "^7.12.11", "lodash": "^4.17.19", @@ -1499,18 +1498,18 @@ } }, "@babel/runtime-corejs3": { - "version": "7.13.9", - "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.13.9.tgz", - "integrity": "sha512-p6WSr71+5u/VBf1KDS/Y4dK3ZwbV+DD6wQO3X2EbUVluEOiyXUk09DzcwSaUH4WomYXrEPC+i2rqzuthhZhOJw==", + "version": "7.13.10", + "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.13.10.tgz", + "integrity": "sha512-x/XYVQ1h684pp1mJwOV4CyvqZXqbc8CMsMGUnAbuc82ZCdv1U63w5RSUzgDSXQHG5Rps/kiksH6g2D5BuaKyXg==", "requires": { "core-js-pure": "^3.0.0", "regenerator-runtime": "^0.13.4" } }, "@babel/standalone": { - "version": "7.13.9", - "resolved": "https://registry.npmjs.org/@babel/standalone/-/standalone-7.13.9.tgz", - "integrity": "sha512-9ZpIl8rXXQqm5OdsQVhlBSPttwabiHGPGrl5N2bIxB9XS2NJW+1oiPFgMMNd+57C/xVwsEwD2mzv0KValOwlQA==" + "version": "7.13.12", + "resolved": "https://registry.npmjs.org/@babel/standalone/-/standalone-7.13.12.tgz", + "integrity": "sha512-2Xb4B3EdCmgwo7Q3WVHoLfZh0Jg1AvgjWF3e2kLGZ3Yg6EosD0g6qzMZJHZ2sCoEI/g7/bjphSMTqjQDZc6SkA==" }, "@babel/template": { "version": "7.12.7", @@ -1593,7 +1592,6 @@ "version": "0.4.0", "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.0.tgz", "integrity": "sha512-2ZPCc+uNbjV5ERJr+aKSPRwZgKd2z11x0EgLvb1PURmUrn9QNRXFqje0Ldq454PfAVyaJYyrDvvIKSFP4NnBog==", - "dev": true, "requires": { "ajv": "^6.12.4", "debug": "^4.1.1", @@ -1610,7 +1608,6 @@ "version": "12.4.0", "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", - "dev": true, "requires": { "type-fest": "^0.8.1" } @@ -1618,8 +1615,7 @@ "ignore": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==" } } }, @@ -1653,9 +1649,9 @@ } }, "@gatsbyjs/reach-router": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/@gatsbyjs/reach-router/-/reach-router-1.3.5.tgz", - "integrity": "sha512-O7sTZajwCtbjuuUYwjEZdSw7CmAxA6ugDaXtw4hfKoTfj4RZUAB8nYRlecUVuNAQbgHiXJSx2jKfu1hmE9mggA==", + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/@gatsbyjs/reach-router/-/reach-router-1.3.6.tgz", + "integrity": "sha512-RW9ZBir9kqtw4IWm+Z+DLWGOeoJxoaTvNVrnR5fV9zD8EmfAhbBN/hS6i6VnTMFZ7rdd6mnpx2/XtnMvYfsaVQ==", "requires": { "invariant": "^2.2.3", "prop-types": "^15.6.1", @@ -1673,11 +1669,6 @@ "strip-ansi": "^6.0.0" }, "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" - }, "strip-ansi": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", @@ -1700,9 +1691,9 @@ }, "dependencies": { "@graphql-tools/utils": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-7.5.0.tgz", - "integrity": "sha512-8f//RSqHmKRdg9A3GHlZdxzlVfF/938ZD9edXLW7EriSABg1BXu3veru9W02VqORypArb2S/Tyeyvsk2gForqA==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-7.6.0.tgz", + "integrity": "sha512-YCZDDdhfb4Yhie0IH031eGdvQG8C73apDuNg6lqBNbauNw45OG/b8wi3+vuMiDnJTJN32GQUb1Gt9gxDKoRDKw==", "requires": { "@ardatan/aggregate-error": "0.0.6", "camel-case": "4.1.2", @@ -1738,9 +1729,9 @@ }, "dependencies": { "@graphql-tools/utils": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-7.5.0.tgz", - "integrity": "sha512-8f//RSqHmKRdg9A3GHlZdxzlVfF/938ZD9edXLW7EriSABg1BXu3veru9W02VqORypArb2S/Tyeyvsk2gForqA==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-7.6.0.tgz", + "integrity": "sha512-YCZDDdhfb4Yhie0IH031eGdvQG8C73apDuNg6lqBNbauNw45OG/b8wi3+vuMiDnJTJN32GQUb1Gt9gxDKoRDKw==", "requires": { "@ardatan/aggregate-error": "0.0.6", "camel-case": "4.1.2", @@ -1765,9 +1756,9 @@ }, "dependencies": { "@graphql-tools/utils": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-7.5.0.tgz", - "integrity": "sha512-8f//RSqHmKRdg9A3GHlZdxzlVfF/938ZD9edXLW7EriSABg1BXu3veru9W02VqORypArb2S/Tyeyvsk2gForqA==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-7.6.0.tgz", + "integrity": "sha512-YCZDDdhfb4Yhie0IH031eGdvQG8C73apDuNg6lqBNbauNw45OG/b8wi3+vuMiDnJTJN32GQUb1Gt9gxDKoRDKw==", "requires": { "@ardatan/aggregate-error": "0.0.6", "camel-case": "4.1.2", @@ -1812,9 +1803,9 @@ }, "dependencies": { "@graphql-tools/utils": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-7.5.0.tgz", - "integrity": "sha512-8f//RSqHmKRdg9A3GHlZdxzlVfF/938ZD9edXLW7EriSABg1BXu3veru9W02VqORypArb2S/Tyeyvsk2gForqA==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-7.6.0.tgz", + "integrity": "sha512-YCZDDdhfb4Yhie0IH031eGdvQG8C73apDuNg6lqBNbauNw45OG/b8wi3+vuMiDnJTJN32GQUb1Gt9gxDKoRDKw==", "requires": { "@ardatan/aggregate-error": "0.0.6", "camel-case": "4.1.2", @@ -1852,9 +1843,9 @@ }, "dependencies": { "@graphql-tools/utils": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-7.5.0.tgz", - "integrity": "sha512-8f//RSqHmKRdg9A3GHlZdxzlVfF/938ZD9edXLW7EriSABg1BXu3veru9W02VqORypArb2S/Tyeyvsk2gForqA==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-7.6.0.tgz", + "integrity": "sha512-YCZDDdhfb4Yhie0IH031eGdvQG8C73apDuNg6lqBNbauNw45OG/b8wi3+vuMiDnJTJN32GQUb1Gt9gxDKoRDKw==", "requires": { "@ardatan/aggregate-error": "0.0.6", "camel-case": "4.1.2", @@ -1900,9 +1891,9 @@ }, "dependencies": { "@graphql-tools/utils": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-7.5.0.tgz", - "integrity": "sha512-8f//RSqHmKRdg9A3GHlZdxzlVfF/938ZD9edXLW7EriSABg1BXu3veru9W02VqORypArb2S/Tyeyvsk2gForqA==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-7.6.0.tgz", + "integrity": "sha512-YCZDDdhfb4Yhie0IH031eGdvQG8C73apDuNg6lqBNbauNw45OG/b8wi3+vuMiDnJTJN32GQUb1Gt9gxDKoRDKw==", "requires": { "@ardatan/aggregate-error": "0.0.6", "camel-case": "4.1.2", @@ -1926,9 +1917,9 @@ }, "dependencies": { "@graphql-tools/utils": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-7.5.0.tgz", - "integrity": "sha512-8f//RSqHmKRdg9A3GHlZdxzlVfF/938ZD9edXLW7EriSABg1BXu3veru9W02VqORypArb2S/Tyeyvsk2gForqA==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-7.6.0.tgz", + "integrity": "sha512-YCZDDdhfb4Yhie0IH031eGdvQG8C73apDuNg6lqBNbauNw45OG/b8wi3+vuMiDnJTJN32GQUb1Gt9gxDKoRDKw==", "requires": { "@ardatan/aggregate-error": "0.0.6", "camel-case": "4.1.2", @@ -1943,33 +1934,33 @@ } }, "@graphql-tools/url-loader": { - "version": "6.8.1", - "resolved": "https://registry.npmjs.org/@graphql-tools/url-loader/-/url-loader-6.8.1.tgz", - "integrity": "sha512-iE/y9IAu0cZYL7o9IIDdGm5WjxacN25nGgVqjZINYlisW/wyuBxng7DMJBAp6yM6gkxkCpMno1ljA/52MXzVPQ==", + "version": "6.8.2", + "resolved": "https://registry.npmjs.org/@graphql-tools/url-loader/-/url-loader-6.8.2.tgz", + "integrity": "sha512-YzsXSCOwlSj8UqOMhQThPzgEChgS/MonyWV7f0WKmN9gAT/f3fPaUcYhVamsH0vGbvTkfNM4JdoZO/39amRs5Q==", "requires": { "@graphql-tools/delegate": "^7.0.1", "@graphql-tools/utils": "^7.1.5", "@graphql-tools/wrap": "^7.0.4", - "@types/websocket": "1.0.1", - "cross-fetch": "3.0.6", - "eventsource": "1.0.7", + "@types/websocket": "1.0.2", + "cross-fetch": "3.1.1", + "eventsource": "1.1.0", "extract-files": "9.0.0", "form-data": "4.0.0", "graphql-upload": "^11.0.0", - "graphql-ws": "4.1.5", + "graphql-ws": "4.2.2", "is-promise": "4.0.0", "isomorphic-ws": "4.0.1", "sse-z": "0.3.0", "sync-fetch": "0.3.0", "tslib": "~2.1.0", "valid-url": "1.0.9", - "ws": "7.4.3" + "ws": "7.4.4" }, "dependencies": { "@graphql-tools/utils": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-7.5.0.tgz", - "integrity": "sha512-8f//RSqHmKRdg9A3GHlZdxzlVfF/938ZD9edXLW7EriSABg1BXu3veru9W02VqORypArb2S/Tyeyvsk2gForqA==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-7.6.0.tgz", + "integrity": "sha512-YCZDDdhfb4Yhie0IH031eGdvQG8C73apDuNg6lqBNbauNw45OG/b8wi3+vuMiDnJTJN32GQUb1Gt9gxDKoRDKw==", "requires": { "@ardatan/aggregate-error": "0.0.6", "camel-case": "4.1.2", @@ -2029,9 +2020,9 @@ }, "dependencies": { "@graphql-tools/utils": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-7.5.0.tgz", - "integrity": "sha512-8f//RSqHmKRdg9A3GHlZdxzlVfF/938ZD9edXLW7EriSABg1BXu3veru9W02VqORypArb2S/Tyeyvsk2gForqA==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-7.6.0.tgz", + "integrity": "sha512-YCZDDdhfb4Yhie0IH031eGdvQG8C73apDuNg6lqBNbauNw45OG/b8wi3+vuMiDnJTJN32GQUb1Gt9gxDKoRDKw==", "requires": { "@ardatan/aggregate-error": "0.0.6", "camel-case": "4.1.2", @@ -2245,17 +2236,17 @@ } }, "@sideway/address": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.0.tgz", - "integrity": "sha512-wAH/JYRXeIFQRsxerIuLjgUu2Xszam+O5xKeatJ4oudShOOirfmsQ1D6LL54XOU2tizpCYku+s1wmU0SYdpoSA==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.1.tgz", + "integrity": "sha512-+I5aaQr3m0OAmMr7RQ3fR9zx55sejEYR2BFJaxL+zT3VM2611X0SHvPWIbAUBZVTn/YzYKbV8gJ2oT/QELknfQ==", "requires": { "@hapi/hoek": "^9.0.0" }, "dependencies": { "@hapi/hoek": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.1.0.tgz", - "integrity": "sha512-i9YbZPN3QgfighY/1X1Pu118VUz2Fmmhd6b2n0/O8YVgGGfw0FbUYoA97k7FkpGJ+pLCFEDLUmAPPV4D1kpeFw==" + "version": "9.1.1", + "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.1.1.tgz", + "integrity": "sha512-CAEbWH7OIur6jEOzaai83jq3FmKmv4PmX1JYfs9IrYcGEVI/lyL1EXJGCj7eFVJ0bg5QR8LMxBlEtA+xKiLpFw==" } } }, @@ -2465,9 +2456,9 @@ "integrity": "sha512-Q1y515GcOdTHgagaVFhHnIFQ38ygs/kmxdNpvpou+raI9UO3YZcHDngBSYKQklcKlvA7iuQlmIKbzvmxcOE9CQ==" }, "@types/eslint": { - "version": "7.2.6", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-7.2.6.tgz", - "integrity": "sha512-I+1sYH+NPQ3/tVqCeUSBwTE/0heyvtXqpIopUUArlBm0Kpocb8FbMa3AZ/ASKIFpN3rnEx932TTXDbt9OXsNDw==", + "version": "7.2.7", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-7.2.7.tgz", + "integrity": "sha512-EHXbc1z2GoQRqHaAT7+grxlTJ3WE2YNeD6jlpPoRc83cCoThRY+NUWjCUZaYmk51OICkPXn2hhphcWcWXgNW0Q==", "requires": { "@types/estree": "*", "@types/json-schema": "*" @@ -2614,11 +2605,12 @@ } }, "@types/react": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.2.tgz", - "integrity": "sha512-Xt40xQsrkdvjn1EyWe1Bc0dJLcil/9x2vAuW7ya+PuQip4UYUaXyhzWmAbwRsdMgwOFHpfp7/FFZebDU6Y8VHA==", + "version": "17.0.3", + "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.3.tgz", + "integrity": "sha512-wYOUxIgs2HZZ0ACNiIayItyluADNbONl7kt8lkLjVK8IitMH5QMyAh75Fwhmo37r1m7L2JaFj03sIfxBVDvRAg==", "requires": { "@types/prop-types": "*", + "@types/scheduler": "*", "csstype": "^3.0.2" } }, @@ -2640,6 +2632,11 @@ "@types/node": "*" } }, + "@types/scheduler": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.1.tgz", + "integrity": "sha512-EaCxbanVeyxDRTQBkdLb3Bvl/HK7PBK6UJjsSixB0iHKoWxE5uu2Q/DgtpOhPIojN0Zl1whvOd7PoHs2P0s5eA==" + }, "@types/tmp": { "version": "0.0.33", "resolved": "https://registry.npmjs.org/@types/tmp/-/tmp-0.0.33.tgz", @@ -2651,9 +2648,9 @@ "integrity": "sha512-FvUupuM3rlRsRtCN+fDudtmytGO6iHJuuRKS1Ss0pG5z8oX0diNEw94UEL7hgDbpN94rgaK5R7sWm6RrSkZuAQ==" }, "@types/websocket": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@types/websocket/-/websocket-1.0.1.tgz", - "integrity": "sha512-f5WLMpezwVxCLm1xQe/kdPpQIOmL0TXYx2O15VYfYzc7hTIdxiOoOvez+McSIw3b7z/1zGovew9YSL7+h4h7/Q==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@types/websocket/-/websocket-1.0.2.tgz", + "integrity": "sha512-B5m9aq7cbbD/5/jThEr33nUY8WEfVi6A2YKCTOvw5Ldy7mtsOkqRvGjnzy6g7iMMDsgu7xREuCzqATLDLQVKcQ==", "requires": { "@types/node": "*" } @@ -2677,12 +2674,12 @@ "integrity": "sha512-S9q47ByT2pPvD65IvrWp7qppVMpk9WGMbVq9wbWZOHg6tnXSD4vyhao6nOSBwwfDdV2p3Kx9evA9vI+XWTfDvw==" }, "@typescript-eslint/eslint-plugin": { - "version": "4.15.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.15.2.tgz", - "integrity": "sha512-uiQQeu9tWl3f1+oK0yoAv9lt/KXO24iafxgQTkIYO/kitruILGx3uH+QtIAHqxFV+yIsdnJH+alel9KuE3J15Q==", + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.19.0.tgz", + "integrity": "sha512-CRQNQ0mC2Pa7VLwKFbrGVTArfdVDdefS+gTw0oC98vSI98IX5A8EVH4BzJ2FOB0YlCmm8Im36Elad/Jgtvveaw==", "requires": { - "@typescript-eslint/experimental-utils": "4.15.2", - "@typescript-eslint/scope-manager": "4.15.2", + "@typescript-eslint/experimental-utils": "4.19.0", + "@typescript-eslint/scope-manager": "4.19.0", "debug": "^4.1.1", "functional-red-black-tree": "^1.0.1", "lodash": "^4.17.15", @@ -2692,9 +2689,9 @@ }, "dependencies": { "semver": { - "version": "7.3.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", - "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", "requires": { "lru-cache": "^6.0.0" } @@ -2702,50 +2699,50 @@ } }, "@typescript-eslint/experimental-utils": { - "version": "4.15.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.15.2.tgz", - "integrity": "sha512-Fxoshw8+R5X3/Vmqwsjc8nRO/7iTysRtDqx6rlfLZ7HbT8TZhPeQqbPjTyk2RheH3L8afumecTQnUc9EeXxohQ==", + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.19.0.tgz", + "integrity": "sha512-9/23F1nnyzbHKuoTqFN1iXwN3bvOm/PRIXSBR3qFAYotK/0LveEOHr5JT1WZSzcD6BESl8kPOG3OoDRKO84bHA==", "requires": { "@types/json-schema": "^7.0.3", - "@typescript-eslint/scope-manager": "4.15.2", - "@typescript-eslint/types": "4.15.2", - "@typescript-eslint/typescript-estree": "4.15.2", + "@typescript-eslint/scope-manager": "4.19.0", + "@typescript-eslint/types": "4.19.0", + "@typescript-eslint/typescript-estree": "4.19.0", "eslint-scope": "^5.0.0", "eslint-utils": "^2.0.0" } }, "@typescript-eslint/parser": { - "version": "4.15.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.15.2.tgz", - "integrity": "sha512-SHeF8xbsC6z2FKXsaTb1tBCf0QZsjJ94H6Bo51Y1aVEZ4XAefaw5ZAilMoDPlGghe+qtq7XdTiDlGfVTOmvA+Q==", + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.19.0.tgz", + "integrity": "sha512-/uabZjo2ZZhm66rdAu21HA8nQebl3lAIDcybUoOxoI7VbZBYavLIwtOOmykKCJy+Xq6Vw6ugkiwn8Js7D6wieA==", "requires": { - "@typescript-eslint/scope-manager": "4.15.2", - "@typescript-eslint/types": "4.15.2", - "@typescript-eslint/typescript-estree": "4.15.2", + "@typescript-eslint/scope-manager": "4.19.0", + "@typescript-eslint/types": "4.19.0", + "@typescript-eslint/typescript-estree": "4.19.0", "debug": "^4.1.1" } }, "@typescript-eslint/scope-manager": { - "version": "4.15.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.15.2.tgz", - "integrity": "sha512-Zm0tf/MSKuX6aeJmuXexgdVyxT9/oJJhaCkijv0DvJVT3ui4zY6XYd6iwIo/8GEZGy43cd7w1rFMiCLHbRzAPQ==", + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.19.0.tgz", + "integrity": "sha512-GGy4Ba/hLXwJXygkXqMzduqOMc+Na6LrJTZXJWVhRrSuZeXmu8TAnniQVKgj8uTRKe4igO2ysYzH+Np879G75g==", "requires": { - "@typescript-eslint/types": "4.15.2", - "@typescript-eslint/visitor-keys": "4.15.2" + "@typescript-eslint/types": "4.19.0", + "@typescript-eslint/visitor-keys": "4.19.0" } }, "@typescript-eslint/types": { - "version": "4.15.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.15.2.tgz", - "integrity": "sha512-r7lW7HFkAarfUylJ2tKndyO9njwSyoy6cpfDKWPX6/ctZA+QyaYscAHXVAfJqtnY6aaTwDYrOhp+ginlbc7HfQ==" + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.19.0.tgz", + "integrity": "sha512-A4iAlexVvd4IBsSTNxdvdepW0D4uR/fwxDrKUa+iEY9UWvGREu2ZyB8ylTENM1SH8F7bVC9ac9+si3LWNxcBuA==" }, "@typescript-eslint/typescript-estree": { - "version": "4.15.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.15.2.tgz", - "integrity": "sha512-cGR8C2g5SPtHTQvAymEODeqx90pJHadWsgTtx6GbnTWKqsg7yp6Eaya9nFzUd4KrKhxdYTTFBiYeTPQaz/l8bw==", + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.19.0.tgz", + "integrity": "sha512-3xqArJ/A62smaQYRv2ZFyTA+XxGGWmlDYrsfZG68zJeNbeqRScnhf81rUVa6QG4UgzHnXw5VnMT5cg75dQGDkA==", "requires": { - "@typescript-eslint/types": "4.15.2", - "@typescript-eslint/visitor-keys": "4.15.2", + "@typescript-eslint/types": "4.19.0", + "@typescript-eslint/visitor-keys": "4.19.0", "debug": "^4.1.1", "globby": "^11.0.1", "is-glob": "^4.0.1", @@ -2753,23 +2750,10 @@ "tsutils": "^3.17.1" }, "dependencies": { - "globby": { - "version": "11.0.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.2.tgz", - "integrity": "sha512-2ZThXDvvV8fYFRVIxnrMQBipZQDr7MxKAmQK1vujaj9/7eF0efG7BPUKJ7jP7G5SLF37xKDXvO4S/KKLj/Z0og==", - "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" - } - }, "semver": { - "version": "7.3.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", - "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", "requires": { "lru-cache": "^6.0.0" } @@ -2777,11 +2761,11 @@ } }, "@typescript-eslint/visitor-keys": { - "version": "4.15.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.15.2.tgz", - "integrity": "sha512-TME1VgSb7wTwgENN5KVj4Nqg25hP8DisXxNBojM4Nn31rYaNDIocNm5cmjOFfh42n7NVERxWrDFoETO/76ePyg==", + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.19.0.tgz", + "integrity": "sha512-aGPS6kz//j7XLSlgpzU2SeTqHPsmRYxFztj2vPuMMFJXZudpRSehE3WCV+BaxwZFvfAqMoSd86TEuM0PQ59E/A==", "requires": { - "@typescript-eslint/types": "4.15.2", + "@typescript-eslint/types": "4.19.0", "eslint-visitor-keys": "^2.0.0" }, "dependencies": { @@ -2952,6 +2936,15 @@ "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz", "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==" }, + "add-filename-increment": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/add-filename-increment/-/add-filename-increment-1.0.0.tgz", + "integrity": "sha512-pFV8VZX8jxuVMIycKvGZkWF/ihnUubu9lbQVnOnZWp7noVxbKQTNj7zG2y9fXdPcuZ6lAN3Drr517HaivGCjdQ==", + "dev": true, + "requires": { + "strip-filename-increment": "^2.0.1" + } + }, "address": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/address/-/address-1.1.2.tgz", @@ -3026,16 +3019,16 @@ "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", @@ -3045,14 +3038,6 @@ "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" - } } } }, @@ -3074,8 +3059,7 @@ "ansi-regex": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" }, "ansi-styles": { "version": "3.2.1", @@ -3116,6 +3100,27 @@ "requires": { "delegates": "^1.0.0", "readable-stream": "^2.0.6" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + } } }, "arg": { @@ -3231,8 +3236,7 @@ "astral-regex": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", - "dev": true + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==" }, "async": { "version": "1.5.2", @@ -3289,13 +3293,13 @@ "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" }, "autoprefixer": { - "version": "10.2.4", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.2.4.tgz", - "integrity": "sha512-DCCdUQiMD+P/as8m3XkeTUkUKuuRqLGcwD0nll7wevhqoJfMRpJlkFd1+MQh1pvupjiQuip42lc/VFvfUTMSKw==", + "version": "10.2.5", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.2.5.tgz", + "integrity": "sha512-7H4AJZXvSsn62SqZyJCP+1AWwOuoYpUfK6ot9vm0e87XD6mT8lDywc9D9OTJPMULyGcvmIxzTAMeG2Cc+YX+fA==", "requires": { - "browserslist": "^4.16.1", - "caniuse-lite": "^1.0.30001181", - "colorette": "^1.2.1", + "browserslist": "^4.16.3", + "caniuse-lite": "^1.0.30001196", + "colorette": "^1.2.2", "fraction.js": "^4.0.13", "normalize-range": "^0.1.2", "postcss-value-parser": "^4.1.0" @@ -3314,14 +3318,19 @@ } }, "caniuse-lite": { - "version": "1.0.30001194", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001194.tgz", - "integrity": "sha512-iDUOH+oFeBYk5XawYsPtsx/8fFpndAPUQJC7gBTfxHM8xw5nOZv7ceAD4frS1MKCLUac7QL5wdAJiFQlDRjXlA==" + "version": "1.0.30001204", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001204.tgz", + "integrity": "sha512-JUdjWpcxfJ9IPamy2f5JaRDCaqJOxDzOSKtbdx4rH9VivMd1vIzoPumsJa9LoMIi4Fx2BV2KZOxWhNkBjaYivQ==" + }, + "colorette": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz", + "integrity": "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==" }, "electron-to-chromium": { - "version": "1.3.678", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.678.tgz", - "integrity": "sha512-E5ha1pE9+aWWrT2fUD5wdPBWUnYtKnEnloewbtVyrkAs79HvodOiNO4rMR94+hKbxgMFQG4fnPQACOc1cfMfBg==" + "version": "1.3.693", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.693.tgz", + "integrity": "sha512-vUdsE8yyeu30RecppQtI+XTz2++LWLVEIYmzeCaCRLSdtKZ2eXqdJcrs85KwLiPOPVc6PELgWyXBsfqIvzGZag==" }, "node-releases": { "version": "1.1.71", @@ -3331,9 +3340,9 @@ } }, "axe-core": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.1.2.tgz", - "integrity": "sha512-V+Nq70NxKhYt89ArVcaNL9FDryB3vQOd+BFXZIfO3RP6rwtj+2yqqqdHEkacutglPaZLkJeuXKCjCJDMGPtPqg==" + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.1.3.tgz", + "integrity": "sha512-vwPpH4Aj4122EW38mxO/fxhGKtwWTMLDIJfZ1He0Edbtjcfna/R3YB67yVhezUMzqc3Jr3+Ii50KRntlENL4xQ==" }, "axios": { "version": "0.21.1", @@ -3414,9 +3423,9 @@ "integrity": "sha512-GqQGa3xX3Z2ft97oDbGvEFoxD8nKqb3ZVszrOc5H7icnEUA56BIjVYm86hfZZA82uuHLwTIfCXbEKzKG1BzKzg==" }, "babel-plugin-remove-graphql-queries": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/babel-plugin-remove-graphql-queries/-/babel-plugin-remove-graphql-queries-3.0.0.tgz", - "integrity": "sha512-eKyztf9FDm4U+aEojPXKlYbE0VM4L2fxU+xHAn21lx13ZR7jT+N5qQNeZk+wR7I/NzwFBy1nuHFui4oXa/Kr0A==" + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/babel-plugin-remove-graphql-queries/-/babel-plugin-remove-graphql-queries-3.1.0.tgz", + "integrity": "sha512-SRQLdxRg74aO8YWi/asxE31qn9bzPzSk28mJ6tHoT7U3Y2VPWhTVCLRXALLlRZEYFyLI4RJKSMT6LdKzN9a79Q==" }, "babel-plugin-styled-components": { "version": "1.12.0", @@ -3585,9 +3594,9 @@ "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==" }, "bl": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.0.3.tgz", - "integrity": "sha512-fs4G6/Hu4/EE+F75J8DuN/0IpQqNjAdC7aEQv7Qt8MHGUH7Ckv2MwTEEeN9QehD0pfIDkMI1bkHYkKy7xHyKIg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", "requires": { "buffer": "^5.5.0", "inherits": "^2.0.4", @@ -3683,11 +3692,6 @@ "widest-line": "^3.1.0" }, "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" - }, "ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", @@ -3728,29 +3732,6 @@ "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.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "requires": { - "ansi-regex": "^5.0.0" - } - }, "supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -3823,9 +3804,9 @@ "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" }, "cacache": { - "version": "15.0.5", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.0.5.tgz", - "integrity": "sha512-lloiL22n7sOjEEXdL8NAjTgv9a1u43xICE9/203qonkZUCj5X1UEWIdf2/Y0d6QcCtMzbKQyhrcDbdvlZTs/+A==", + "version": "15.0.6", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.0.6.tgz", + "integrity": "sha512-g1WYDMct/jzW+JdWEyjaX2zoBkZ6ZT9VpOyp2I/VMtDsNLffNat3kqPFfi1eDRSK9/SuKGyORDHcQMcPF8sQ/w==", "requires": { "@npmcli/move-file": "^1.0.1", "chownr": "^2.0.0", @@ -3841,16 +3822,11 @@ "p-map": "^4.0.0", "promise-inflight": "^1.0.1", "rimraf": "^3.0.2", - "ssri": "^8.0.0", + "ssri": "^8.0.1", "tar": "^6.0.2", "unique-filename": "^1.1.1" }, "dependencies": { - "chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==" - }, "mkdirp": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", @@ -4068,9 +4044,9 @@ } }, "chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==" }, "chrome-trace-event": { "version": "1.0.2", @@ -4202,26 +4178,6 @@ "wrap-ansi": "^7.0.0" }, "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" - }, - "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.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, "strip-ansi": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", @@ -4302,9 +4258,9 @@ "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" }, "color-string": { - "version": "1.5.4", - "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.5.4.tgz", - "integrity": "sha512-57yF5yt8Xa3czSEW1jfQDE79Idk0+AkN/4KWad6tbdxUmAs3MvjxlWSWD4deYytcRfoZ9nhKyFl1kj5tBvidbw==", + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.5.5.tgz", + "integrity": "sha512-jgIoum0OfQfq9Whcfc2z/VhCNcmQjWbey6qBX0vqt7YICflUmBCh9E9CiQD5GSJ+Uehixm3NUwHVhqUAWRivZg==", "requires": { "color-name": "^1.0.0", "simple-swizzle": "^0.2.2" @@ -4450,9 +4406,9 @@ "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" }, "contentful-management": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/contentful-management/-/contentful-management-7.8.0.tgz", - "integrity": "sha512-7m9YmKlAmlo1IbzgAwi/sVtipLFKB8f32kmwGyB2/+E5EbPFcSlsptTcUrVg7y34EinggQiBUYVJO/6qZ6wlYw==", + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/contentful-management/-/contentful-management-7.11.0.tgz", + "integrity": "sha512-ewRMdKe1BpJ3ySAVBaIjOPsaVi9tP9cWd6h04foS+1u4HrAG23IKZsD3ZPl4jrArKerLDetvXAX0S446/DVd1g==", "requires": { "axios": "^0.21.0", "contentful-sdk-core": "^6.7.0", @@ -4478,9 +4434,12 @@ }, "dependencies": { "qs": { - "version": "6.9.6", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.6.tgz", - "integrity": "sha512-TIRk4aqYLNoJUbd+g2lEdz5kLWIuTMRagAXxl78Q0RiVjAOugHmeKNGdd3cwo/ktpf9aL9epCfFqWDEKysUlLQ==" + "version": "6.10.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.1.tgz", + "integrity": "sha512-M528Hph6wsSVOBiYUnGf+K/7w0hNshs/duGsNXPUCLH5XAqjEtiPGwNONLV0tBH8NoGb0mvD5JubnUTrujKDTg==", + "requires": { + "side-channel": "^1.0.4" + } } } }, @@ -4594,9 +4553,9 @@ } }, "create-gatsby": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/create-gatsby/-/create-gatsby-1.0.0.tgz", - "integrity": "sha512-eDa6rpm6sNrqrnzZDBRsbiCvEvUibAswliYcwqEP1ibgljQ88TXZP4FLnX6//Epj4zTwpUPVYALWVluOgBNGCA==" + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/create-gatsby/-/create-gatsby-1.1.0.tgz", + "integrity": "sha512-AM9JNlbIOkTinGNiG7J8AnCCykZxJfVENlv1vF7hS3RqGsKeZlv4PADTLCdkeIUhaLcjEiEVv7HbyfK8dA2eoA==" }, "create-require": { "version": "1.1.1", @@ -4604,9 +4563,9 @@ "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==" }, "cross-fetch": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.0.6.tgz", - "integrity": "sha512-KBPUbqgFjzWlVcURG+Svp9TlhA5uliYtiNx/0r8nv0pdypeQCRJ9IaSIc3q/x3q8t3F75cHuwxVql1HFGHCNJQ==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.1.tgz", + "integrity": "sha512-eIF+IHQpRzoGd/0zPrwQmHwDC90mdvjk+hcbYhKoaRrEk4GEIDqdjs/MljmdPPoHTQudbmWS+f0hZsEpFaEvWw==", "requires": { "node-fetch": "2.6.1" } @@ -4691,15 +4650,15 @@ } }, "css-loader": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-5.1.1.tgz", - "integrity": "sha512-5FfhpjwtuRgxqmusDidowqmLlcb+1HgnEDMsi2JhiUrZUcoc+cqw+mUtMIF/+OfeMYaaFCLYp1TaIt9H6I/fKA==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-5.1.3.tgz", + "integrity": "sha512-CoPZvyh8sLiGARK3gqczpfdedbM74klGWurF2CsNZ2lhNaXdLIUks+3Mfax3WBeRuHoglU+m7KG/+7gY6G4aag==", "requires": { "camelcase": "^6.2.0", "cssesc": "^3.0.0", "icss-utils": "^5.1.0", "loader-utils": "^2.0.0", - "postcss": "^8.2.6", + "postcss": "^8.2.8", "postcss-modules-extract-imports": "^3.0.0", "postcss-modules-local-by-default": "^4.0.0", "postcss-modules-scope": "^3.0.0", @@ -4709,6 +4668,11 @@ "semver": "^7.3.4" }, "dependencies": { + "colorette": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz", + "integrity": "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==" + }, "loader-utils": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz", @@ -4719,6 +4683,16 @@ "json5": "^2.1.2" } }, + "postcss": { + "version": "8.2.8", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.2.8.tgz", + "integrity": "sha512-1F0Xb2T21xET7oQV9eKuctbM9S7BC0fetoHCc4H13z0PT6haiRLP4T0ZY4XWh7iLP0usgqykT6p9B2RtOf4FPw==", + "requires": { + "colorette": "^1.2.2", + "nanoid": "^3.1.20", + "source-map": "^0.6.1" + } + }, "schema-utils": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz", @@ -4730,19 +4704,24 @@ } }, "semver": { - "version": "7.3.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", - "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", "requires": { "lru-cache": "^6.0.0" } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" } } }, "css-minimizer-webpack-plugin": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-1.2.0.tgz", - "integrity": "sha512-XU4+PXw7QKAlRGU+fB386YiczAAPtk0kVsB/Qf2nX8GJaOXgTsk/PST8YBExeoD299wheG//MCCKlCD5fykb7Q==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-1.3.0.tgz", + "integrity": "sha512-jFa0Siplmfef4ndKglpVaduY47oHQwioAOEGK0f0vAX0s+vc+SmP6cCMoc+8Adau5600RnOEld5VVdC8CQau7w==", "requires": { "cacache": "^15.0.5", "cssnano": "^4.1.10", @@ -5099,9 +5078,9 @@ "integrity": "sha512-YzhyDAwA4TaQIhM5go+vCLmU0UikghC/t9DTQYZR2M/UvZ1MdOhPezSDZcjj9uqQJOMqjLcpWtyW2iNINdlatQ==" }, "date-fns": { - "version": "2.18.0", - "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.18.0.tgz", - "integrity": "sha512-NYyAg4wRmGVU4miKq5ivRACOODdZRY3q5WLmOJSq8djyzftYphU7dTHLcEtLqEvfqMKQ0jVv91P4BAwIjsXIcw==" + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.19.0.tgz", + "integrity": "sha512-X3bf2iTPgCAQp9wvjOQytnf5vO5rESYRXlPIVcgSbtT5OTScPcsf9eZU+B/YIkKAtYr5WeCii58BgATrNitlWg==" }, "debug": { "version": "4.3.1", @@ -5268,6 +5247,21 @@ "slash": "^3.0.0" }, "dependencies": { + "globby": { + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.2.tgz", + "integrity": "sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==", + "requires": { + "@types/glob": "^7.1.1", + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.0.3", + "glob": "^7.1.3", + "ignore": "^5.1.1", + "merge2": "^1.2.3", + "slash": "^3.0.0" + } + }, "p-map": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", @@ -5324,9 +5318,9 @@ } }, "detect-node": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.4.tgz", - "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==" + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.5.tgz", + "integrity": "sha512-qi86tE6hRcFHy8jI1m2VG+LaPUR1LhqDa5G8tVjuUXmOrpuAgqsA1pN0+ldgr3aKUH+QLI9hCY/OcRYisERejw==" }, "detect-port": { "version": "1.3.0", @@ -5721,9 +5715,9 @@ } }, "es-module-lexer": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.4.0.tgz", - "integrity": "sha512-iuEGihqqhKWFgh72Q/Jtch7V2t/ft8w8IPP2aEN8ArYKO+IWyo6hsi96hCdgyeEDQIV3InhYQ9BlwUFPGXrbEQ==" + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.4.1.tgz", + "integrity": "sha512-ooYciCUtfw6/d2w56UVeqHPcoCFAiJdz5XOkYpv/Txl1HMUozpXjz/2RIQgqwKdXNDPSF1W7mJCFse3G+HDyAA==" }, "es-to-primitive": { "version": "1.2.1", @@ -5806,7 +5800,6 @@ "version": "7.21.0", "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.21.0.tgz", "integrity": "sha512-W2aJbXpMNofUp0ztQaF40fveSsJBjlSCSWpy//gzfTvwC+USs/nceBrKmlJOiM8r1bLwP2EuYkCqArn/6QTIgg==", - "dev": true, "requires": { "@babel/code-frame": "7.12.11", "@eslint/eslintrc": "^0.4.0", @@ -5851,7 +5844,6 @@ "version": "7.12.11", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", - "dev": true, "requires": { "@babel/highlight": "^7.10.4" } @@ -5860,7 +5852,6 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, "requires": { "color-convert": "^2.0.1" } @@ -5869,7 +5860,6 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", - "dev": true, "requires": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -5879,7 +5869,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, "requires": { "color-name": "~1.1.4" } @@ -5887,14 +5876,12 @@ "color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "cross-spawn": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, "requires": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -5904,14 +5891,12 @@ "eslint-visitor-keys": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz", - "integrity": "sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ==", - "dev": true + "integrity": "sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ==" }, "globals": { "version": "12.4.0", "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", - "dev": true, "requires": { "type-fest": "^0.8.1" } @@ -5919,26 +5904,22 @@ "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" }, "ignore": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==" }, "path-key": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==" }, "semver": { "version": "7.3.4", "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", - "dev": true, "requires": { "lru-cache": "^6.0.0" } @@ -5947,7 +5928,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, "requires": { "shebang-regex": "^3.0.0" } @@ -5955,14 +5935,12 @@ "shebang-regex": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==" }, "strip-ansi": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, "requires": { "ansi-regex": "^5.0.0" } @@ -5971,7 +5949,6 @@ "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, "requires": { "has-flag": "^4.0.0" } @@ -5980,7 +5957,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, "requires": { "isexe": "^2.0.0" } @@ -6127,9 +6103,9 @@ } }, "eslint-plugin-flowtype": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-flowtype/-/eslint-plugin-flowtype-5.3.1.tgz", - "integrity": "sha512-mziJD+zw+VTwLtF9qLIxYac0GJCbSEDyqMLP5ENzQeNY5EOxbAfitMFLo+UItjYOISQdh1BCobwE2d4i1o+9Rw==", + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-flowtype/-/eslint-plugin-flowtype-5.4.0.tgz", + "integrity": "sha512-O0s0iTT5UxYuoOpHMLSIO2qZMyvrb9shhk1EM5INNGtJ2CffrfUmsnh6TVsnoT41fkXIEndP630WNovhoO87xQ==", "requires": { "lodash": "^4.17.15", "string-natural-compare": "^3.0.1" @@ -6183,6 +6159,11 @@ "isarray": "^1.0.0" } }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", @@ -6341,7 +6322,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", - "dev": true, "requires": { "estraverse": "^5.1.0" }, @@ -6349,8 +6329,7 @@ "estraverse": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", - "dev": true + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==" } } }, @@ -6374,6 +6353,11 @@ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" }, + "estree-util-is-identifier-name": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/estree-util-is-identifier-name/-/estree-util-is-identifier-name-1.1.0.tgz", + "integrity": "sha512-OVJZ3fGGt9By77Ix9NhaRbzfbDV/2rx9EP7YIDJTmsZSEc5kYn2vWcNccYyahJL2uAQZK2a5Or2i0wtIKTPoRQ==" + }, "esutils": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", @@ -6409,9 +6393,9 @@ "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==" }, "eventsource": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-1.0.7.tgz", - "integrity": "sha512-4Ln17+vVT0k8aWq+t/bF5arcS3EpT9gYtW66EPacdj/mAFevznsnyoHLPy2BA8gbIQeIHoPsvwmfBftfcG//BQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-1.1.0.tgz", + "integrity": "sha512-VSJjT5oCNrFvCS6igjzPAt5hBzQ2qPBFIbJ03zLI9SE0mxwZpMw6BfJrbFHm1a141AavMEB8JHmBhWAd66PfCg==", "requires": { "original": "^1.0.0" } @@ -6641,9 +6625,9 @@ }, "dependencies": { "type": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/type/-/type-2.3.0.tgz", - "integrity": "sha512-rgPIqOdfK/4J9FhiVrZ3cveAjRRo5rsQBAIhnylX874y1DX/kEKSVdLsnuHB6l1KTjHyU01VjiMBHgU2adejyg==" + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/type/-/type-2.5.0.tgz", + "integrity": "sha512-180WMDQaIMm3+7hGXWf12GtdniDEy7nYcyFMKJn/eZz/6tSLXrUN9V0wKSbMjej0I1WHWbpREDEKHtqPQa9NNw==" } } }, @@ -6794,9 +6778,9 @@ "integrity": "sha512-On2N+BpYJ15xIC974QNVuYGMOlEVt4s0EOI3wwMqOmK1fdDY+FN/zltPV8vosq4ad4c/gJ1KHScUn/6AWIgiow==" }, "fastq": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.10.1.tgz", - "integrity": "sha512-AWuv6Ery3pM+dY7LYS8YIaCiQvUaos9OB1RyNgaOWnaX+Tik7Onvcsf8x8c+YtDeT0maYLniBip2hox5KtEXXA==", + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.11.0.tgz", + "integrity": "sha512-7Eczs8gIPDrVzT+EksYBcupqMyxSHXXrHOLRRxU2/DicV8789MRBRR8+Hc2uWzUupOs4YS4JzBmBxjjCVBxD/g==", "requires": { "reusify": "^1.0.4" } @@ -6826,7 +6810,6 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", - "dev": true, "requires": { "flat-cache": "^3.0.4" } @@ -6943,7 +6926,6 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", - "dev": true, "requires": { "flatted": "^3.1.0", "rimraf": "^3.0.2" @@ -6952,8 +6934,7 @@ "flatted": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz", - "integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==", - "dev": true + "integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==" }, "follow-redirects": { "version": "1.13.3", @@ -7152,6 +7133,27 @@ "requires": { "inherits": "^2.0.1", "readable-stream": "^2.0.0" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + } } }, "fs-capacitor": { @@ -7214,9 +7216,9 @@ "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=" }, "gatsby": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/gatsby/-/gatsby-3.0.0.tgz", - "integrity": "sha512-UVVtg2VBwfa2XW3VZFHAN2htJujg5bIU7wOVk+eZYISQrF0ljLYUqZxaq1pWSvFdUvfPbPhh7QyvFfNkWYB8ZQ==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/gatsby/-/gatsby-3.1.1.tgz", + "integrity": "sha512-rn5M+Hc2RlJnwU8rHQ/5ZQ5VVJFRHt1iFq+A2AogSITYL538/FU7+94K3TWYexc5VJgfOptXo3eg4RCOpOTFHg==", "requires": { "@babel/code-frame": "^7.10.4", "@babel/core": "^7.12.3", @@ -7225,9 +7227,8 @@ "@babel/runtime": "^7.12.5", "@babel/traverse": "^7.12.5", "@babel/types": "^7.12.6", - "@gatsbyjs/reach-router": "^1.3.5", + "@gatsbyjs/reach-router": "^1.3.6", "@gatsbyjs/webpack-hot-middleware": "^2.25.2", - "@hapi/joi": "^15.1.1", "@mikaelkristiansson/domready": "^1.0.10", "@nodelib/fs.walk": "^1.2.4", "@pmmmwh/react-refresh-webpack-plugin": "^0.4.3", @@ -7243,8 +7244,8 @@ "babel-plugin-add-module-exports": "^1.0.4", "babel-plugin-dynamic-import-node": "^2.3.3", "babel-plugin-lodash": "^3.3.4", - "babel-plugin-remove-graphql-queries": "^3.0.0", - "babel-preset-gatsby": "^1.0.0", + "babel-plugin-remove-graphql-queries": "^3.1.0", + "babel-preset-gatsby": "^1.1.0", "better-opn": "^2.0.0", "better-queue": "^3.8.10", "bluebird": "^3.7.2", @@ -7256,7 +7257,7 @@ "common-tags": "^1.8.0", "compression": "^1.7.4", "copyfiles": "^2.3.0", - "core-js": "^3.6.5", + "core-js": "^3.9.0", "cors": "^2.8.5", "css-loader": "^5.0.1", "css-minimizer-webpack-plugin": "^1.2.0", @@ -7286,16 +7287,16 @@ "find-cache-dir": "^3.3.1", "fs-exists-cached": "1.0.0", "fs-extra": "^8.1.0", - "gatsby-cli": "^3.0.0", - "gatsby-core-utils": "^2.0.0", - "gatsby-graphiql-explorer": "^1.0.0", - "gatsby-legacy-polyfills": "^1.0.0", - "gatsby-link": "^3.0.0", - "gatsby-plugin-page-creator": "^3.0.0", - "gatsby-plugin-typescript": "^3.0.0", - "gatsby-plugin-utils": "^1.0.0", - "gatsby-react-router-scroll": "^4.0.0", - "gatsby-telemetry": "^2.0.0", + "gatsby-cli": "^3.1.0", + "gatsby-core-utils": "^2.1.0", + "gatsby-graphiql-explorer": "^1.1.0", + "gatsby-legacy-polyfills": "^1.1.0", + "gatsby-link": "^3.1.0", + "gatsby-plugin-page-creator": "^3.1.0", + "gatsby-plugin-typescript": "^3.1.0", + "gatsby-plugin-utils": "^1.1.0", + "gatsby-react-router-scroll": "^4.1.0", + "gatsby-telemetry": "^2.1.0", "glob": "^7.1.6", "got": "8.3.2", "graphql": "^15.4.0", @@ -7311,7 +7312,7 @@ "json-loader": "^0.5.7", "json-stringify-safe": "^5.0.1", "latest-version": "5.1.0", - "lodash": "^4.17.20", + "lodash": "^4.17.21", "md5-file": "^5.0.0", "meant": "^1.0.1", "memoizee": "^0.4.15", @@ -7372,37 +7373,6 @@ "yaml-loader": "^0.6.0" }, "dependencies": { - "@eslint/eslintrc": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.0.tgz", - "integrity": "sha512-2ZPCc+uNbjV5ERJr+aKSPRwZgKd2z11x0EgLvb1PURmUrn9QNRXFqje0Ldq454PfAVyaJYyrDvvIKSFP4NnBog==", - "requires": { - "ajv": "^6.12.4", - "debug": "^4.1.1", - "espree": "^7.3.0", - "globals": "^12.1.0", - "ignore": "^4.0.6", - "import-fresh": "^3.2.1", - "js-yaml": "^3.13.1", - "minimatch": "^3.0.4", - "strip-json-comments": "^3.1.1" - }, - "dependencies": { - "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", - "requires": { - "ms": "2.1.2" - } - } - } - }, - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" - }, "ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", @@ -7411,15 +7381,10 @@ "color-convert": "^2.0.1" } }, - "astral-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==" - }, "babel-preset-gatsby": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/babel-preset-gatsby/-/babel-preset-gatsby-1.0.0.tgz", - "integrity": "sha512-3jCjp/yhbgbvSxj9j6ieF6h1JKi9Kfot8N+NSh80GDQ5iwhg/x+Ev7ocyU0UKm89t5QaZuPcGY/RopK0gck+pg==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/babel-preset-gatsby/-/babel-preset-gatsby-1.1.0.tgz", + "integrity": "sha512-GM21xzM1mlUvCmA4pjJxyG3Q2abcrIn1wfGgCBUfw3mwHuy/RibF0L9QzpZUcQTRWy82oAjJteA0qaTLFhOD+g==", "requires": { "@babel/plugin-proposal-class-properties": "^7.12.1", "@babel/plugin-proposal-nullish-coalescing-operator": "^7.12.1", @@ -7434,8 +7399,8 @@ "babel-plugin-dynamic-import-node": "^2.3.3", "babel-plugin-macros": "^2.8.0", "babel-plugin-transform-react-remove-prop-types": "^0.4.24", - "gatsby-core-utils": "^2.0.0", - "gatsby-legacy-polyfills": "^1.0.0" + "gatsby-core-utils": "^2.1.0", + "gatsby-legacy-polyfills": "^1.1.0" } }, "camelcase": { @@ -7443,6 +7408,11 @@ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==" }, + "caniuse-lite": { + "version": "1.0.30001204", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001204.tgz", + "integrity": "sha512-JUdjWpcxfJ9IPamy2f5JaRDCaqJOxDzOSKtbdx4rH9VivMd1vIzoPumsJa9LoMIi4Fx2BV2KZOxWhNkBjaYivQ==" + }, "chalk": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", @@ -7485,6 +7455,34 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, + "core-js-compat": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.9.0.tgz", + "integrity": "sha512-YK6fwFjCOKWwGnjFUR3c544YsnA/7DoLL0ysncuOJ4pwbriAtOpvM2bygdlcXbvQCQZ7bBU9CL4t7tGl7ETRpQ==", + "requires": { + "browserslist": "^4.16.3", + "semver": "7.0.0" + }, + "dependencies": { + "browserslist": { + "version": "4.16.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.3.tgz", + "integrity": "sha512-vIyhWmIkULaq04Gt93txdh+j02yX/JzlyhLYbV3YQCn/zvES3JnY7TifHHvvr1w5hTDluNKMkV05cs4vy8Q7sw==", + "requires": { + "caniuse-lite": "^1.0.30001181", + "colorette": "^1.2.1", + "electron-to-chromium": "^1.3.649", + "escalade": "^3.1.1", + "node-releases": "^1.1.70" + } + }, + "semver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", + "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==" + } + } + }, "cross-spawn": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", @@ -7503,123 +7501,17 @@ "ms": "^2.1.1" } }, - "eslint": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.21.0.tgz", - "integrity": "sha512-W2aJbXpMNofUp0ztQaF40fveSsJBjlSCSWpy//gzfTvwC+USs/nceBrKmlJOiM8r1bLwP2EuYkCqArn/6QTIgg==", - "requires": { - "@babel/code-frame": "7.12.11", - "@eslint/eslintrc": "^0.4.0", - "ajv": "^6.10.0", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.0.1", - "doctrine": "^3.0.0", - "enquirer": "^2.3.5", - "eslint-scope": "^5.1.1", - "eslint-utils": "^2.1.0", - "eslint-visitor-keys": "^2.0.0", - "espree": "^7.3.1", - "esquery": "^1.4.0", - "esutils": "^2.0.2", - "file-entry-cache": "^6.0.1", - "functional-red-black-tree": "^1.0.1", - "glob-parent": "^5.0.0", - "globals": "^12.1.0", - "ignore": "^4.0.6", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "js-yaml": "^3.13.1", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash": "^4.17.20", - "minimatch": "^3.0.4", - "natural-compare": "^1.4.0", - "optionator": "^0.9.1", - "progress": "^2.0.0", - "regexpp": "^3.1.0", - "semver": "^7.2.1", - "strip-ansi": "^6.0.0", - "strip-json-comments": "^3.1.0", - "table": "^6.0.4", - "text-table": "^0.2.0", - "v8-compile-cache": "^2.0.3" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", - "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", - "requires": { - "@babel/highlight": "^7.10.4" - } - }, - "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", - "requires": { - "ms": "2.1.2" - } - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "requires": { - "ansi-regex": "^5.0.0" - } - } - } - }, - "eslint-visitor-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz", - "integrity": "sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ==" - }, - "esquery": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", - "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", - "requires": { - "estraverse": "^5.1.0" - } - }, - "estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==" - }, - "file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", - "requires": { - "flat-cache": "^3.0.4" - } - }, - "flat-cache": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", - "requires": { - "flatted": "^3.1.0", - "rimraf": "^3.0.2" - } - }, - "flatted": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz", - "integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==" + "electron-to-chromium": { + "version": "1.3.693", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.693.tgz", + "integrity": "sha512-vUdsE8yyeu30RecppQtI+XTz2++LWLVEIYmzeCaCRLSdtKZ2eXqdJcrs85KwLiPOPVc6PELgWyXBsfqIvzGZag==" }, "gatsby-cli": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/gatsby-cli/-/gatsby-cli-3.0.0.tgz", - "integrity": "sha512-5vVKmj6D1n71xxD/xwCmmh3O4ixG6sCUeFMAbnA8NlhxXiQSrMOhKlozOmLLa8abrvcR/SQLFzEadSxgG5WE8g==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/gatsby-cli/-/gatsby-cli-3.1.0.tgz", + "integrity": "sha512-SOEXePHvk+Lj3XezFOjmtidMUq39hRHQsDa9iAtMvFc6bJxVIm4oGMu59mUWijGEVTlL1kwMOY7kAq1DEEtfNA==", "requires": { "@babel/code-frame": "^7.10.4", - "@hapi/joi": "^15.1.1", "@types/common-tags": "^1.8.0", "better-opn": "^2.0.0", "chalk": "^4.1.0", @@ -7627,17 +7519,18 @@ "common-tags": "^1.8.0", "configstore": "^5.0.1", "convert-hrtime": "^3.0.0", - "create-gatsby": "^1.0.0", + "create-gatsby": "^1.1.0", "envinfo": "^7.7.3", "execa": "^3.4.0", "fs-exists-cached": "^1.0.0", "fs-extra": "^8.1.0", - "gatsby-core-utils": "^2.0.0", - "gatsby-recipes": "^0.11.0", - "gatsby-telemetry": "^2.0.0", + "gatsby-core-utils": "^2.1.0", + "gatsby-recipes": "^0.12.0", + "gatsby-telemetry": "^2.1.0", "hosted-git-info": "^3.0.6", "is-valid-path": "^0.1.1", - "lodash": "^4.17.20", + "joi": "^17.4.0", + "lodash": "^4.17.21", "meant": "^1.0.2", "node-fetch": "^2.6.1", "opentracing": "^0.14.4", @@ -7678,9 +7571,9 @@ } }, "gatsby-core-utils": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/gatsby-core-utils/-/gatsby-core-utils-2.0.0.tgz", - "integrity": "sha512-+DrClKZ/ScTbzhIHZXuU3DoIhEJ95uJV+swR7VVqYVhEpV1CnjUGR/dB+tMd0VqlPdrXB38FuR8O5kuSvYm+/A==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/gatsby-core-utils/-/gatsby-core-utils-2.1.0.tgz", + "integrity": "sha512-zBNZ4kypfgqrUWNGMQQCXZookssXWaTnLWmxM7TOz5Phjvr0NvQo/xpkUgVbuylkQDwprmg88oRdox8L3zMY9Q==", "requires": { "ci-info": "2.0.0", "configstore": "^5.0.1", @@ -7693,27 +7586,11 @@ } }, "gatsby-legacy-polyfills": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/gatsby-legacy-polyfills/-/gatsby-legacy-polyfills-1.0.0.tgz", - "integrity": "sha512-whGt//oMbsQvr2uok4qkd1MrlbpSKYXl1lifkwZnrHTvAAf5wreeOZKbzM/C3SWLb0lmD2X7WO7gAamOBj7PwA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/gatsby-legacy-polyfills/-/gatsby-legacy-polyfills-1.1.0.tgz", + "integrity": "sha512-h+1dvamBzeItxkWUyjlEJ5/1mBR8nOiS2ZO8L6VOL/s4egwTFbL8ehE/yhn/41nSB/KCKjMY9mv7orU/v/Xdaw==", "requires": { - "core-js-compat": "^3.6.5" - } - }, - "gatsby-plugin-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/gatsby-plugin-utils/-/gatsby-plugin-utils-1.0.0.tgz", - "integrity": "sha512-Z7Yi/y03aObiQ8kkMQGpE5lkIN7GKLfXSDlmriuzU0g7XPUUBwuWQPFVG/hSb4f30KWJ1icBe+Ropivu17rURw==", - "requires": { - "joi": "^17.2.1" - } - }, - "globals": { - "version": "12.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", - "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", - "requires": { - "type-fest": "^0.8.1" + "core-js-compat": "3.9.0" } }, "has-flag": { @@ -7729,20 +7606,15 @@ "lru-cache": "^6.0.0" } }, - "ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==" + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, - "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==" - }, - "json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + "node-releases": { + "version": "1.1.71", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.71.tgz", + "integrity": "sha512-zR6HoT6LrLCRBwukmrVbHv0EpEQjksO6GmFcZQQuCAy139BEsoVKPYnf3jongYW83fAa1torLGYwxxky/p28sg==" }, "p-finally": { "version": "2.0.1", @@ -7755,9 +7627,9 @@ "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==" }, "semver": { - "version": "7.3.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", - "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", "requires": { "lru-cache": "^6.0.0" } @@ -7775,56 +7647,11 @@ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==" }, - "slice-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", - "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", - "requires": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - } - }, "source-map": { "version": "0.7.3", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==" }, - "string-width": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "requires": { - "ansi-regex": "^5.0.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" - }, - "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==" - } - } - }, "supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -7833,30 +7660,6 @@ "has-flag": "^4.0.0" } }, - "table": { - "version": "6.0.7", - "resolved": "https://registry.npmjs.org/table/-/table-6.0.7.tgz", - "integrity": "sha512-rxZevLGTUzWna/qBLObOe16kB2RTnnbhciwgPbMMlazz1yZGVEgnZK762xyVdVznhqxrfCeBMmMkgOOaPwjH7g==", - "requires": { - "ajv": "^7.0.2", - "lodash": "^4.17.20", - "slice-ansi": "^4.0.0", - "string-width": "^4.2.0" - }, - "dependencies": { - "ajv": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-7.1.1.tgz", - "integrity": "sha512-ga/aqDYnUy/o7vbsRTFhhTsNeXiYb5JWDIcRIeZfwRNCefwjNTVYCGdGSUrEmiu3yDK3vFvNbgJxvrQW4JXrYQ==", - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - } - } - }, "which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", @@ -7935,9 +7738,9 @@ } }, "gatsby-graphiql-explorer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/gatsby-graphiql-explorer/-/gatsby-graphiql-explorer-1.0.0.tgz", - "integrity": "sha512-1ZoeCAEWDLhHLlRwIWG8HjiylgezSXksOYgVn3GfkgwySzFrpqR2CZQlPF342RCoIX2LgcOs2s9It8WT1MDc1A==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/gatsby-graphiql-explorer/-/gatsby-graphiql-explorer-1.1.0.tgz", + "integrity": "sha512-+HqRSR3tkIAqMloEmLxpnfTpAWF9zHyRfPYw6nOhVmEkC75zNrT22XkFp9toitr0qdCVavpAJMhjBpypL9l3qQ==", "requires": { "@babel/runtime": "^7.12.5" } @@ -7951,9 +7754,9 @@ } }, "gatsby-link": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/gatsby-link/-/gatsby-link-3.0.0.tgz", - "integrity": "sha512-HbwrTBRMu6FRIhVfcX5w+8ngPtvB4q/6CdgmieuAqukDWXOdlmIpgJKjTheiTcAUXswDcxkcGRNmn3tmPF+Wlg==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/gatsby-link/-/gatsby-link-3.1.0.tgz", + "integrity": "sha512-5l84aGNGYp+8QDWnM030R1TjBms+zgdsNSZrRmwcQ57EF2IW6zRrw+ENSlBrxeV40mkmIXkVmIVbB8XuNKZNrg==", "requires": { "@babel/runtime": "^7.12.5", "@types/reach__router": "^1.3.7", @@ -7961,24 +7764,24 @@ } }, "gatsby-page-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/gatsby-page-utils/-/gatsby-page-utils-1.0.0.tgz", - "integrity": "sha512-2NwkABVWqMtlL4HV0JiJJdd94Hib+qi/sOi2zeASLKjw6Ow7p2wqBrI+O6IfOXlFt9T4xq0BbG6YyzyBAptWaA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/gatsby-page-utils/-/gatsby-page-utils-1.1.0.tgz", + "integrity": "sha512-hNjEuWYtU95t6ypXn82eC+7OoArH4i/PnlhHt9DS8xdpf7Ad95Bk+wAhpIlF8iv9f/uf/e5DdbQeSXj1E1TeRw==", "requires": { "@babel/runtime": "^7.12.5", "bluebird": "^3.7.2", "chokidar": "^3.5.1", "fs-exists-cached": "^1.0.0", - "gatsby-core-utils": "^2.0.0", + "gatsby-core-utils": "^2.1.0", "glob": "^7.1.6", - "lodash": "^4.17.20", + "lodash": "^4.17.21", "micromatch": "^4.0.2" }, "dependencies": { "gatsby-core-utils": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/gatsby-core-utils/-/gatsby-core-utils-2.0.0.tgz", - "integrity": "sha512-+DrClKZ/ScTbzhIHZXuU3DoIhEJ95uJV+swR7VVqYVhEpV1CnjUGR/dB+tMd0VqlPdrXB38FuR8O5kuSvYm+/A==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/gatsby-core-utils/-/gatsby-core-utils-2.1.0.tgz", + "integrity": "sha512-zBNZ4kypfgqrUWNGMQQCXZookssXWaTnLWmxM7TOz5Phjvr0NvQo/xpkUgVbuylkQDwprmg88oRdox8L3zMY9Q==", "requires": { "ci-info": "2.0.0", "configstore": "^5.0.1", @@ -7989,13 +7792,18 @@ "tmp": "^0.2.1", "xdg-basedir": "^4.0.0" } + }, + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" } } }, "gatsby-plugin-create-client-paths": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/gatsby-plugin-create-client-paths/-/gatsby-plugin-create-client-paths-3.0.0.tgz", - "integrity": "sha512-frWerYXgrb0Q/0O+BlnbLNwmnDmnF35Dwefoug31y/PI4AVH+FSfMcnkOA+PI7bAuCkPv7z0rKQqDc9CJsuFOA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/gatsby-plugin-create-client-paths/-/gatsby-plugin-create-client-paths-3.1.0.tgz", + "integrity": "sha512-WfxENLomJ1sKugb3uleY5ztDth5Dnou81ksVhKg/lHUwGaSgnsuEnRYN1H1lCj1T5Nx0rvLUclKECKhYwM925Q==", "requires": { "@babel/runtime": "^7.12.5" } @@ -8006,35 +7814,44 @@ "integrity": "sha512-nvyLz067k8lmhWIalhgFCzlNIjHIabYPZXpARM0k4AGRJWOPgOxc5P0T+G/TjCvtSg4+jtKotbE5ranMbxIBiw==", "dev": true }, + "gatsby-plugin-extract-schema": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/gatsby-plugin-extract-schema/-/gatsby-plugin-extract-schema-0.1.0.tgz", + "integrity": "sha512-wwqO1NKstF1KkQ/sllNTRrdhiMVhZ9Qi/qEuCcPzTzveOr42fnwB+sUj/mnJZz9XMVL9Nw7A6vDCnuNGqVGpCg==", + "dev": true, + "requires": { + "write": "^2.0.0" + } + }, "gatsby-plugin-fontawesome-css": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/gatsby-plugin-fontawesome-css/-/gatsby-plugin-fontawesome-css-1.0.0.tgz", - "integrity": "sha512-jToy7WSlNjCtcFWjS7/W1U8jJggKBv2hZhatYyNXELfxvl3eFvuJGlDYYDDKtMzv57N5hbXwUvJ+iW21+FcDOA==" + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/gatsby-plugin-fontawesome-css/-/gatsby-plugin-fontawesome-css-1.1.0.tgz", + "integrity": "sha512-7rAiOpTXtkLjHCrASY9Bmvq4c3UFDqj2ZZPuKTyRgK92+tL675tAIlSU5Rjv8HfftNWIkmFKm8uJF3EPT+OpBA==" }, "gatsby-plugin-layout": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/gatsby-plugin-layout/-/gatsby-plugin-layout-2.0.0.tgz", - "integrity": "sha512-dFuQ/h6Z1TiZrHwil1HaqyE0sDKpfPEC6XLiCgRqq1Ud0y8lS6DI8qUk4MRI3B1rq6kXakrkimN8bR/mmHo+jA==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/gatsby-plugin-layout/-/gatsby-plugin-layout-2.1.0.tgz", + "integrity": "sha512-5WZ6tRM5B79lEiMWEBWCacUctmrHGgNOHGYklSxYZQaYsXTxtfhGJ4dHf10TUif2bttQ6IRi+4Elm5Lm6AJucg==", "requires": { "@babel/runtime": "^7.12.5" } }, "gatsby-plugin-manifest": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/gatsby-plugin-manifest/-/gatsby-plugin-manifest-3.0.0.tgz", - "integrity": "sha512-xmnppsXR0+CTQZhEmvcrbbV6rvOgO5ybE6Ywwv0bosSJxML3oBoo+kC8HCwK097Ppofgd1inSwNbJ5FB8wdNbQ==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/gatsby-plugin-manifest/-/gatsby-plugin-manifest-3.1.0.tgz", + "integrity": "sha512-T3vmSdld5KdKhov1/GFgBZ1fgFdyS1Uw2ehtJy3qTqknO3TLq2AiyMTJVRE5Z6ztYWLkE5Lnc07HZSYSb0ocsA==", "requires": { "@babel/runtime": "^7.12.5", - "gatsby-core-utils": "^2.0.0", - "gatsby-plugin-utils": "^1.0.0", + "gatsby-core-utils": "^2.1.0", + "gatsby-plugin-utils": "^1.1.0", "semver": "^7.3.2", "sharp": "^0.27.0" }, "dependencies": { "gatsby-core-utils": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/gatsby-core-utils/-/gatsby-core-utils-2.0.0.tgz", - "integrity": "sha512-+DrClKZ/ScTbzhIHZXuU3DoIhEJ95uJV+swR7VVqYVhEpV1CnjUGR/dB+tMd0VqlPdrXB38FuR8O5kuSvYm+/A==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/gatsby-core-utils/-/gatsby-core-utils-2.1.0.tgz", + "integrity": "sha512-zBNZ4kypfgqrUWNGMQQCXZookssXWaTnLWmxM7TOz5Phjvr0NvQo/xpkUgVbuylkQDwprmg88oRdox8L3zMY9Q==", "requires": { "ci-info": "2.0.0", "configstore": "^5.0.1", @@ -8047,9 +7864,9 @@ } }, "semver": { - "version": "7.3.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", - "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", "requires": { "lru-cache": "^6.0.0" } @@ -8057,39 +7874,31 @@ } }, "gatsby-plugin-page-creator": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/gatsby-plugin-page-creator/-/gatsby-plugin-page-creator-3.0.0.tgz", - "integrity": "sha512-xlywUGKkFZpPNXNJ64H/+aJ+ovFV4FK+cNxy+6M9PP10yayZqEtW+nNujil5yTJwPqcuBhtnQEmQrXhYgE/HqQ==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/gatsby-plugin-page-creator/-/gatsby-plugin-page-creator-3.1.0.tgz", + "integrity": "sha512-0Ji3U8/oPgUCIHUmm5QI09Yz98j8qslqdzDv7veE75+Qqr1oC4ZD650TwH9GVjRKitxwntK+GaNPMS6nDq24kw==", "requires": { "@babel/traverse": "^7.12.5", "@sindresorhus/slugify": "^1.1.0", "chokidar": "^3.5.1", "fs-exists-cached": "^1.0.0", - "gatsby-page-utils": "^1.0.0", - "gatsby-telemetry": "^2.0.0", + "gatsby-page-utils": "^1.1.0", + "gatsby-telemetry": "^2.1.0", "globby": "^11.0.2", - "lodash": "^4.17.20" + "lodash": "^4.17.21" }, "dependencies": { - "globby": { - "version": "11.0.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.2.tgz", - "integrity": "sha512-2ZThXDvvV8fYFRVIxnrMQBipZQDr7MxKAmQK1vujaj9/7eF0efG7BPUKJ7jP7G5SLF37xKDXvO4S/KKLj/Z0og==", - "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" - } + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" } } }, "gatsby-plugin-react-helmet": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/gatsby-plugin-react-helmet/-/gatsby-plugin-react-helmet-4.0.0.tgz", - "integrity": "sha512-l83wSwjF3Wq8ZHAFwhwx5EKQ67NUNCaZp9XDDplVQ+zFZ6dVAAax56wZLp6kQ++bYr+Hu9NOODLbLITtff+Eiw==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/gatsby-plugin-react-helmet/-/gatsby-plugin-react-helmet-4.1.0.tgz", + "integrity": "sha512-vMTtpVnzrYRcBrDt4feui0CxviINtNFwulRbhJ0if63H31Ep0i4jcMzDitVqpHxcImkzQwchK3Qap3JWqr6L6Q==", "requires": { "@babel/runtime": "^7.12.5" } @@ -8100,9 +7909,9 @@ "integrity": "sha512-eG0D+cVL5djVI5nxuQoZE4wBBL6rUq/KBPqPv+69vYolTXzlyj0+vIkqr2Y/xWt8hTK9BB8IOMltGxUmXIenig==" }, "gatsby-plugin-sass": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/gatsby-plugin-sass/-/gatsby-plugin-sass-4.0.0.tgz", - "integrity": "sha512-q2FIQFFU7FMgX8jMGUCsBMUcmdNdVertE1HnViiriB1x5FagUJUUJe9Z6Irq14h0LfSL2Z1Lg8iQzgxSX30djw==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/gatsby-plugin-sass/-/gatsby-plugin-sass-4.1.0.tgz", + "integrity": "sha512-lVm+DGSkAIM2APosbaBqi9OlS5YP1bXVmA2MXJqGdIrb/x9FkrN3psFjiTIuBob2YesAgeQV2OJtJefGGAf4bQ==", "requires": { "@babel/runtime": "^7.12.5", "resolve-url-loader": "^3.1.2", @@ -8110,17 +7919,17 @@ } }, "gatsby-plugin-styled-components": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/gatsby-plugin-styled-components/-/gatsby-plugin-styled-components-4.0.0.tgz", - "integrity": "sha512-wV33OxkQTqS7Tw8Nez7XT+Sf9FnvNVqOYzGPZKFlApUjBJvBen2D/kDJCEUlwHA3164s6mqp/Qq/80lup3V6Yg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/gatsby-plugin-styled-components/-/gatsby-plugin-styled-components-4.1.0.tgz", + "integrity": "sha512-MHDEqCt85VWXBFbgiHZ0LFJa/AtlKD34cwDd3CX+TblaeCmGxf5XZYWHYNuXMGDCEbuBQwt7tvlcihkJghy8oA==", "requires": { "@babel/runtime": "^7.12.5" } }, "gatsby-plugin-typescript": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/gatsby-plugin-typescript/-/gatsby-plugin-typescript-3.0.0.tgz", - "integrity": "sha512-s9bhqc8FI12iu07KHzYeQ2yf2LRh0NsfPysKR5prhy9+tmtHT5n7r/JLYJ4AaEycuJfqBYLo4UbR5+WqwVe3sg==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/gatsby-plugin-typescript/-/gatsby-plugin-typescript-3.1.0.tgz", + "integrity": "sha512-p1tk/7ECbLefJzmEEl/n6qKofNIXIH2B9Bz0XnKyVaRxXNIbE3VI76qFCm3dFh+MUUg8Q4JKc2WAZcBYIdQeZA==", "requires": { "@babel/core": "^7.12.3", "@babel/plugin-proposal-nullish-coalescing-operator": "^7.12.1", @@ -8128,29 +7937,29 @@ "@babel/plugin-proposal-optional-chaining": "^7.12.1", "@babel/preset-typescript": "^7.12.1", "@babel/runtime": "^7.12.5", - "babel-plugin-remove-graphql-queries": "^3.0.0" + "babel-plugin-remove-graphql-queries": "^3.1.0" } }, "gatsby-plugin-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/gatsby-plugin-utils/-/gatsby-plugin-utils-1.0.0.tgz", - "integrity": "sha512-Z7Yi/y03aObiQ8kkMQGpE5lkIN7GKLfXSDlmriuzU0g7XPUUBwuWQPFVG/hSb4f30KWJ1icBe+Ropivu17rURw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/gatsby-plugin-utils/-/gatsby-plugin-utils-1.1.0.tgz", + "integrity": "sha512-B21V3tFskfZcVSJVaYy6rLrxHcumbcmhKAYKniKThxCP/0KSqHkfC9+Bopsonk8npRKbVX924OI3UOCKfbgFsg==", "requires": { "joi": "^17.2.1" } }, "gatsby-react-router-scroll": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/gatsby-react-router-scroll/-/gatsby-react-router-scroll-4.0.0.tgz", - "integrity": "sha512-TS1Ya7UD/EwAlZHGPp9uDl+Qgzz4tmUA3K+jKMViarLG9LcrwY8tNTbMBZKyKsUcj6HDp8rfIu58TaDiDi/01A==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/gatsby-react-router-scroll/-/gatsby-react-router-scroll-4.1.0.tgz", + "integrity": "sha512-P2RIO7Py7QQvIntzmrpiz93B6jZsOwVhSVWp3dDa1YrD4/y43553zrEwczifWicLYcgCy/miMnuctfoKCJuxlg==", "requires": { "@babel/runtime": "^7.12.5" } }, "gatsby-recipes": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/gatsby-recipes/-/gatsby-recipes-0.11.0.tgz", - "integrity": "sha512-HJXVEKs71HFleUvaapEfqjZLqZOFRbr90uKSn75CsZNnv1SC2HJ2kTEGb4P67CoFlJx4QUG71mhYyT1kPyy+tQ==", + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/gatsby-recipes/-/gatsby-recipes-0.12.0.tgz", + "integrity": "sha512-WotaMTpVWVP40uO24Iw2ioEAGcO6OZwcJYZz3Ihrb4CmjbKM6KEic8RuXH4d84OTLCvWz0s0lPiIu1IgbnYwgQ==", "requires": { "@babel/core": "^7.12.3", "@babel/generator": "^7.12.5", @@ -8175,8 +7984,8 @@ "express": "^4.17.1", "express-graphql": "^0.9.0", "fs-extra": "^8.1.0", - "gatsby-core-utils": "^2.0.0", - "gatsby-telemetry": "^2.0.0", + "gatsby-core-utils": "^2.1.0", + "gatsby-telemetry": "^2.1.0", "glob": "^7.1.6", "graphql": "^15.4.0", "graphql-compose": "~7.25.0", @@ -8187,7 +7996,7 @@ "is-url": "^1.2.4", "jest-diff": "^25.5.0", "lock": "^1.0.0", - "lodash": "^4.17.20", + "lodash": "^4.17.21", "mitt": "^1.2.0", "mkdirp": "^0.5.1", "node-fetch": "^2.5.0", @@ -8213,24 +8022,19 @@ }, "dependencies": { "@graphql-tools/utils": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-7.5.0.tgz", - "integrity": "sha512-8f//RSqHmKRdg9A3GHlZdxzlVfF/938ZD9edXLW7EriSABg1BXu3veru9W02VqORypArb2S/Tyeyvsk2gForqA==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-7.6.0.tgz", + "integrity": "sha512-YCZDDdhfb4Yhie0IH031eGdvQG8C73apDuNg6lqBNbauNw45OG/b8wi3+vuMiDnJTJN32GQUb1Gt9gxDKoRDKw==", "requires": { "@ardatan/aggregate-error": "0.0.6", "camel-case": "4.1.2", "tslib": "~2.1.0" } }, - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" - }, "gatsby-core-utils": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/gatsby-core-utils/-/gatsby-core-utils-2.0.0.tgz", - "integrity": "sha512-+DrClKZ/ScTbzhIHZXuU3DoIhEJ95uJV+swR7VVqYVhEpV1CnjUGR/dB+tMd0VqlPdrXB38FuR8O5kuSvYm+/A==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/gatsby-core-utils/-/gatsby-core-utils-2.1.0.tgz", + "integrity": "sha512-zBNZ4kypfgqrUWNGMQQCXZookssXWaTnLWmxM7TOz5Phjvr0NvQo/xpkUgVbuylkQDwprmg88oRdox8L3zMY9Q==", "requires": { "ci-info": "2.0.0", "configstore": "^5.0.1", @@ -8242,15 +8046,20 @@ "xdg-basedir": "^4.0.0" } }, + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, "resolve-from": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==" }, "semver": { - "version": "7.3.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", - "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", "requires": { "lru-cache": "^6.0.0" } @@ -8273,10 +8082,91 @@ "gatsby-source-animethemes": { "version": "file:plugins/gatsby-source-animethemes" }, + "gatsby-source-animethemes-db": { + "version": "file:plugins/gatsby-source-animethemes-db", + "requires": { + "mysql": "^2.18.1" + }, + "dependencies": { + "bignumber.js": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.0.tgz", + "integrity": "sha512-t/OYhhJ2SD+YGBQcjY8GzzDHEk9f3nerxjtfa6tlMXfe7frs/WozhvCNoGvpM0P3bNf3Gq5ZRMlGr5f3r4/N8A==" + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "mysql": { + "version": "2.18.1", + "resolved": "https://registry.npmjs.org/mysql/-/mysql-2.18.1.tgz", + "integrity": "sha512-Bca+gk2YWmqp2Uf6k5NFEurwY/0td0cpebAucFpY/3jhrwrVGuxU2uQFCHjU19SJfje0yQvi+rVWdq78hR5lig==", + "requires": { + "bignumber.js": "9.0.0", + "readable-stream": "2.3.7", + "safe-buffer": "5.1.2", + "sqlstring": "2.3.1" + } + }, + "process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "sqlstring": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/sqlstring/-/sqlstring-2.3.1.tgz", + "integrity": "sha1-R1OT/56RR5rqYtyvDKPRSYOn+0A=" + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + } + } + }, "gatsby-telemetry": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/gatsby-telemetry/-/gatsby-telemetry-2.0.0.tgz", - "integrity": "sha512-ldEg8jFUW+7JFcMn+6TnH+xHfLM+VIhDvyOIbkAYZZ+rO/RWnCwM44ZZUUpRp4/Ivn/IAiubGwQyXErMHErbAg==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/gatsby-telemetry/-/gatsby-telemetry-2.1.0.tgz", + "integrity": "sha512-ZAmjxYsLyJ9eK3ZGphoIjl1C/Mx732h+PWpyD+NNUPf+GFJcPDVAd/tX9XHjNTVrAN3rAaHuH48wK7JNeC/xIA==", "requires": { "@babel/code-frame": "^7.10.4", "@babel/runtime": "^7.12.5", @@ -8286,18 +8176,18 @@ "boxen": "^4.2.0", "configstore": "^5.0.1", "fs-extra": "^8.1.0", - "gatsby-core-utils": "^2.0.0", + "gatsby-core-utils": "^2.1.0", "git-up": "^4.0.2", "is-docker": "^2.1.1", - "lodash": "^4.17.20", + "lodash": "^4.17.21", "node-fetch": "^2.6.1", "uuid": "3.4.0" }, "dependencies": { "gatsby-core-utils": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/gatsby-core-utils/-/gatsby-core-utils-2.0.0.tgz", - "integrity": "sha512-+DrClKZ/ScTbzhIHZXuU3DoIhEJ95uJV+swR7VVqYVhEpV1CnjUGR/dB+tMd0VqlPdrXB38FuR8O5kuSvYm+/A==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/gatsby-core-utils/-/gatsby-core-utils-2.1.0.tgz", + "integrity": "sha512-zBNZ4kypfgqrUWNGMQQCXZookssXWaTnLWmxM7TOz5Phjvr0NvQo/xpkUgVbuylkQDwprmg88oRdox8L3zMY9Q==", "requires": { "ci-info": "2.0.0", "configstore": "^5.0.1", @@ -8308,6 +8198,11 @@ "tmp": "^0.2.1", "xdg-basedir": "^4.0.0" } + }, + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" } } }, @@ -8324,6 +8219,39 @@ "string-width": "^1.0.1", "strip-ansi": "^3.0.1", "wide-align": "^1.1.0" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "requires": { + "ansi-regex": "^2.0.0" + } + } } }, "gensync": { @@ -8415,13 +8343,6 @@ "integrity": "sha512-v8ho2DS5RiCjftj1nD9NmnfaOzTdud7RRnVd9kFNOjqZbISlx5DQ+OrTkywgd0dIt7oFCvKetZSHoHcP3sDdiA==", "requires": { "ini": "2.0.0" - }, - "dependencies": { - "ini": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", - "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==" - } } }, "global-modules": { @@ -8440,6 +8361,13 @@ "ini": "^1.3.5", "kind-of": "^6.0.2", "which": "^1.3.1" + }, + "dependencies": { + "ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + } } }, "globals": { @@ -8448,17 +8376,15 @@ "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==" }, "globby": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.2.tgz", - "integrity": "sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==", + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.3.tgz", + "integrity": "sha512-ffdmosjA807y7+lA1NM0jELARVmYul/715xiILEjo3hBLPTcirgQNnXECn5g3mtR8TOLCVbkfua1Hpen25/Xcg==", "requires": { - "@types/glob": "^7.1.1", "array-union": "^2.1.0", "dir-glob": "^3.0.1", - "fast-glob": "^3.0.3", - "glob": "^7.1.3", - "ignore": "^5.1.1", - "merge2": "^1.2.3", + "fast-glob": "^3.1.1", + "ignore": "^5.1.4", + "merge2": "^1.3.0", "slash": "^3.0.0" } }, @@ -8587,9 +8513,9 @@ "integrity": "sha512-OmaM7y0kaK31NKG31q4YbD2beNYa6jBBKtMFT6gLYJljHLJr42IqJ8KX08u3Li/0ifzTU5HjmoOOrwa5BRLeDA==" }, "graphql-compose": { - "version": "7.25.0", - "resolved": "https://registry.npmjs.org/graphql-compose/-/graphql-compose-7.25.0.tgz", - "integrity": "sha512-Zd2G62Sq0ZQW+qXds/LgSi3YSulmk2t2YS3WJfHvNslkEbyAcE1mFiy7c1wU0tl3woB0vPRwI0jAYtSSG6llNA==", + "version": "7.25.1", + "resolved": "https://registry.npmjs.org/graphql-compose/-/graphql-compose-7.25.1.tgz", + "integrity": "sha512-TPXTe1BoQkMjp/MH93yA0SQo8PiXxJAv6Eo6K/+kpJELM9l2jZnd5PCduweuXFcKv+nH973wn/VYzYKDMQ9YoQ==", "requires": { "graphql-type-json": "0.3.2", "object-path": "0.11.5" @@ -8638,9 +8564,9 @@ } }, "graphql-subscriptions": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/graphql-subscriptions/-/graphql-subscriptions-1.2.0.tgz", - "integrity": "sha512-uXvp729fztqwa7HFUFaAqKwNMwwOfsvu4HwOu7/35Cd44bNrMPCn97mNGN0ybuuZE36CPXBTaW/4U/xyOS4D9w==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/graphql-subscriptions/-/graphql-subscriptions-1.2.1.tgz", + "integrity": "sha512-95yD/tKi24q8xYa7Q9rhQN16AYj5wPbrb8tmHGM3WRc9EBmWrG/0kkMl+tQG8wcEuE9ibR4zyOM31p5Sdr2v4g==", "requires": { "iterall": "^1.3.0" } @@ -8682,9 +8608,9 @@ } }, "graphql-ws": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/graphql-ws/-/graphql-ws-4.1.5.tgz", - "integrity": "sha512-yUQ1AjegD1Y9jDS699kyw7Mw+9H+rILm2HoS8N5a5B5YTH93xy3yifFhAJpKGc2wb/8yGdlVy8gTcud0TPqi6Q==" + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/graphql-ws/-/graphql-ws-4.2.2.tgz", + "integrity": "sha512-b6TLtWLAmKunD72muL9EeItRGpio9+V3Cx4zJsBkRA+3wxzTWXDvQr9/3qSwJ3D/2abz0ys2KHTM6lB1uH7KIQ==" }, "gzip-size": { "version": "5.1.1", @@ -8846,9 +8772,9 @@ } }, "highlight.js": { - "version": "10.6.0", - "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.6.0.tgz", - "integrity": "sha512-8mlRcn5vk/r4+QcqerapwBYTe+iPL5ih6xrNylxrnBdHQiijDETfXX7VIxC3UiCRiINBJfANBAsPzAvRQj8RpQ==" + "version": "10.7.1", + "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.7.1.tgz", + "integrity": "sha512-S6G97tHGqJ/U8DsXcEdnACbirtbx58Bx9CzIVeYli8OuswCfYI/LsXH2EiGcoGio1KAC3x4mmUwulOllJ2ZyRA==" }, "hoist-non-react-statics": { "version": "3.3.2", @@ -8872,6 +8798,27 @@ "obuf": "^1.0.0", "readable-stream": "^2.0.1", "wbuf": "^1.1.0" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + } } }, "hsl-regex": { @@ -8890,9 +8837,9 @@ "integrity": "sha512-P+M65QY2JQ5Y0G9KKdlDpo0zK+/OHptU5AaBwUfAIDJZk1MYf32Frm84EcOytfJE0t5JvkAnKlmjsXDnWzCJmQ==" }, "html-entities": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.1.0.tgz", - "integrity": "sha512-u+OHVGMH5P1HlaTFp3M4HolRnWepgx5rAnYBo+7/TrBZahuJjgQ4TMv2GjQ4IouGDzkgXYeOI/NQuF95VOUOsQ==" + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.1.1.tgz", + "integrity": "sha512-HjNLgm9Ba8zKd6NDMkXa0mMPn3eDUxOUnEIm/qy2Rm6rnqRHgI9DpMYIv1Fndu8haUmfMQHNYNrlNKmdU8GMnQ==" }, "htmlparser2": { "version": "3.10.1", @@ -9245,9 +9192,9 @@ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, "ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", + "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==" }, "inline-style-parser": { "version": "0.1.1", @@ -9282,11 +9229,6 @@ "type-fest": "^0.11.0" } }, - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" - }, "ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", @@ -9322,21 +9264,6 @@ "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.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, "strip-ansi": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", @@ -9622,9 +9549,9 @@ "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" }, "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==" }, "is-glob": { "version": "4.0.1", @@ -9725,9 +9652,9 @@ } }, "is-path-inside": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.2.tgz", - "integrity": "sha512-/2UGPSgmtqwo1ktx8NDHjuPwZWmHhO+gj0f93EkhLB5RgW9RZevWYYlIkS6zePc6U2WpOdQYIwHe9YC4DWEBVg==" + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==" }, "is-plain-obj": { "version": "2.1.0", @@ -9889,9 +9816,9 @@ "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==" }, "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" }, "isexe": { "version": "2.0.0", @@ -10003,9 +9930,9 @@ } }, "joi": { - "version": "17.3.0", - "resolved": "https://registry.npmjs.org/joi/-/joi-17.3.0.tgz", - "integrity": "sha512-Qh5gdU6niuYbUIUV5ejbsMiiFmBdw8Kcp8Buj2JntszCkCfxJ9Cz76OtHxOZMPXrt5810iDIXs+n1nNVoquHgg==", + "version": "17.4.0", + "resolved": "https://registry.npmjs.org/joi/-/joi-17.4.0.tgz", + "integrity": "sha512-F4WiW2xaV6wc1jxete70Rw4V/VuMd6IN+a5ilZsxG4uYtUXWu2kq9W5P2dz30e7Gmw8RCbY/u/uk+dMPma9tAg==", "requires": { "@hapi/hoek": "^9.0.0", "@hapi/topo": "^5.0.0", @@ -10015,9 +9942,9 @@ }, "dependencies": { "@hapi/hoek": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.1.0.tgz", - "integrity": "sha512-i9YbZPN3QgfighY/1X1Pu118VUz2Fmmhd6b2n0/O8YVgGGfw0FbUYoA97k7FkpGJ+pLCFEDLUmAPPV4D1kpeFw==" + "version": "9.1.1", + "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.1.1.tgz", + "integrity": "sha512-CAEbWH7OIur6jEOzaai83jq3FmKmv4PmX1JYfs9IrYcGEVI/lyL1EXJGCj7eFVJ0bg5QR8LMxBlEtA+xKiLpFw==" }, "@hapi/topo": { "version": "5.0.0", @@ -10441,6 +10368,60 @@ "unist-util-visit": "^2.0.0" } }, + "mdast-util-mdx": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/mdast-util-mdx/-/mdast-util-mdx-0.1.1.tgz", + "integrity": "sha512-9nncdnHNYSb4HNxY3AwE6gU632jhbXsDGXe9PkkJoEawYWJ8tTwmEOHGlGa2TCRidtkd6FF5I8ogDU9pTDlQyA==", + "requires": { + "mdast-util-mdx-expression": "~0.1.0", + "mdast-util-mdx-jsx": "~0.1.0", + "mdast-util-mdxjs-esm": "~0.1.0", + "mdast-util-to-markdown": "^0.6.1" + } + }, + "mdast-util-mdx-expression": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/mdast-util-mdx-expression/-/mdast-util-mdx-expression-0.1.1.tgz", + "integrity": "sha512-SoO8y1B9NjMOYlNdwXMchuTVvqSTlUmXm1P5QvZNPv7OH7aa8qJV+3aA+vl1DHK9Vk1uZAlgwokjvDQhS6bINA==", + "requires": { + "strip-indent": "^3.0.0" + } + }, + "mdast-util-mdx-jsx": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/mdast-util-mdx-jsx/-/mdast-util-mdx-jsx-0.1.3.tgz", + "integrity": "sha512-MIAop4fMALAAVMpXIZqSq2T9/3d/hiiSTdPTJ9AOIZL1td2JBbUOBSnBSMfEk4GOyiQSsla+NFziJbNBwBH1sw==", + "requires": { + "mdast-util-to-markdown": "^0.6.0", + "parse-entities": "^2.0.0", + "stringify-entities": "^3.1.0", + "unist-util-remove-position": "^3.0.0", + "vfile-message": "^2.0.0" + } + }, + "mdast-util-mdxjs-esm": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/mdast-util-mdxjs-esm/-/mdast-util-mdxjs-esm-0.1.1.tgz", + "integrity": "sha512-kBiYeashz+nuhfv+712nc4THQhzXIH2gBFUDbuLxuDCqU/fZeg+9FAcdRBx9E13dkpk1p2Xwufzs3wsGJ+mISQ==" + }, + "mdast-util-to-markdown": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-0.6.5.tgz", + "integrity": "sha512-XeV9sDE7ZlOQvs45C9UKMtfTcctcaj/pGwH8YLbMHoMOXNNCn2LsqVQOqrF1+/NU8lKDAqozme9SCXWyo9oAcQ==", + "requires": { + "@types/unist": "^2.0.0", + "longest-streak": "^2.0.0", + "mdast-util-to-string": "^2.0.0", + "parse-entities": "^2.0.0", + "repeat-string": "^1.0.0", + "zwitch": "^1.0.0" + } + }, + "mdast-util-to-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz", + "integrity": "sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==" + }, "mdn-data": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz", @@ -10457,9 +10438,9 @@ "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" }, "mem": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/mem/-/mem-8.0.0.tgz", - "integrity": "sha512-qrcJOe6uD+EW8Wrci1Vdiua/15Xw3n/QnaNXE7varnB6InxSk7nu3/i5jfy3S6kWxr8WYJ6R1o0afMUtvorTsA==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-8.1.0.tgz", + "integrity": "sha512-FIkgXo0kTi3XpvaznV5Muk6Y6w8SkdmRXcY7ZLonQesuYezp59UooLxAVBcGuN6PH2tXN84mR3vyzSc6oSMUfA==", "requires": { "map-age-cleaner": "^0.1.3", "mimic-fn": "^3.1.0" @@ -10509,6 +10490,27 @@ "requires": { "errno": "^0.1.3", "readable-stream": "^2.0.1" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + } } }, "merge-descriptors": { @@ -10536,6 +10538,82 @@ "resolved": "https://registry.npmjs.org/microevent.ts/-/microevent.ts-0.1.1.tgz", "integrity": "sha512-jo1OfR4TaEwd5HOrt5+tAZ9mqT4jmpNAusXtyfNzqVm9uiSYFZlKM1wYL4oU7azZW/PxQW53wM0S6OR1JHNa2g==" }, + "micromark": { + "version": "2.11.4", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-2.11.4.tgz", + "integrity": "sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==", + "requires": { + "debug": "^4.0.0", + "parse-entities": "^2.0.0" + } + }, + "micromark-extension-mdx": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/micromark-extension-mdx/-/micromark-extension-mdx-0.2.1.tgz", + "integrity": "sha512-J+nZegf1ExPz1Ft6shxu8M9WfRom1gwRIx6gpJK1SEEqKzY5LjOR1d/WHRtjwV4KoMXrL53+PoN7T1Rw1euJew==", + "requires": { + "micromark": "~2.11.0", + "micromark-extension-mdx-expression": "~0.3.0", + "micromark-extension-mdx-jsx": "~0.3.0", + "micromark-extension-mdx-md": "~0.1.0" + } + }, + "micromark-extension-mdx-expression": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/micromark-extension-mdx-expression/-/micromark-extension-mdx-expression-0.3.2.tgz", + "integrity": "sha512-Sh8YHLSAlbm/7TZkVKEC4wDcJE8XhVpZ9hUXBue1TcAicrrzs/oXu7PHH3NcyMemjGyMkiVS34Y0AHC5KG3y4A==", + "requires": { + "micromark": "~2.11.0", + "vfile-message": "^2.0.0" + } + }, + "micromark-extension-mdx-jsx": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/micromark-extension-mdx-jsx/-/micromark-extension-mdx-jsx-0.3.3.tgz", + "integrity": "sha512-kG3VwaJlzAPdtIVDznfDfBfNGMTIzsHqKpTmMlew/iPnUCDRNkX+48ElpaOzXAtK5axtpFKE3Hu3VBriZDnRTQ==", + "requires": { + "estree-util-is-identifier-name": "^1.0.0", + "micromark": "~2.11.0", + "micromark-extension-mdx-expression": "^0.3.2", + "vfile-message": "^2.0.0" + } + }, + "micromark-extension-mdx-md": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/micromark-extension-mdx-md/-/micromark-extension-mdx-md-0.1.1.tgz", + "integrity": "sha512-emlFQEyfx/2aPhwyEqeNDfKE6jPH1cvLTb5ANRo4qZBjaUObnzjLRdzK8RJ4Xc8+/dOmKN8TTRxFnOYF5/EAwQ==" + }, + "micromark-extension-mdxjs": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/micromark-extension-mdxjs/-/micromark-extension-mdxjs-0.3.0.tgz", + "integrity": "sha512-NQuiYA0lw+eFDtSG4+c7ao3RG9dM4P0Kx/sn8OLyPhxtIc6k+9n14k5VfLxRKfAxYRTo8c5PLZPaRNmslGWxJw==", + "requires": { + "acorn": "^8.0.0", + "acorn-jsx": "^5.0.0", + "micromark": "~2.11.0", + "micromark-extension-mdx-expression": "~0.3.0", + "micromark-extension-mdx-jsx": "~0.3.0", + "micromark-extension-mdx-md": "~0.1.0", + "micromark-extension-mdxjs-esm": "~0.3.0" + }, + "dependencies": { + "acorn": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.1.0.tgz", + "integrity": "sha512-LWCF/Wn0nfHOmJ9rzQApGnxnvgfROzGilS8936rqN/lfcYkY9MYZzdMqN+2NJ4SlTc+m5HiSa+kNfDtI64dwUA==" + } + } + }, + "micromark-extension-mdxjs-esm": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/micromark-extension-mdxjs-esm/-/micromark-extension-mdxjs-esm-0.3.0.tgz", + "integrity": "sha512-ZkI/cneSGQFdmB3iOT34n9Zq0Gc6vknAd1o2G7SaiCUY5D9a5ZCvGP/vCjHmlB7f2Y4b4+O1YMLywxYmQeUFwQ==", + "requires": { + "micromark": "~2.11.0", + "micromark-extension-mdx-expression": "^0.3.0", + "vfile-message": "^2.0.0" + } + }, "micromatch": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", @@ -10741,9 +10819,9 @@ "integrity": "sha1-Cr+2rYNXGLn7Te8GdOBmV6lUN1w=" }, "nanoid": { - "version": "3.1.20", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.20.tgz", - "integrity": "sha512-a1cQNyczgKbLX9jwbS/+d7W8fX/RfgYR7lVWwWOGIPNgK2m0MWvrGF6/m4kk6U3QcFMnZf3RIhL0v2Jgh/0Uxw==" + "version": "3.1.22", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.22.tgz", + "integrity": "sha512-/2ZUaJX2ANuLtTvqTlgqBQNJoQO398KyJgZloL0PZkC0dpysjncRUPsFe3DUPzz/y3h+u7C46np8RMuvF3jsSQ==" }, "nanomatch": { "version": "1.2.13", @@ -10818,9 +10896,9 @@ } }, "node-abi": { - "version": "2.19.3", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.19.3.tgz", - "integrity": "sha512-9xZrlyfvKhWme2EXFKQhZRp1yNWT/uI1luYPr3sFl+H4keYY4xR+1jO7mvTTijIsHf1M+QDe9uWuKeEpLInIlg==", + "version": "2.21.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.21.0.tgz", + "integrity": "sha512-smhrivuPqEM3H5LmnY3KU6HfYv0u4QklgAxfFyRNujKUzbUcYZ+Jc2EhukB9SRcD2VpqhxM7n/MIcp1Ua1/JMg==", "requires": { "semver": "^5.4.1" } @@ -10862,29 +10940,6 @@ "requires": { "inherits": "^2.0.1", "readable-stream": "~1.0.31" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" - }, - "readable-stream": { - "version": "1.0.34", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" - } } }, "noop-logger": { @@ -11139,9 +11194,9 @@ } }, "es-abstract": { - "version": "1.18.0-next.3", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.3.tgz", - "integrity": "sha512-VMzHx/Bczjg59E6jZOQjHeN3DEoptdhejpARgflAViidlqSpjdq9zA6lKwlhRRs/lOw1gHJv2xkkSFRgvEwbQg==", + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0.tgz", + "integrity": "sha512-LJzK7MrQa8TS0ja2w3YNLzUgJCGPdPOV1yVvezjNnS89D+VR08+Szt2mz3YB2Dck/+w5tfIq/RoUAFqJJGM2yw==", "requires": { "call-bind": "^1.0.2", "es-to-primitive": "^1.2.1", @@ -11490,9 +11545,12 @@ }, "dependencies": { "qs": { - "version": "6.9.6", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.6.tgz", - "integrity": "sha512-TIRk4aqYLNoJUbd+g2lEdz5kLWIuTMRagAXxl78Q0RiVjAOugHmeKNGdd3cwo/ktpf9aL9epCfFqWDEKysUlLQ==" + "version": "6.10.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.1.tgz", + "integrity": "sha512-M528Hph6wsSVOBiYUnGf+K/7w0hNshs/duGsNXPUCLH5XAqjEtiPGwNONLV0tBH8NoGb0mvD5JubnUTrujKDTg==", + "requires": { + "side-channel": "^1.0.4" + } } } }, @@ -12001,9 +12059,9 @@ "integrity": "sha512-18f9voByak7bTktR2QgDveglpn9DTbBWPUzSOe9g0N4WR/2eSt6Vrcbf0hmspvMI6YWGywz6B9f7jzpFNJJgnQ==" }, "postcss-loader": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-5.0.0.tgz", - "integrity": "sha512-bOvyWP5VHCJbThbv7wrBwCBc3DsVpyCfd+k/wHOL3wTAMMHmSSfNts90EADf8bHa6I810ird1JBEKmBRgJu3cg==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-5.2.0.tgz", + "integrity": "sha512-uSuCkENFeUaOYsKrXm0eNNgVIxc71z8RcckLMbVw473rGojFnrUeqEz6zBgXsH2q1EIzXnO/4pEz9RhALjlITA==", "requires": { "cosmiconfig": "^7.0.0", "klona": "^2.0.4", @@ -12023,9 +12081,9 @@ } }, "semver": { - "version": "7.3.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", - "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", "requires": { "lru-cache": "^6.0.0" } @@ -12967,11 +13025,6 @@ "react-is": "^16.12.0" }, "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" - }, "ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", @@ -13125,9 +13178,9 @@ "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==" }, "queue-microtask": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.2.tgz", - "integrity": "sha512-dB15eXv3p2jDlbOiNLyMabYg1/sXvppd8DP2J3EOCQ0AkuSXCW2tP7mnVouVLJKgUMY6yP0kcQDVpLCN13h4Xg==" + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==" }, "randombytes": { "version": "2.1.0", @@ -13195,6 +13248,11 @@ "strip-json-comments": "~2.0.1" }, "dependencies": { + "ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + }, "strip-json-comments": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", @@ -13212,9 +13270,9 @@ } }, "react-dev-utils": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/react-dev-utils/-/react-dev-utils-11.0.3.tgz", - "integrity": "sha512-4lEA5gF4OHrcJLMUV1t+4XbNDiJbsAWCH5Z2uqlTqW6dD7Cf5nEASkeXrCI/Mz83sI2o527oBIFKVMXtRf1Vtg==", + "version": "11.0.4", + "resolved": "https://registry.npmjs.org/react-dev-utils/-/react-dev-utils-11.0.4.tgz", + "integrity": "sha512-dx0LvIGHcOPtKbeiSUM4jqpBl3TcY7CDjZdfOIcKeznE7BWr9dg0iPG90G5yfVQ+p/rGNMXdbfStvzQZEVEi4A==", "requires": { "@babel/code-frame": "7.10.4", "address": "1.1.2", @@ -13242,11 +13300,6 @@ "text-table": "0.2.0" }, "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" - }, "browserslist": { "version": "4.14.2", "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.14.2.tgz", @@ -13499,17 +13552,21 @@ } }, "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", "requires": { "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + }, + "dependencies": { + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + } } }, "readable-web-to-node-stream": { @@ -13687,15 +13744,13 @@ } }, "remark-mdx": { - "version": "2.0.0-next.8", - "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-2.0.0-next.8.tgz", - "integrity": "sha512-mjP0yo6BgjYrx5a+gKWYRFWbGnRiWi4Fdf17xGCr9VkSMnG4Dyo06spqbaLfHwl0KkQ/RQZlR2sn1mKnYduJdw==", + "version": "2.0.0-next.9", + "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-2.0.0-next.9.tgz", + "integrity": "sha512-I5dCKP5VE18SMd5ycIeeEk8Hl6oaldUY6PIvjrfm65l7d0QRnLqknb62O2g3QEmOxCswcHTtwITtz6rfUIVs+A==", "requires": { - "parse-entities": "^2.0.0", - "remark-stringify": "^8.1.0", - "stringify-entities": "^3.0.1", - "strip-indent": "^3.0.0", - "unist-util-stringify-position": "^2.0.3" + "mdast-util-mdx": "^0.1.1", + "micromark-extension-mdx": "^0.2.0", + "micromark-extension-mdxjs": "^0.3.0" } }, "remark-mdxjs": { @@ -13787,6 +13842,35 @@ "is-decimal": "^1.0.0", "is-hexadecimal": "^1.0.0" } + }, + "unist-util-is": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-3.0.0.tgz", + "integrity": "sha512-sVZZX3+kspVNmLWBPAB6r+7D9ZgAFPNWm66f7YNb420RlQSbn+n8rG8dGZSkrER7ZIXGQYNm5pqC3v3HopH24A==" + }, + "unist-util-remove-position": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-1.1.4.tgz", + "integrity": "sha512-tLqd653ArxJIPnKII6LMZwH+mb5q+n/GtXQZo6S6csPRs5zB0u79Yw8ouR3wTw8wxvdJFhpP6Y7jorWdCgLO0A==", + "requires": { + "unist-util-visit": "^1.1.0" + } + }, + "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" + } + }, + "unist-util-visit-parents": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-2.1.2.tgz", + "integrity": "sha512-DyN5vD4NE3aSeB+PXYNKxzGsfocxp6asDc2XXE3b0ekO2BaRUpBicbbUygfSvYfUz1IkmjFR1YF7dPklraMZ2g==", + "requires": { + "unist-util-is": "^3.0.0" + } } } }, @@ -13826,6 +13910,21 @@ "htmlparser2": "^3.10.1", "lodash": "^4.17.20", "strip-ansi": "^3.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "requires": { + "ansi-regex": "^2.0.0" + } + } } }, "repeat-element": { @@ -14118,9 +14217,9 @@ } }, "semver": { - "version": "7.3.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", - "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", "requires": { "lru-cache": "^6.0.0" } @@ -14378,9 +14477,9 @@ "integrity": "sha512-zPMVc3ZYlGLNk4mpK1NzP2wg0ml9t7fUgDsayR5Y5rSzxQilzR9FGu/EH2jQOcKSAeAfWeylyW8juy3OkWRvNA==" }, "semver": { - "version": "7.3.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", - "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", "requires": { "lru-cache": "^6.0.0" } @@ -14504,7 +14603,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", - "dev": true, "requires": { "ansi-styles": "^4.0.0", "astral-regex": "^2.0.0", @@ -14515,7 +14613,6 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, "requires": { "color-convert": "^2.0.1" } @@ -14524,7 +14621,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, "requires": { "color-name": "~1.1.4" } @@ -14532,21 +14628,19 @@ "color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true + "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==", - "dev": true + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" } } }, "slugify": { - "version": "1.4.7", - "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.4.7.tgz", - "integrity": "sha512-tf+h5W1IrjNm/9rKKj0JU2MDMruiopx0jjVA5zCdBtcGjfp0+c5rHw/zADLC3IeKlGHtVbHtpfzvYA0OYT+HKg==" + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.5.0.tgz", + "integrity": "sha512-Q2UPZ2udzquy1ElHfOLILMBMqBEXkiD3wE75qtBvV+FsDdZZjUqPZ44vqLTejAVq+wLLHacOMcENnP8+ZbzmIA==" }, "snapdragon": { "version": "0.8.2", @@ -14995,21 +15089,21 @@ } }, "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", + "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" }, "dependencies": { - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", "requires": { - "number-is-nan": "^1.0.0" + "ansi-regex": "^5.0.0" } } } @@ -15065,17 +15159,17 @@ } }, "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "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": "^2.0.0" + "ansi-regex": "^4.1.0" }, "dependencies": { "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" } } }, @@ -15089,6 +15183,12 @@ "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=" }, + "strip-filename-increment": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-filename-increment/-/strip-filename-increment-2.0.1.tgz", + "integrity": "sha512-+v5xsiTTsdYqkPj7qz1zlngIsjZedhHDi3xp/9bMurV8kXe9DAr732gNVqtt4X8sI3hOqS3nlFfps5gyVcux6w==", + "dev": true + }, "strip-final-newline": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", @@ -15280,22 +15380,95 @@ "util.promisify": "~1.0.0" }, "dependencies": { - "es-abstract": { - "version": "1.17.7", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.7.tgz", - "integrity": "sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==", + "call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + } + }, + "es-abstract": { + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0.tgz", + "integrity": "sha512-LJzK7MrQa8TS0ja2w3YNLzUgJCGPdPOV1yVvezjNnS89D+VR08+Szt2mz3YB2Dck/+w5tfIq/RoUAFqJJGM2yw==", + "requires": { + "call-bind": "^1.0.2", "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", + "get-intrinsic": "^1.1.1", "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.2.2", - "is-regex": "^1.1.1", - "object-inspect": "^1.8.0", + "has-symbols": "^1.0.2", + "is-callable": "^1.2.3", + "is-negative-zero": "^2.0.1", + "is-regex": "^1.1.2", + "is-string": "^1.0.5", + "object-inspect": "^1.9.0", "object-keys": "^1.1.1", - "object.assign": "^4.1.1", - "string.prototype.trimend": "^1.0.1", - "string.prototype.trimstart": "^1.0.1" + "object.assign": "^4.1.2", + "string.prototype.trimend": "^1.0.4", + "string.prototype.trimstart": "^1.0.4", + "unbox-primitive": "^1.0.0" + }, + "dependencies": { + "has-symbols": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", + "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==" + } + } + }, + "get-intrinsic": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" + } + }, + "is-callable": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz", + "integrity": "sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==" + }, + "is-negative-zero": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", + "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==" + }, + "is-regex": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.2.tgz", + "integrity": "sha512-axvdhb5pdhEVThqJzYXwMlVuZwC+FF2DpcOhTS+y/8jVq4trxyPgfcwIxIKiyeuLlSQYKkmUaPQJ8ZE4yNKXDg==", + "requires": { + "call-bind": "^1.0.2", + "has-symbols": "^1.0.1" + } + }, + "object-inspect": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.9.0.tgz", + "integrity": "sha512-i3Bp9iTqwhaLZBxGkRfo5ZbE07BQRT7MGu8+nNgwW9ItGp1TzCTw2DLEoWwjClxBjOFI/hWljTAmYGCEwmtnOw==" + }, + "string.prototype.trimend": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz", + "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + } + }, + "string.prototype.trimstart": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz", + "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" } }, "util.promisify": { @@ -15337,7 +15510,6 @@ "version": "6.0.7", "resolved": "https://registry.npmjs.org/table/-/table-6.0.7.tgz", "integrity": "sha512-rxZevLGTUzWna/qBLObOe16kB2RTnnbhciwgPbMMlazz1yZGVEgnZK762xyVdVznhqxrfCeBMmMkgOOaPwjH7g==", - "dev": true, "requires": { "ajv": "^7.0.2", "lodash": "^4.17.20", @@ -15349,7 +15521,6 @@ "version": "7.1.1", "resolved": "https://registry.npmjs.org/ajv/-/ajv-7.1.1.tgz", "integrity": "sha512-ga/aqDYnUy/o7vbsRTFhhTsNeXiYb5JWDIcRIeZfwRNCefwjNTVYCGdGSUrEmiu3yDK3vFvNbgJxvrQW4JXrYQ==", - "dev": true, "requires": { "fast-deep-equal": "^3.1.1", "json-schema-traverse": "^1.0.0", @@ -15360,20 +15531,17 @@ "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==", - "dev": true + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" }, "json-schema-traverse": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" }, "string-width": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", - "dev": true, "requires": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -15384,7 +15552,6 @@ "version": "6.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, "requires": { "ansi-regex": "^5.0.0" } @@ -15409,11 +15576,6 @@ "yallist": "^4.0.0" }, "dependencies": { - "chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==" - }, "mkdirp": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", @@ -15430,6 +15592,13 @@ "mkdirp-classic": "^0.5.2", "pump": "^3.0.0", "tar-stream": "^2.1.4" + }, + "dependencies": { + "chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" + } } }, "tar-stream": { @@ -15462,9 +15631,9 @@ "integrity": "sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==" }, "terser": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.6.0.tgz", - "integrity": "sha512-vyqLMoqadC1uR0vywqOZzriDYzgEkNJFK4q9GeyOBHIbiECHiWLKcWfbQWAUaPfxkjDhapSlZB9f7fkMrvkVjA==", + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.6.1.tgz", + "integrity": "sha512-yv9YLFQQ+3ZqgWCUk+pvNJwgUTdlIxUk1WTN+RnaFJe2L7ipG2csPT0ra2XRm7Cs8cxN7QXmK1rFzEwYEQkzXw==", "requires": { "commander": "^2.20.0", "source-map": "~0.7.2", @@ -15556,6 +15725,27 @@ "requires": { "readable-stream": "~2.3.6", "xtend": "~4.0.1" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + } } }, "thunky": { @@ -15727,9 +15917,9 @@ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, "tsutils": { - "version": "3.20.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.20.0.tgz", - "integrity": "sha512-RYbuQuvkhuqVeXweWT3tJLKOEJ/UUw9GjNEZGWdrLLlM+611o1gwLHBpxoFJKKl25fLprp2eVthtKs5JOrNeXg==", + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", "requires": { "tslib": "^1.8.1" } @@ -15889,9 +16079,9 @@ } }, "unist-util-is": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-4.0.4.tgz", - "integrity": "sha512-3dF39j/u423v4BBQrk1AQ2Ve1FxY5W3JKwXxVFzBODQ6WEvccguhgp802qQLKSnxPODE6WuRZtV+ohlUg4meBA==" + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-4.1.0.tgz", + "integrity": "sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg==" }, "unist-util-remove": { "version": "2.0.1", @@ -15902,34 +16092,11 @@ } }, "unist-util-remove-position": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-1.1.4.tgz", - "integrity": "sha512-tLqd653ArxJIPnKII6LMZwH+mb5q+n/GtXQZo6S6csPRs5zB0u79Yw8ouR3wTw8wxvdJFhpP6Y7jorWdCgLO0A==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-3.0.0.tgz", + "integrity": "sha512-17kIOuolVuK16LMb9KyMJlqdfCtlfQY5FjY3Sdo9iC7F5wqdXhNjMq0PBvMpkVNNnAmHxXssUW+rZ9T2zbP0Rg==", "requires": { - "unist-util-visit": "^1.1.0" - }, - "dependencies": { - "unist-util-is": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-3.0.0.tgz", - "integrity": "sha512-sVZZX3+kspVNmLWBPAB6r+7D9ZgAFPNWm66f7YNb420RlQSbn+n8rG8dGZSkrER7ZIXGQYNm5pqC3v3HopH24A==" - }, - "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" - } - }, - "unist-util-visit-parents": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-2.1.2.tgz", - "integrity": "sha512-DyN5vD4NE3aSeB+PXYNKxzGsfocxp6asDc2XXE3b0ekO2BaRUpBicbbUygfSvYfUz1IkmjFR1YF7dPklraMZ2g==", - "requires": { - "unist-util-is": "^3.0.0" - } - } + "unist-util-visit": "^2.0.0" } }, "unist-util-stringify-position": { @@ -16026,6 +16193,11 @@ "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=" }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, "isobject": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", @@ -16064,11 +16236,6 @@ "xdg-basedir": "^4.0.0" }, "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" - }, "ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", @@ -16119,37 +16286,14 @@ "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==" - }, "semver": { - "version": "7.3.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", - "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", "requires": { "lru-cache": "^6.0.0" } }, - "string-width": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "requires": { - "ansi-regex": "^5.0.0" - } - }, "supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -16367,9 +16511,9 @@ } }, "webpack": { - "version": "5.24.2", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.24.2.tgz", - "integrity": "sha512-uxxKYEY4kMNjP+D2Y+8aw5Vd7ar4pMuKCNemxV26ysr1nk0YDiQTylg9U3VZIdkmI0YHa0uC8ABxL+uGxGWWJg==", + "version": "5.27.2", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.27.2.tgz", + "integrity": "sha512-brNF3N/EdvMzkaZ/Xzb8sqPn5Si3iw6meqCnmNFtcnkorZsFZCBFMa2ElpIMjx6sKWYsnUpBO2dnX+7xgj+mjg==", "requires": { "@types/eslint-scope": "^3.7.0", "@types/estree": "^0.0.46", @@ -16397,9 +16541,9 @@ }, "dependencies": { "acorn": { - "version": "8.0.5", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.0.5.tgz", - "integrity": "sha512-v+DieK/HJkJOpFBETDJioequtc3PfxsWMaxIdIwujtF7FEV/MAyDQLlm6/zPvr7Mix07mLh6ccVwIsloceodlg==" + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.1.0.tgz", + "integrity": "sha512-LWCF/Wn0nfHOmJ9rzQApGnxnvgfROzGilS8936rqN/lfcYkY9MYZzdMqN+2NJ4SlTc+m5HiSa+kNfDtI64dwUA==" }, "schema-utils": { "version": "3.0.0", @@ -16498,9 +16642,9 @@ }, "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==" + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" }, "anymatch": { "version": "2.0.0", @@ -16595,6 +16739,11 @@ "wrap-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==" + }, "strip-ansi": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", @@ -16720,6 +16869,11 @@ "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" }, + "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=" + }, "is-number": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", @@ -16738,6 +16892,11 @@ } } }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, "isobject": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", @@ -16795,6 +16954,20 @@ "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, "readdirp": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", @@ -16838,6 +17011,11 @@ "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==" + }, "strip-ansi": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", @@ -16848,6 +17026,14 @@ } } }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "requires": { + "ansi-regex": "^2.0.0" + } + }, "supports-color": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", @@ -16887,6 +17073,11 @@ "strip-ansi": "^5.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==" + }, "strip-ansi": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", @@ -17046,6 +17237,35 @@ "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", "requires": { "string-width": "^1.0.2 || 2" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" + }, + "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": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "requires": { + "ansi-regex": "^3.0.0" + } + } } }, "widest-line": { @@ -17054,36 +17274,6 @@ "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", "requires": { "string-width": "^4.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" - }, - "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.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "requires": { - "ansi-regex": "^5.0.0" - } - } } }, "wildcard": { @@ -17114,11 +17304,6 @@ "strip-ansi": "^6.0.0" }, "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" - }, "ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", @@ -17140,21 +17325,6 @@ "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==" - }, - "string-width": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, "strip-ansi": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", @@ -17170,6 +17340,15 @@ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" }, + "write": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/write/-/write-2.0.0.tgz", + "integrity": "sha512-yam9TAqN8sAZokECAejo9HpT2j2s39OgK8i8yxadrFBVo+iSWLfnipRVFulfAw1d2dz5vSuGmlMHYRKG4fysOA==", + "dev": true, + "requires": { + "add-filename-increment": "^1.0.0" + } + }, "write-file-atomic": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", @@ -17182,9 +17361,9 @@ } }, "ws": { - "version": "7.4.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.3.tgz", - "integrity": "sha512-hr6vCR76GsossIRsr8OLR9acVVm1jyfEWvhbNjtgPOrfvAlKzvyeg/P6r8RuDjRyrcQoPQT7K0DGEPc7Ae6jzA==" + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.4.tgz", + "integrity": "sha512-Qm8k8ojNQIMx7S+Zp8u/uHOx7Qazv3Yv4q68MiWWWOJhiwG5W3x7iqmRtJo8xxrciZUY4vRxUTJCKuRnF28ZZw==" }, "xdg-basedir": { "version": "4.0.0", @@ -17206,9 +17385,9 @@ } }, "xstate": { - "version": "4.16.2", - "resolved": "https://registry.npmjs.org/xstate/-/xstate-4.16.2.tgz", - "integrity": "sha512-EY39NNZnwM4tRYNmQAi1c2qHuZ1lJmuDpEo1jxiRcfS+1jPtKRAjGRLNx3fYKcK0ohW6mL41Wze3mdCF0SqavA==" + "version": "4.17.0", + "resolved": "https://registry.npmjs.org/xstate/-/xstate-4.17.0.tgz", + "integrity": "sha512-4DCayqvvVt06UidsNrCzigzgbmyiTO6kPd32ESOFlZFmM4aPS1CG161fetyGGLXrBZPjTyQyeq63aFtqZ1Y3ng==" }, "xtend": { "version": "4.0.2", @@ -17251,42 +17430,12 @@ "string-width": "^4.2.0", "y18n": "^5.0.5", "yargs-parser": "^20.2.2" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" - }, - "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.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", - "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "requires": { - "ansi-regex": "^5.0.0" - } - } } }, "yargs-parser": { - "version": "20.2.6", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.6.tgz", - "integrity": "sha512-AP1+fQIWSM/sMiET8fyayjx/J+JmTPt2Mr0FkrgqB4todtfa53sOsrSAcIrJRD5XS20bKUwaDIuMkWKCEiQLKA==" + "version": "20.2.7", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.7.tgz", + "integrity": "sha512-FiNkvbeHzB/syOjIUxFDCnhSfzAL8R5vs40MgLFBorXACCOAEaWu0gRZl14vG8MR9AOJIZbmkjhusqBYZ3HTHw==" }, "yeast": { "version": "0.1.2", @@ -17321,22 +17470,12 @@ "is-ci": "^2.0.0", "read": "^1.0.7", "strip-ansi": "^5.2.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==" - }, - "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" - } - } } + }, + "zwitch": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-1.0.5.tgz", + "integrity": "sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==" } } } diff --git a/package.json b/package.json index ae023ac..8f53721 100644 --- a/package.json +++ b/package.json @@ -17,16 +17,17 @@ "dotenv": "^8.2.0", "esm": "^3.2.25", "framer-motion": "^3.10.2", - "gatsby": "^3.0.0", - "gatsby-plugin-create-client-paths": "^3.0.0", - "gatsby-plugin-fontawesome-css": "^1.0.0", - "gatsby-plugin-layout": "^2.0.0", - "gatsby-plugin-manifest": "^3.0.0", - "gatsby-plugin-react-helmet": "^4.0.0", + "gatsby": "^3.1.1", + "gatsby-plugin-create-client-paths": "^3.1.0", + "gatsby-plugin-fontawesome-css": "^1.1.0", + "gatsby-plugin-layout": "^2.1.0", + "gatsby-plugin-manifest": "^3.1.0", + "gatsby-plugin-react-helmet": "^4.1.0", "gatsby-plugin-root-import": "^2.0.6", - "gatsby-plugin-sass": "^4.0.0", - "gatsby-plugin-styled-components": "^4.0.0", + "gatsby-plugin-sass": "^4.1.0", + "gatsby-plugin-styled-components": "^4.1.0", "gatsby-source-animethemes": "file:plugins/gatsby-source-animethemes", + "gatsby-source-animethemes-db": "file:plugins/gatsby-source-animethemes-db", "node-fetch": "^2.6.1", "prismjs": "^1.23.0", "react": "^17.0.1", @@ -46,6 +47,7 @@ "eslint-config-react-app": "^6.0.0", "eslint-loader": "^4.0.2", "eslint-plugin-react": "^7.22.0", - "gatsby-plugin-eslint": "^3.0.0" + "gatsby-plugin-eslint": "^3.0.0", + "gatsby-plugin-extract-schema": "^0.1.0" } } diff --git a/plugins/gatsby-source-animethemes-db/gatsby-node.js b/plugins/gatsby-source-animethemes-db/gatsby-node.js new file mode 100644 index 0000000..463afed --- /dev/null +++ b/plugins/gatsby-source-animethemes-db/gatsby-node.js @@ -0,0 +1,7 @@ +exports.onPreInit = ({ reporter }) => reporter.info("Loaded gatsby-source-animethemes-db"); + +exports.createSchemaCustomization = require("./src/create-schema-customization"); + +exports.sourceNodes = require("./src/source-nodes"); + +exports.createResolvers = require("./src/create-resolvers"); diff --git a/plugins/gatsby-source-animethemes-db/package-lock.json b/plugins/gatsby-source-animethemes-db/package-lock.json new file mode 100644 index 0000000..d979e27 --- /dev/null +++ b/plugins/gatsby-source-animethemes-db/package-lock.json @@ -0,0 +1,81 @@ +{ + "name": "gatsby-source-animethemes-db", + "version": "1.0.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "bignumber.js": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.0.tgz", + "integrity": "sha512-t/OYhhJ2SD+YGBQcjY8GzzDHEk9f3nerxjtfa6tlMXfe7frs/WozhvCNoGvpM0P3bNf3Gq5ZRMlGr5f3r4/N8A==" + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "mysql": { + "version": "2.18.1", + "resolved": "https://registry.npmjs.org/mysql/-/mysql-2.18.1.tgz", + "integrity": "sha512-Bca+gk2YWmqp2Uf6k5NFEurwY/0td0cpebAucFpY/3jhrwrVGuxU2uQFCHjU19SJfje0yQvi+rVWdq78hR5lig==", + "requires": { + "bignumber.js": "9.0.0", + "readable-stream": "2.3.7", + "safe-buffer": "5.1.2", + "sqlstring": "2.3.1" + } + }, + "process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "sqlstring": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/sqlstring/-/sqlstring-2.3.1.tgz", + "integrity": "sha1-R1OT/56RR5rqYtyvDKPRSYOn+0A=" + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + } + } +} diff --git a/plugins/gatsby-source-animethemes-db/package.json b/plugins/gatsby-source-animethemes-db/package.json new file mode 100644 index 0000000..3f14063 --- /dev/null +++ b/plugins/gatsby-source-animethemes-db/package.json @@ -0,0 +1,7 @@ +{ + "name": "gatsby-source-animethemes-db", + "version": "1.0.0", + "dependencies": { + "mysql": "^2.18.1" + } +} diff --git a/plugins/gatsby-source-animethemes-db/src/create-resolvers.js b/plugins/gatsby-source-animethemes-db/src/create-resolvers.js new file mode 100644 index 0000000..ace9291 --- /dev/null +++ b/plugins/gatsby-source-animethemes-db/src/create-resolvers.js @@ -0,0 +1,112 @@ +const { animeSeason, videoSource, imageFacet, resourceSite, videoOverlap } = require("./enums"); + +module.exports = ({ createResolvers }) => { + createResolvers({ + Anime: { + ...enumResolver({ + season: animeSeason + }), + ...pivotResolver({ + series: { type: "AnimeSeries", from: "anime", to: "series" }, + resources: { type: "AnimeResource", from: "anime", to: "resource" }, + images: { type: "AnimeImage", from: "anime", to: "image" } + }) + }, + Artist: { + ...pivotResolver({ + resources: { type: "ArtistResource", from: "artist", to: "resource" }, + images: { type: "ArtistImage", from: "artist", to: "image" } + }) + }, + Entry: { + ...pivotResolver({ + videos: { type: "EntryVideo", from: "entry", to: "video" } + }) + }, + Image: { + ...enumResolver({ + facet: imageFacet + }), + link: { + resolve(source) { + return `https://staging.animethemes.moe/image/${source.idRaw}`; + } + } + }, + Resource: { + ...enumResolver({ + site: resourceSite + }) + }, + Series: { + ...pivotResolver({ + anime: { type: "AnimeSeries", from: "series", to: "anime" } + }) + }, + Video: { + ...enumResolver({ + overlap: videoOverlap, + source: videoSource + }), + ...pivotResolver({ + entries: { type: "EntryVideo", from: "video", to: "entry" } + }), + tags: { + resolve(source) { + const tags = []; + + if (source.nc) { + tags.push("NC"); + } + if (source.source === videoSource.get(2) || source.source === videoSource.get(3)) { + tags.push(videoSource.get(source.source)); + } + if (source.resolution && source.resolution !== 720) { + tags.push(source.resolution); + } + + if (source.subbed) { + tags.push("Subbed"); + } else if (source.lyrics) { + tags.push("Lyrics"); + } + + return tags.join(""); + } + }, + link: { + resolve(source) { + return `https://v.animethemes.moe/${source.basename}`; + } + } + } + }); +}; + +function enumResolver(propertyToEnumMap) { + return Object.fromEntries(Object.entries(propertyToEnumMap).map(([ property, enumMap ]) => { + return [ + property, + { + resolve(source) { + return enumMap.get(source[property]); + } + } + ]; + })); +} + +function pivotResolver(propertyToPivotConfig) { + return Object.fromEntries(Object.entries(propertyToPivotConfig).map(([ property, pivotConfig ]) => { + return [ + property, + { + resolve(source, args, context) { + return context.nodeModel.getAllNodes({ type: pivotConfig.type }) + .filter((node) => node[pivotConfig.from] === source.id) + .map((node) => context.nodeModel.getNodeById({ id: node[pivotConfig.to] })); + } + } + ]; + })); +} diff --git a/plugins/gatsby-source-animethemes-db/src/create-schema-customization.js b/plugins/gatsby-source-animethemes-db/src/create-schema-customization.js new file mode 100644 index 0000000..cc1ec25 --- /dev/null +++ b/plugins/gatsby-source-animethemes-db/src/create-schema-customization.js @@ -0,0 +1,128 @@ +module.exports = ({ actions }) => { + const { createTypes } = actions; + createTypes(` + interface Entity { + idRaw: Int + } + + type Anime implements Node & Entity { + name: String! + slug: String! + year: Int! + season: String + synopsis: String + synonyms: [Synonym] @link(by: "anime.id", from: "id") + themes: [Theme] @link(by: "anime.id", from: "id") + series: [Series] + resources: [Resource] + images: [Image] + } + + type Synonym implements Node & Entity { + text: String! + anime: Anime! @link(by: "id") + } + + type Theme implements Node & Entity { + slug: String! + group: String + song: Song! @link(by: "id") + anime: Anime! @link(by: "id") + entries: [Entry] @link(by: "theme.id", from: "id") + } + + type Entry implements Node & Entity { + version: Int + episodes: String + nsfw: Boolean! + spoiler: Boolean! + theme: Theme! @link(by: "id") + videos: [Video] + } + + type Video implements Node & Entity { + filename: String! + basename: String! + link: String + resolution: Int + nc: Boolean! + subbed: Boolean! + lyrics: Boolean! + uncen: Boolean! + source: String + overlap: String + tags: String + entries: [Entry] + } + + type Song implements Node & Entity { + title: String! + themes: [Theme] @link(by: "song.id", from: "id") + performances: [Performance] @link(by: "song.id", from: "id") + } + + type Performance implements Node { + song: Song! @link(by: "id") + artist: Artist! @link(by: "id") + as: String + } + + type Artist implements Node & Entity { + slug: String! + name: String! + performances: [Performance] @link(by: "artist.id", from: "id") + resources: [Resource] + images: [Image] + } + + type Series implements Node & Entity { + slug: String! + name: String! + anime: [Anime] + } + + type Resource implements Node & Entity { + link: String! + site: String! + } + + type Image implements Node & Entity { + facet: String! + link: String + } + + type AnimeSeries implements Node { + anime: Anime! @link(by: "id") + series: Series! @link(by: "id") + } + + type EntryVideo implements Node { + entry: Entry! @link(by: "id") + video: Video! @link(by: "id") + } + + type AnimeResource implements Node { + anime: Anime! @link(by: "id") + resource: Resource! @link(by: "id") + } + + type ArtistResource implements Node { + artist: Artist! @link(by: "id") + resource: Resource! @link(by: "id") + } + + type AnimeImage implements Node { + anime: Anime! @link(by: "id") + image: Image! @link(by: "id") + } + + type ArtistImage implements Node { + artist: Artist! @link(by: "id") + image: Image! @link(by: "id") + } + + type Announcement implements Node & Entity { + content: String! + } + `); +}; diff --git a/plugins/gatsby-source-animethemes-db/src/enums.js b/plugins/gatsby-source-animethemes-db/src/enums.js new file mode 100644 index 0000000..e2910ae --- /dev/null +++ b/plugins/gatsby-source-animethemes-db/src/enums.js @@ -0,0 +1,38 @@ +exports.animeSeason = new Map([ + [ 0, "Winter" ], + [ 1, "Spring" ], + [ 2, "Summer" ], + [ 3, "Fall" ] +]); + +exports.videoSource = new Map([ + [ 0, "WEB" ], + [ 1, "RAW" ], + [ 2, "BD" ], + [ 3, "DVD" ], + [ 4, "VHS" ], + [ 5, "LD" ] +]); + +exports.videoOverlap = new Map([ + [ 0, "None" ], + [ 1, "Transition" ], + [ 2, "Over" ] +]); + +exports.imageFacet = new Map([ + [ 0, "Small Cover" ], + [ 1, "Large Cover" ] +]); + +exports.resourceSite = new Map([ + [ 0, "Official Website" ], + [ 1, "Twitter" ], + [ 2, "aniDB" ], + [ 3, "AniList" ], + [ 4, "Anime-Planet" ], + [ 5, "Anime News Network" ], + [ 6, "Kitsu" ], + [ 7, "MyAnimeList" ], + [ 8, "Wiki" ] +]); diff --git a/plugins/gatsby-source-animethemes-db/src/source-nodes.js b/plugins/gatsby-source-animethemes-db/src/source-nodes.js new file mode 100644 index 0000000..bab00f0 --- /dev/null +++ b/plugins/gatsby-source-animethemes-db/src/source-nodes.js @@ -0,0 +1,236 @@ +const mysql = require("mysql"); + +module.exports = async ({ actions, createNodeId, createContentDigest, reporter }) => { + const helpers = { + ...actions, + createNodeId, + createContentDigest + }; + + // TODO: Implement incremental data fetching when pivots have timestamps + // const lastFetched = await cache.get("last-fetched"); + + // getNodes().filter(isPluginNode).forEach((node) => helpers.touchNode(node)); + + // const now = new Date(); + + const connection = mysql.createConnection({ + host: process.env.DB_HOST || "127.0.0.1", + user: process.env.DB_USER, + password: process.env.DB_PASSWORD, + database: process.env.DB_DATABASE || "animethemes" + }); + + async function query(sql) { + reporter.info(`Executing query: ${sql}`); + return new Promise((resolve, reject) => connection.query(sql, (error, results) => { + if (error) { + return reject(error); + } + reporter.info(`Got ${results.length} results`); + resolve(results); + })); + } + + for (const anime of await query("SELECT * FROM anime")) { + createNodeFromData({ + id: anime.anime_id, + idRaw: anime.anime_id, + name: anime.name, + slug: anime.slug, + year: anime.year, + season: anime.season, + synopsis: anime.synopsis, + resources: [], + images: [] + }, "Anime", helpers); + } + + for (const synonym of await query("SELECT * FROM synonym")) { + createNodeFromData({ + id: synonym.synonym_id, + idRaw: synonym.synonym_id, + text: synonym.text, + anime: createNodeId(`Anime-${synonym.anime_id}`) + }, "Synonym", helpers); + } + + for (const theme of await query("SELECT * FROM theme")) { + createNodeFromData({ + id: theme.theme_id, + idRaw: theme.theme_id, + slug: theme.slug, + group: theme.group, + song: createNodeId(`Song-${theme.song_id}`), + anime: createNodeId(`Anime-${theme.anime_id}`) + }, "Theme", helpers); + } + + for (const entry of await query("SELECT * FROM entry")) { + createNodeFromData({ + id: entry.entry_id, + idRaw: entry.entry_id, + version: entry.version || 1, + episodes: entry.episodes, + nsfw: entry.nsfw, + spoiler: entry.spoiler, + theme: createNodeId(`Theme-${entry.theme_id}`), + videos: [] + }, "Entry", helpers); + } + + for (const video of await query("SELECT * FROM video")) { + createNodeFromData({ + id: video.video_id, + idRaw: video.video_id, + filename: video.filename, + basename: video.basename, + link: video.link, + resolution: video.resolution, + nc: video.nc, + subbed: video.subbed, + lyrics: video.lyrics, + uncen: video.uncen, + source: video.source, + overlap: video.overlap, + // tags: video.tags, TODO: Add tags algorithm + entries: [] + }, "Video", helpers); + } + + for (const song of await query("SELECT * FROM song")) { + createNodeFromData({ + id: song.song_id, + idRaw: song.song_id, + title: song.title + }, "Song", helpers); + } + + for (const artist of await query("SELECT * FROM artist")) { + createNodeFromData({ + id: artist.artist_id, + idRaw: artist.artist_id, + slug: artist.slug, + name: artist.name, + resources: [], + images: [] + }, "Artist", helpers); + } + + for (const series of await query("SELECT * FROM series")) { + createNodeFromData({ + id: series.series_id, + idRaw: series.series_id, + slug: series.slug, + name: series.name + }, "Series", helpers); + } + + for (const resource of await query("SELECT * FROM resource")) { + createNodeFromData({ + id: resource.resource_id, + idRaw: resource.resource_id, + link: resource.link, + site: resource.site + }, "Resource", helpers); + } + + for (const image of await query("SELECT * FROM image")) { + createNodeFromData({ + id: image.image_id, + idRaw: image.image_id, + facet: image.facet + }, "Image", helpers); + } + + for (const announcement of await query("SELECT * FROM announcement")) { + createNodeFromData({ + id: announcement.announcement_id, + idRaw: announcement.announcement_id, + content: announcement.content + }, "Announcement", helpers); + } + + // Pivot types + + for (const performance of await query("SELECT * FROM artist_song")) { + createNodeFromData({ + id: `${performance.song_id}-${performance.artist_id}`, + song: createNodeId(`Song-${performance.song_id}`), + artist: createNodeId(`Artist-${performance.artist_id}`), + as: performance.as + }, "Performance", helpers); + } + + for (const animeSeries of await query("SELECT * FROM anime_series")) { + createNodeFromData({ + id: `${animeSeries.anime_id}-${animeSeries.series_id}`, + anime: createNodeId(`Anime-${animeSeries.anime_id}`), + series: createNodeId(`Series-${animeSeries.series_id}`) + }, "AnimeSeries", helpers); + } + + for (const animeResource of await query("SELECT * FROM anime_resource")) { + createNodeFromData({ + id: `${animeResource.anime_id}-${animeResource.resource_id}`, + anime: createNodeId(`Anime-${animeResource.anime_id}`), + resource: createNodeId(`Resource-${animeResource.resource_id}`) + }, "AnimeResource", helpers); + } + + for (const animeImage of await query("SELECT * FROM anime_image")) { + createNodeFromData({ + id: `${animeImage.anime_id}-${animeImage.image_id}`, + anime: createNodeId(`Anime-${animeImage.anime_id}`), + image: createNodeId(`Image-${animeImage.image_id}`) + }, "AnimeImage", helpers); + } + + for (const artistResource of await query("SELECT * FROM artist_resource")) { + createNodeFromData({ + id: `${artistResource.artist_id}-${artistResource.resource_id}`, + artist: createNodeId(`Artist-${artistResource.artist_id}`), + resource: createNodeId(`Resource-${artistResource.resource_id}`) + }, "ArtistResource", helpers); + } + + for (const artistImage of await query("SELECT * FROM artist_image")) { + createNodeFromData({ + id: `${artistImage.artist_id}-${artistImage.image_id}`, + artist: createNodeId(`Artist-${artistImage.artist_id}`), + image: createNodeId(`Image-${artistImage.image_id}`) + }, "ArtistImage", helpers); + } + + for (const entryVideo of await query("SELECT * FROM entry_video")) { + createNodeFromData({ + id: `${entryVideo.entry_id}-${entryVideo.video_id}`, + entry: createNodeId(`Entry-${entryVideo.entry_id}`), + video: createNodeId(`Video-${entryVideo.video_id}`) + }, "EntryVideo", helpers); + } + + // await cache.set("last-fetched", now); +}; + +function createNodeFromData(item, nodeType, helpers) { + const node = { + ...item, + id: helpers.createNodeId(`${nodeType}-${item.id}`), + parent: null, + children: [], + internal: { + type: nodeType, + content: JSON.stringify(item), + contentDigest: helpers.createContentDigest(item) + } + }; + + helpers.createNode(node) + + return node; +} + +// function isPluginNode(node) { +// return node.internal.owner === "gatsby-source-animethemes"; +// } diff --git a/plugins/gatsby-source-animethemes/gatsby-node.js b/plugins/gatsby-source-animethemes/gatsby-node.js index bc544eb..1e99edb 100644 --- a/plugins/gatsby-source-animethemes/gatsby-node.js +++ b/plugins/gatsby-source-animethemes/gatsby-node.js @@ -1,6 +1,13 @@ const { fetchAnimeList } = require("./src/anime"); +const { fetchSynonymList } = require("./src/synonym"); +const { fetchThemeList } = require("./src/theme"); +const { fetchEntryList } = require("./src/entry"); +const { fetchVideoList } = require("./src/video"); +const { fetchSongList } = require("./src/song"); const { fetchArtistList } = require("./src/artist"); const { fetchSeriesList } = require("./src/series"); +const { fetchResourceList } = require("./src/resource"); +const { fetchImageList } = require("./src/image"); const { fetchAnnouncements } = require("./src/announcement"); exports.onPreInit = ({ reporter }) => reporter.info("Loaded gatsby-source-animethemes"); @@ -15,14 +22,21 @@ exports.createSchemaCustomization = ({ actions }) => { year: Int! season: String synopsis: String - synonyms: [String] + synonyms: [Synonym] @link(by: "anime.id", from: "id") + themes: [Theme] @link(by: "anime.id", from: "id") + # See custom resolver below (n-to-n relations cannot be resolved with @link) series: [Series] - themes: [Theme] @link(by: "anime.id", from: "id") resources: [Resource] images: [Image] } + type Synonym implements Node { + id: ID! + text: String! + anime: Anime! @link(by: "id") + } + type Theme implements Node { id: ID! slug: String! @@ -39,6 +53,7 @@ exports.createSchemaCustomization = ({ actions }) => { nsfw: Boolean! spoiler: Boolean! theme: Theme! @link(by: "id") + # See custom resolver below (n-to-n relations cannot be resolved with @link) videos: [Video] } @@ -56,6 +71,7 @@ exports.createSchemaCustomization = ({ actions }) => { source: String overlap: String tags: String + # See custom resolver below (n-to-n relations cannot be resolved with @link) entries: [Entry] } @@ -63,7 +79,7 @@ exports.createSchemaCustomization = ({ actions }) => { type Song implements Node { id: ID! title: String! - theme: Theme! @link(by: "id") + themes: [Theme] @link(by: "song.id", from: "id") performances: [Performance] @link(by: "song.id", from: "id") } @@ -79,6 +95,8 @@ exports.createSchemaCustomization = ({ actions }) => { slug: String! name: String! performances: [Performance] @link(by: "artist.id", from: "id") + + # See custom resolver below (n-to-n relations cannot be resolved with @link) resources: [Resource] images: [Image] } @@ -87,18 +105,27 @@ exports.createSchemaCustomization = ({ actions }) => { id: ID! slug: String! name: String! + # See custom resolver below (n-to-n relations cannot be resolved with @link) anime: [Anime] } - type Resource { + type Resource implements Node { link: String! site: String! + + # See custom resolver below (n-to-n relations cannot be resolved with @link) + anime: [Anime] + artists: [Artist] } - type Image { + type Image implements Node { facet: String! link: String! + + # See custom resolver below (n-to-n relations cannot be resolved with @link) + anime: [Anime] + artists: [Artist] } type Announcement implements Node { @@ -108,15 +135,29 @@ exports.createSchemaCustomization = ({ actions }) => { `); }; -exports.sourceNodes = async ({ actions, createNodeId, createContentDigest, reporter }) => { +exports.sourceNodes = async ({ cache, actions, getNodes, createNodeId, createContentDigest, reporter }) => { const helpers = { ...actions, createNodeId, createContentDigest }; + // const lastFetched = await cache.get("last-fetched"); + // + // getNodes().filter(isPluginNode).forEach((node) => helpers.touchNode(node)); + // + // const now = new Date().toISOString().replace("Z", "000"); + const animeList = await fetchAnimeList({ reporter }); - const videoAggregations = new Map(); + const synonymList = await fetchSynonymList({ reporter }); + const themeList = await fetchThemeList({ reporter }); + const entryList = await fetchEntryList({ reporter }); + const videoList = await fetchVideoList({ reporter }); + const songList = await fetchSongList({ reporter }); + const artistList = await fetchArtistList({ reporter }); + const seriesList = await fetchSeriesList({ reporter }); + const resourceList = await fetchResourceList({ reporter }); + const imageList = await fetchImageList({ reporter }); for (const anime of animeList) { createNodeFromData({ @@ -126,75 +167,45 @@ exports.sourceNodes = async ({ actions, createNodeId, createContentDigest, repor year: anime.year, season: anime.season, synopsis: anime.synopsis, - synonyms: anime.synonyms.map((synonym) => synonym.text), series: anime.series.map((series) => createNodeId(`Series-${series.id}`)), themes: anime.themes.map((theme) => createNodeId(`Theme-${theme.id}`)), - resources: anime.resources.map((resource) => ({ - link: resource.link, - site: resource.site - })), - images: anime.images.map((image) => ({ - facet: image.facet, - link: image.link - })) + resources: anime.resources.map((resource) => createNodeId(`Resource-${resource.id}`)), + images: anime.images.map((image) => createNodeId(`Image-${image.id}`)) }, "Anime", helpers); - - for (const theme of anime.themes) { - const song = theme.song; - - createNodeFromData({ - id: theme.id, - slug: theme.slug, - group: theme.group, - song: createNodeId(`Song-${song.id}`), - anime: createNodeId(`Anime-${anime.id}`), - entries: theme.entries.map((entry) => createNodeId(`Entry-${entry.id}`)) - }, "Theme", helpers); - - createNodeFromData({ - id: song.id, - title: song.title, - theme: createNodeId(`Theme-${theme.id}`), - performances: song.artists.map((artist) => createNodeId(`Performance-${song.id}-${artist.id}`)) - }, "Song", helpers); - - for (const artist of song.artists) { - createNodeFromData({ - id: `${song.id}-${artist.id}`, - song: createNodeId(`Song-${song.id}`), - artist: createNodeId(`Artist-${artist.id}`), - as: artist.as - }, "Performance", helpers); - } - - for (const entry of theme.entries) { - createNodeFromData({ - id: entry.id, - version: entry.version || 1, - episodes: entry.episodes, - nsfw: entry.nsfw, - spoiler: entry.spoiler, - theme: createNodeId(`Theme-${theme.id}`), - videos: entry.videos.map((video) => createNodeId(`Video-${video.id}`)) - }, "Entry", helpers); - - for (const video of entry.videos) { - // To account for n-to-n relations, we need to aggregate the videos - let videoAggregation = videoAggregations.get(video.id); - if (!videoAggregation) { - videoAggregation = { - ...video, - entries: [] - }; - videoAggregations.set(videoAggregation.id, videoAggregation); - } - videoAggregation.entries.push(entry); - } - } - } } - for (const video of videoAggregations.values()) { + for (const synonym of synonymList) { + createNodeFromData({ + id: synonym.id, + text: synonym.text, + anime: createNodeId(`Anime-${synonym.anime.id}`) + }, "Synonym", helpers); + } + + for (const theme of themeList) { + createNodeFromData({ + id: theme.id, + slug: theme.slug, + group: theme.group, + song: createNodeId(`Song-${theme.song.id}`), + anime: createNodeId(`Anime-${theme.anime.id}`), + entries: theme.entries.map((entry) => createNodeId(`Entry-${entry.id}`)) + }, "Theme", helpers); + } + + for (const entry of entryList) { + createNodeFromData({ + id: entry.id, + version: entry.version || 1, + episodes: entry.episodes, + nsfw: entry.nsfw, + spoiler: entry.spoiler, + theme: createNodeId(`Theme-${entry.theme.id}`), + videos: entry.videos.map((video) => createNodeId(`Video-${video.id}`)) + }, "Entry", helpers); + } + + for (const video of videoList) { createNodeFromData({ id: video.id, filename: video.filename, @@ -212,7 +223,23 @@ exports.sourceNodes = async ({ actions, createNodeId, createContentDigest, repor }, "Video", helpers); } - const artistList = await fetchArtistList({ reporter }); + for (const song of songList) { + createNodeFromData({ + id: song.id, + title: song.title, + themes: song.themes.map((theme) => createNodeId(`Theme-${theme.id}`)), + performances: song.artists.map((artist) => createNodeId(`Performance-${song.id}-${artist.id}`)) + }, "Song", helpers); + + for (const artist of song.artists) { + createNodeFromData({ + id: `${song.id}-${artist.id}`, + song: createNodeId(`Song-${song.id}`), + artist: createNodeId(`Artist-${artist.id}`), + as: artist.as + }, "Performance", helpers); + } + } for (const artist of artistList) { createNodeFromData({ @@ -220,19 +247,11 @@ exports.sourceNodes = async ({ actions, createNodeId, createContentDigest, repor slug: artist.slug, name: artist.name, performances: artist.songs.map((song) => createNodeId(`Performance-${song.id}-${artist.id}`)), - resources: artist.resources.map((resource) => ({ - link: resource.link, - site: resource.site - })), - images: artist.images.map((image) => ({ - facet: image.facet, - link: image.link - })) + resources: artist.resources.map((resource) => createNodeId(`Resource-${resource.id}`)), + images: artist.images.map((image) => createNodeId(`Image-${image.id}`)) }, "Artist", helpers); } - const seriesList = await fetchSeriesList({ reporter }); - for (const series of seriesList) { createNodeFromData({ id: series.id, @@ -242,6 +261,26 @@ exports.sourceNodes = async ({ actions, createNodeId, createContentDigest, repor }, "Series", helpers); } + for (const resource of resourceList) { + createNodeFromData({ + id: resource.id, + link: resource.link, + site: resource.site, + anime: resource.anime.map((anime) => createNodeId(`Anime-${anime.id}`)), + artists: resource.artists.map((artist) => createNodeId(`Artist-${artist.id}`)) + }, "Resource", helpers); + } + + for (const image of imageList) { + createNodeFromData({ + id: image.id, + facet: image.facet, + link: image.link, + anime: image.anime.map((anime) => createNodeId(`Anime-${anime.id}`)), + artists: image.artists.map((artist) => createNodeId(`Artist-${artist.id}`)) + }, "Image", helpers); + } + const announcements = await fetchAnnouncements(); for (const announcement of announcements) { @@ -250,6 +289,8 @@ exports.sourceNodes = async ({ actions, createNodeId, createContentDigest, repor content: announcement.content }, "Announcement", helpers); } + + // await cache.set("last-fetched", now); }; exports.createResolvers = ({ createResolvers }) => { @@ -259,6 +300,28 @@ exports.createResolvers = ({ createResolvers }) => { resolve(source, args, context) { return context.nodeModel.getNodesByIds({ ids: source.series, type: "Series" }); } + }, + images: { + resolve(source, args, context) { + return context.nodeModel.getAllNodes({ type: "Image" }).filter((node) => node.anime.includes(source.id)); + } + }, + resources: { + resolve(source, args, context) { + return context.nodeModel.getAllNodes({ type: "Resource" }).filter((node) => node.anime.includes(source.id)); + } + } + }, + Artist: { + images: { + resolve(source, args, context) { + return context.nodeModel.getAllNodes({ type: "Resource" }).filter((node) => node.artists.includes(source.id)); + } + }, + resources: { + resolve(source, args, context) { + return context.nodeModel.getAllNodes({ type: "Resource" }).filter((node) => node.artists.includes(source.id)); + } } }, Series: { @@ -302,3 +365,7 @@ function createNodeFromData(item, nodeType, helpers) { return node; } + +// function isPluginNode(node) { +// return node.internal.owner === "gatsby-source-animethemes"; +// } diff --git a/plugins/gatsby-source-animethemes/src/anime.js b/plugins/gatsby-source-animethemes/src/anime.js index 0fd997c..02fb7d6 100644 --- a/plugins/gatsby-source-animethemes/src/anime.js +++ b/plugins/gatsby-source-animethemes/src/anime.js @@ -1,34 +1,25 @@ -const { baseUrl, fetchJson, createFieldParams } = require("./index"); +const { baseUrl, fetchJsonPaginated, createFieldParams } = require("./index"); const fields = createFieldParams({ anime: [ "id", "name", "slug", "year", "season", "synopsis" ], - synonym: [ "text" ], - image: [ "facet", "link" ], - theme: [ "id", "slug", "group" ], - song: [ "id", "title" ], - artist: [ "id", "slug", "name", "as" ], - entry: [ "id", "version", "episodes", "nsfw", "spoiler" ], - video: [ "id", "filename", "basename", "link", "resolution", "nc", "subbed", "lyrics", "uncen", "source", "overlap", "tags" ], - series: [ "id", "name", "slug" ], - resource: [ "link", "site" ] + image: [ "id" ], + theme: [ "id" ], + series: [ "id" ], + resource: [ "id" ] }); -async function fetchAnimeList({ reporter }) { +async function fetchAnimeList({ reporter, lastFetched }) { const activity = reporter.activityTimer("Fetching anime list"); activity.start(); - const animeList = []; - - let nextUrl = `${baseUrl}/api/anime?page[size]=100&sort=year,season,name&${fields}`; - while (nextUrl) { - const page = await fetchJson(nextUrl); - - animeList.push(...page.anime); - - nextUrl = page.links.next; - - activity.setStatus(`${animeList.length} anime fetched`); - } + const animeList = await fetchJsonPaginated( + `${baseUrl}/api/anime?page[size]=100&sort=year,season,name&${fields}&include=images,themes,series,externalResources&filter[updated_at][gte]=${lastFetched}`, + { + reducer: (page) => page.anime, + flatten: true, + onProgress: (results) => activity.setStatus(`${results.length} anime fetched`) + } + ); activity.end(); diff --git a/plugins/gatsby-source-animethemes/src/artist.js b/plugins/gatsby-source-animethemes/src/artist.js index a82b3f6..aefad6a 100644 --- a/plugins/gatsby-source-animethemes/src/artist.js +++ b/plugins/gatsby-source-animethemes/src/artist.js @@ -1,28 +1,24 @@ -const { baseUrl, fetchJson, createFieldParams } = require("./index"); +const { baseUrl, fetchJsonPaginated, createFieldParams } = require("./index"); const fields = createFieldParams({ artist: [ "id", "slug", "name" ], song: [ "id" ], - resource: [ "link", "site" ], - image: [ "facet", "link" ] + resource: [ "id" ], + image: [ "id" ] }); -async function fetchArtistList({ reporter }) { +async function fetchArtistList({ reporter, lastFetched }) { const activity = reporter.activityTimer("Fetching artist list"); activity.start(); - const artistList = []; - - let nextUrl = `${baseUrl}/api/artist?page[size]=100&sort=name&${fields}`; - while (nextUrl) { - const page = await fetchJson(nextUrl); - - artistList.push(...page.artists); - - nextUrl = page.links.next; - - activity.setStatus(`${artistList.length} artists fetched`); - } + const artistList = await fetchJsonPaginated( + `${baseUrl}/api/artist?page[size]=100&sort=name&${fields}&include=songs,externalResources,images&filter[updated_at][gte]=${lastFetched}`, + { + reducer: (page) => page.artists, + flatten: true, + onProgress: (results) => activity.setStatus(`${results.length} artists fetched`) + } + ); activity.end(); diff --git a/plugins/gatsby-source-animethemes/src/entry.js b/plugins/gatsby-source-animethemes/src/entry.js new file mode 100644 index 0000000..666fe7e --- /dev/null +++ b/plugins/gatsby-source-animethemes/src/entry.js @@ -0,0 +1,29 @@ +const { baseUrl, fetchJsonPaginated, createFieldParams } = require("./index"); + +const fields = createFieldParams({ + entry: [ "id", "version", "episodes", "nsfw", "spoiler" ], + theme: [ "id" ], + video: [ "id" ] +}); + +async function fetchEntryList({ reporter, lastFetched }) { + const activity = reporter.activityTimer("Fetching entry list"); + activity.start(); + + const entryList = await fetchJsonPaginated( + `${baseUrl}/api/entry?page[size]=100&${fields}&include=theme,videos&filter[updated_at][gte]=${lastFetched}`, + { + reducer: (page) => page.entries, + flatten: true, + onProgress: (results) => activity.setStatus(`${results.length} entries fetched`) + } + ); + + activity.end(); + + return entryList; +} + +module.exports = { + fetchEntryList +}; diff --git a/plugins/gatsby-source-animethemes/src/image.js b/plugins/gatsby-source-animethemes/src/image.js new file mode 100644 index 0000000..f52357d --- /dev/null +++ b/plugins/gatsby-source-animethemes/src/image.js @@ -0,0 +1,29 @@ +const { baseUrl, fetchJsonPaginated, createFieldParams } = require("./index"); + +const fields = createFieldParams({ + image: [ "id", "facet", "link" ], + anime: [ "id" ], + artist: [ "id" ] +}); + +async function fetchImageList({ reporter, lastFetched }) { + const activity = reporter.activityTimer("Fetching image list"); + activity.start(); + + const imageList = await fetchJsonPaginated( + `${baseUrl}/api/image?page[size]=100&${fields}&include=anime,artists&filter[updated_at][gte]=${lastFetched}`, + { + reducer: (page) => page.images, + flatten: true, + onProgress: (results) => activity.setStatus(`${results.length} images fetched`) + } + ); + + activity.end(); + + return imageList; +} + +module.exports = { + fetchImageList +}; diff --git a/plugins/gatsby-source-animethemes/src/index.js b/plugins/gatsby-source-animethemes/src/index.js index 2f05f35..cdb9e90 100644 --- a/plugins/gatsby-source-animethemes/src/index.js +++ b/plugins/gatsby-source-animethemes/src/index.js @@ -21,6 +21,32 @@ async function fetchJson(url, init) { return await response.json(); } +async function fetchJsonPaginated(url, { reducer = (page) => page, flatten, onProgress, ...init }) { + const results = []; + let nextUrl = url; + + console.log(`URL schema: ${nextUrl}`); + + while (nextUrl) { + const page = await fetchJson(nextUrl, init); + const pageResults = reducer(page); + + if (flatten) { + results.push(...pageResults); + } else { + results.push(pageResults); + } + + if (onProgress) { + onProgress(results); + } + + nextUrl = page.links.next; + } + + return results; +} + function createFieldParams(fields) { return Object.entries(fields) .map(([ key, values ]) => `fields[${key}]=${values.join()}`) @@ -34,5 +60,6 @@ function sleep(millis) { module.exports = { baseUrl, fetchJson, + fetchJsonPaginated, createFieldParams }; diff --git a/plugins/gatsby-source-animethemes/src/resource.js b/plugins/gatsby-source-animethemes/src/resource.js new file mode 100644 index 0000000..910e1ee --- /dev/null +++ b/plugins/gatsby-source-animethemes/src/resource.js @@ -0,0 +1,29 @@ +const { baseUrl, fetchJsonPaginated, createFieldParams } = require("./index"); + +const fields = createFieldParams({ + resource: [ "id", "link", "site" ], + anime: [ "id" ], + artist: [ "id" ] +}); + +async function fetchResourceList({ reporter, lastFetched }) { + const activity = reporter.activityTimer("Fetching resource list"); + activity.start(); + + const resourceList = await fetchJsonPaginated( + `${baseUrl}/api/resource?page[size]=100&${fields}&include=anime,artists&filter[updated_at][gte]=${lastFetched}`, + { + reducer: (page) => page.resources, + flatten: true, + onProgress: (results) => activity.setStatus(`${results.length} resources fetched`) + } + ); + + activity.end(); + + return resourceList; +} + +module.exports = { + fetchResourceList +}; diff --git a/plugins/gatsby-source-animethemes/src/series.js b/plugins/gatsby-source-animethemes/src/series.js index ae1d00d..03f2167 100644 --- a/plugins/gatsby-source-animethemes/src/series.js +++ b/plugins/gatsby-source-animethemes/src/series.js @@ -1,26 +1,22 @@ -const { baseUrl, fetchJson, createFieldParams } = require("./index"); +const { baseUrl, fetchJsonPaginated, createFieldParams } = require("./index"); const fields = createFieldParams({ series: [ "id", "slug", "name" ], - anime: [ "id" ] + anime: [ "id" ] }); -async function fetchSeriesList({ reporter }) { +async function fetchSeriesList({ reporter, lastFetched }) { const activity = reporter.activityTimer("Fetching series list"); activity.start(); - const seriesList = []; - - let nextUrl = `${baseUrl}/api/series?page[size]=100&sort=name&${fields}&include=anime`; - while (nextUrl) { - const page = await fetchJson(nextUrl); - - seriesList.push(...page.series); - - nextUrl = page.links.next; - - activity.setStatus(`${seriesList.length} series fetched`); - } + const seriesList = await fetchJsonPaginated( + `${baseUrl}/api/series?page[size]=100&sort=name&${fields}&include=anime&filter[updated_at][gte]=${lastFetched}`, + { + reducer: (page) => page.series, + flatten: true, + onProgress: (results) => activity.setStatus(`${results.length} series fetched`) + } + ); activity.end(); diff --git a/plugins/gatsby-source-animethemes/src/song.js b/plugins/gatsby-source-animethemes/src/song.js new file mode 100644 index 0000000..b86eda8 --- /dev/null +++ b/plugins/gatsby-source-animethemes/src/song.js @@ -0,0 +1,29 @@ +const { baseUrl, fetchJsonPaginated, createFieldParams } = require("./index"); + +const fields = createFieldParams({ + song: [ "id", "title" ], + theme: [ "id" ], + artist: [ "id", "as" ] +}); + +async function fetchSongList({ reporter, lastFetched }) { + const activity = reporter.activityTimer("Fetching song list"); + activity.start(); + + const songList = await fetchJsonPaginated( + `${baseUrl}/api/song?page[size]=100&${fields}&include=themes,artists&filter[updated_at][gte]=${lastFetched}`, + { + reducer: (page) => page.songs, + flatten: true, + onProgress: (results) => activity.setStatus(`${results.length} songs fetched`) + } + ); + + activity.end(); + + return songList; +} + +module.exports = { + fetchSongList +}; diff --git a/plugins/gatsby-source-animethemes/src/synonym.js b/plugins/gatsby-source-animethemes/src/synonym.js new file mode 100644 index 0000000..c1da088 --- /dev/null +++ b/plugins/gatsby-source-animethemes/src/synonym.js @@ -0,0 +1,28 @@ +const { baseUrl, fetchJsonPaginated, createFieldParams } = require("./index"); + +const fields = createFieldParams({ + synonym: [ "id", "text" ], + anime: [ "id" ] +}); + +async function fetchSynonymList({ reporter, lastFetched }) { + const activity = reporter.activityTimer("Fetching synonym list"); + activity.start(); + + const synonymList = await fetchJsonPaginated( + `${baseUrl}/api/synonym?page[size]=100&${fields}&include=anime&filter[updated_at][gte]=${lastFetched}`, + { + reducer: (page) => page.synonyms, + flatten: true, + onProgress: (results) => activity.setStatus(`${results.length} synonyms fetched`) + } + ); + + activity.end(); + + return synonymList; +} + +module.exports = { + fetchSynonymList +}; diff --git a/plugins/gatsby-source-animethemes/src/theme.js b/plugins/gatsby-source-animethemes/src/theme.js new file mode 100644 index 0000000..8e25de3 --- /dev/null +++ b/plugins/gatsby-source-animethemes/src/theme.js @@ -0,0 +1,30 @@ +const { baseUrl, fetchJsonPaginated, createFieldParams } = require("./index"); + +const fields = createFieldParams({ + theme: [ "id", "slug", "group" ], + anime: [ "id" ], + song: [ "id" ], + entry: [ "id" ] +}); + +async function fetchThemeList({ reporter, lastFetched }) { + const activity = reporter.activityTimer("Fetching theme list"); + activity.start(); + + const themeList = await fetchJsonPaginated( + `${baseUrl}/api/theme?page[size]=100&${fields}&include=anime,song,entries&filter[updated_at][gte]=${lastFetched}`, + { + reducer: (page) => page.themes, + flatten: true, + onProgress: (results) => activity.setStatus(`${results.length} themes fetched`) + } + ); + + activity.end(); + + return themeList; +} + +module.exports = { + fetchThemeList +}; diff --git a/plugins/gatsby-source-animethemes/src/video.js b/plugins/gatsby-source-animethemes/src/video.js new file mode 100644 index 0000000..777aa07 --- /dev/null +++ b/plugins/gatsby-source-animethemes/src/video.js @@ -0,0 +1,28 @@ +const { baseUrl, fetchJsonPaginated, createFieldParams } = require("./index"); + +const fields = createFieldParams({ + video: [ "id", "filename", "basename", "link", "resolution", "nc", "subbed", "lyrics", "uncen", "source", "overlap", "tags" ], + entry: [ "id" ] +}); + +async function fetchVideoList({ reporter, lastFetched }) { + const activity = reporter.activityTimer("Fetching video list"); + activity.start(); + + const videoList = await fetchJsonPaginated( + `${baseUrl}/api/video?page[size]=100&${fields}&include=entries&filter[updated_at][gte]=${lastFetched}`, + { + reducer: (page) => page.videos, + flatten: true, + onProgress: (results) => activity.setStatus(`${results.length} videos fetched`) + } + ); + + activity.end(); + + return videoList; +} + +module.exports = { + fetchVideoList +}; diff --git a/schema.graphql b/schema.graphql new file mode 100644 index 0000000..9a63caa --- /dev/null +++ b/schema.graphql @@ -0,0 +1,7906 @@ +# Add date formatting options. +directive @dateformat(formatString: String, locale: String, fromNow: Boolean, difference: String) on FIELD_DEFINITION + +# Link to node by foreign-key relation. +directive @link(by: String! = "id", from: String, on: String) on FIELD_DEFINITION + +# Link to File node by relative path. +directive @fileByRelativePath(from: String) on FIELD_DEFINITION + +# Proxy resolver from another field. +directive @proxy(from: String!, fromNode: Boolean! = false) on FIELD_DEFINITION + +# Infer field types from field values. +directive @infer on OBJECT + +# Do not infer field types from field values. +directive @dontInfer on OBJECT + +# Define the mime-types handled by this type. +directive @mimeTypes( + # The mime-types handled by this type. + types: [String!]! = [] +) on OBJECT + +# Define parent-child relations between types. This is used to add `child*` and `children*` convenience fields like `childImageSharp`. +directive @childOf( + # A list of mime-types this type is a child of. Usually these are the mime-types handled by a transformer plugin. + mimeTypes: [String!]! = [] + + # A list of types this type is a child of. Usually these are the types handled by a transformer plugin. + types: [String!]! = [] +) on OBJECT + +# DEPRECATED: Use interface inheritance instead, i.e. "interface Foo implements Node". +# +# Adds root query fields for an interface. All implementing types must also implement the Node interface. +directive @nodeInterface on INTERFACE + +type File implements Node { + sourceInstanceName: String! + absolutePath: String! + relativePath: String! + extension: String! + size: Int! + prettySize: String! + modifiedTime( + # Format the date using Moment.js' date tokens, e.g. `date(formatString: "YYYY MMMM DD")`. See https://momentjs.com/docs/#/displaying/format/ for documentation for different tokens. + formatString: String + + # Returns a string generated with Moment.js' `fromNow` function + fromNow: Boolean + + # Returns the difference between this date and the current time. Defaults to "milliseconds" but you can also pass in as the measurement "years", "months", "weeks", "days", "hours", "minutes", and "seconds". + difference: String + + # Configures the locale Moment.js will use to format the date. + locale: String + ): Date! + accessTime( + # Format the date using Moment.js' date tokens, e.g. `date(formatString: "YYYY MMMM DD")`. See https://momentjs.com/docs/#/displaying/format/ for documentation for different tokens. + formatString: String + + # Returns a string generated with Moment.js' `fromNow` function + fromNow: Boolean + + # Returns the difference between this date and the current time. Defaults to "milliseconds" but you can also pass in as the measurement "years", "months", "weeks", "days", "hours", "minutes", and "seconds". + difference: String + + # Configures the locale Moment.js will use to format the date. + locale: String + ): Date! + changeTime( + # Format the date using Moment.js' date tokens, e.g. `date(formatString: "YYYY MMMM DD")`. See https://momentjs.com/docs/#/displaying/format/ for documentation for different tokens. + formatString: String + + # Returns a string generated with Moment.js' `fromNow` function + fromNow: Boolean + + # Returns the difference between this date and the current time. Defaults to "milliseconds" but you can also pass in as the measurement "years", "months", "weeks", "days", "hours", "minutes", and "seconds". + difference: String + + # Configures the locale Moment.js will use to format the date. + locale: String + ): Date! + birthTime( + # Format the date using Moment.js' date tokens, e.g. `date(formatString: "YYYY MMMM DD")`. See https://momentjs.com/docs/#/displaying/format/ for documentation for different tokens. + formatString: String + + # Returns a string generated with Moment.js' `fromNow` function + fromNow: Boolean + + # Returns the difference between this date and the current time. Defaults to "milliseconds" but you can also pass in as the measurement "years", "months", "weeks", "days", "hours", "minutes", and "seconds". + difference: String + + # Configures the locale Moment.js will use to format the date. + locale: String + ): Date! + root: String! + dir: String! + base: String! + ext: String! + name: String! + relativeDirectory: String! + dev: Int! + mode: Int! + nlink: Int! + uid: Int! + gid: Int! + rdev: Int! + ino: Float! + atimeMs: Float! + mtimeMs: Float! + ctimeMs: Float! + atime( + # Format the date using Moment.js' date tokens, e.g. `date(formatString: "YYYY MMMM DD")`. See https://momentjs.com/docs/#/displaying/format/ for documentation for different tokens. + formatString: String + + # Returns a string generated with Moment.js' `fromNow` function + fromNow: Boolean + + # Returns the difference between this date and the current time. Defaults to "milliseconds" but you can also pass in as the measurement "years", "months", "weeks", "days", "hours", "minutes", and "seconds". + difference: String + + # Configures the locale Moment.js will use to format the date. + locale: String + ): Date! + mtime( + # Format the date using Moment.js' date tokens, e.g. `date(formatString: "YYYY MMMM DD")`. See https://momentjs.com/docs/#/displaying/format/ for documentation for different tokens. + formatString: String + + # Returns a string generated with Moment.js' `fromNow` function + fromNow: Boolean + + # Returns the difference between this date and the current time. Defaults to "milliseconds" but you can also pass in as the measurement "years", "months", "weeks", "days", "hours", "minutes", and "seconds". + difference: String + + # Configures the locale Moment.js will use to format the date. + locale: String + ): Date! + ctime( + # Format the date using Moment.js' date tokens, e.g. `date(formatString: "YYYY MMMM DD")`. See https://momentjs.com/docs/#/displaying/format/ for documentation for different tokens. + formatString: String + + # Returns a string generated with Moment.js' `fromNow` function + fromNow: Boolean + + # Returns the difference between this date and the current time. Defaults to "milliseconds" but you can also pass in as the measurement "years", "months", "weeks", "days", "hours", "minutes", and "seconds". + difference: String + + # Configures the locale Moment.js will use to format the date. + locale: String + ): Date! + birthtime: Date @deprecated(reason: "Use `birthTime` instead") + birthtimeMs: Float @deprecated(reason: "Use `birthTime` instead") + id: ID! + parent: Node + children: [Node!]! + internal: Internal! +} + +# Node Interface +interface Node { + id: ID! + parent: Node + children: [Node!]! + internal: Internal! +} + +type Internal { + content: String + contentDigest: String! + description: String + fieldOwners: [String] + ignoreType: Boolean + mediaType: String + owner: String! + type: String! +} + +# A date string, such as 2007-12-03, compliant with the ISO 8601 standard for representation of dates and times using the Gregorian calendar. +scalar Date + +type Directory implements Node { + sourceInstanceName: String! + absolutePath: String! + relativePath: String! + extension: String! + size: Int! + prettySize: String! + modifiedTime( + # Format the date using Moment.js' date tokens, e.g. `date(formatString: "YYYY MMMM DD")`. See https://momentjs.com/docs/#/displaying/format/ for documentation for different tokens. + formatString: String + + # Returns a string generated with Moment.js' `fromNow` function + fromNow: Boolean + + # Returns the difference between this date and the current time. Defaults to "milliseconds" but you can also pass in as the measurement "years", "months", "weeks", "days", "hours", "minutes", and "seconds". + difference: String + + # Configures the locale Moment.js will use to format the date. + locale: String + ): Date! + accessTime( + # Format the date using Moment.js' date tokens, e.g. `date(formatString: "YYYY MMMM DD")`. See https://momentjs.com/docs/#/displaying/format/ for documentation for different tokens. + formatString: String + + # Returns a string generated with Moment.js' `fromNow` function + fromNow: Boolean + + # Returns the difference between this date and the current time. Defaults to "milliseconds" but you can also pass in as the measurement "years", "months", "weeks", "days", "hours", "minutes", and "seconds". + difference: String + + # Configures the locale Moment.js will use to format the date. + locale: String + ): Date! + changeTime( + # Format the date using Moment.js' date tokens, e.g. `date(formatString: "YYYY MMMM DD")`. See https://momentjs.com/docs/#/displaying/format/ for documentation for different tokens. + formatString: String + + # Returns a string generated with Moment.js' `fromNow` function + fromNow: Boolean + + # Returns the difference between this date and the current time. Defaults to "milliseconds" but you can also pass in as the measurement "years", "months", "weeks", "days", "hours", "minutes", and "seconds". + difference: String + + # Configures the locale Moment.js will use to format the date. + locale: String + ): Date! + birthTime( + # Format the date using Moment.js' date tokens, e.g. `date(formatString: "YYYY MMMM DD")`. See https://momentjs.com/docs/#/displaying/format/ for documentation for different tokens. + formatString: String + + # Returns a string generated with Moment.js' `fromNow` function + fromNow: Boolean + + # Returns the difference between this date and the current time. Defaults to "milliseconds" but you can also pass in as the measurement "years", "months", "weeks", "days", "hours", "minutes", and "seconds". + difference: String + + # Configures the locale Moment.js will use to format the date. + locale: String + ): Date! + root: String! + dir: String! + base: String! + ext: String! + name: String! + relativeDirectory: String! + dev: Int! + mode: Int! + nlink: Int! + uid: Int! + gid: Int! + rdev: Int! + ino: Float! + atimeMs: Float! + mtimeMs: Float! + ctimeMs: Float! + atime( + # Format the date using Moment.js' date tokens, e.g. `date(formatString: "YYYY MMMM DD")`. See https://momentjs.com/docs/#/displaying/format/ for documentation for different tokens. + formatString: String + + # Returns a string generated with Moment.js' `fromNow` function + fromNow: Boolean + + # Returns the difference between this date and the current time. Defaults to "milliseconds" but you can also pass in as the measurement "years", "months", "weeks", "days", "hours", "minutes", and "seconds". + difference: String + + # Configures the locale Moment.js will use to format the date. + locale: String + ): Date! + mtime( + # Format the date using Moment.js' date tokens, e.g. `date(formatString: "YYYY MMMM DD")`. See https://momentjs.com/docs/#/displaying/format/ for documentation for different tokens. + formatString: String + + # Returns a string generated with Moment.js' `fromNow` function + fromNow: Boolean + + # Returns the difference between this date and the current time. Defaults to "milliseconds" but you can also pass in as the measurement "years", "months", "weeks", "days", "hours", "minutes", and "seconds". + difference: String + + # Configures the locale Moment.js will use to format the date. + locale: String + ): Date! + ctime( + # Format the date using Moment.js' date tokens, e.g. `date(formatString: "YYYY MMMM DD")`. See https://momentjs.com/docs/#/displaying/format/ for documentation for different tokens. + formatString: String + + # Returns a string generated with Moment.js' `fromNow` function + fromNow: Boolean + + # Returns the difference between this date and the current time. Defaults to "milliseconds" but you can also pass in as the measurement "years", "months", "weeks", "days", "hours", "minutes", and "seconds". + difference: String + + # Configures the locale Moment.js will use to format the date. + locale: String + ): Date! + birthtime: Date @deprecated(reason: "Use `birthTime` instead") + birthtimeMs: Float @deprecated(reason: "Use `birthTime` instead") + id: ID! + parent: Node + children: [Node!]! + internal: Internal! +} + +type Site implements Node { + buildTime( + # Format the date using Moment.js' date tokens, e.g. `date(formatString: "YYYY MMMM DD")`. See https://momentjs.com/docs/#/displaying/format/ for documentation for different tokens. + formatString: String + + # Returns a string generated with Moment.js' `fromNow` function + fromNow: Boolean + + # Returns the difference between this date and the current time. Defaults to "milliseconds" but you can also pass in as the measurement "years", "months", "weeks", "days", "hours", "minutes", and "seconds". + difference: String + + # Configures the locale Moment.js will use to format the date. + locale: String + ): Date + siteMetadata: SiteSiteMetadata + port: Int + host: String + pathPrefix: String + polyfill: Boolean + id: ID! + parent: Node + children: [Node!]! + internal: Internal! +} + +type SiteSiteMetadata { + title: String + description: String + lang: String + siteName: String + titleTemplate: String + siteUrl: String +} + +type SitePage implements Node { + path: String! + component: String! + internalComponentName: String! + componentChunkName: String! + matchPath: String + id: ID! + parent: Node + children: [Node!]! + internal: Internal! + isCreatedByStatefulCreatePages: Boolean + context: SitePageContext + pluginCreator: SitePlugin + pluginCreatorId: String + componentPath: String +} + +type SitePageContext { + slug: String + id: String + entryId: String + year: Int + seasonList: [String] + season: String +} + +interface Entity { + idRaw: Int +} + +type Anime implements Node & Entity { + name: String! + slug: String! + year: Int! + season: String + synopsis: String + synonyms: [Synonym] + themes: [Theme] + series: [Series] + resources: [Resource] + images: [Image] + idRaw: Int + id: ID! + parent: Node + children: [Node!]! + internal: Internal! +} + +type Synonym implements Node & Entity { + text: String! + anime: Anime! + idRaw: Int + id: ID! + parent: Node + children: [Node!]! + internal: Internal! +} + +type Theme implements Node & Entity { + slug: String! + group: String + song: Song! + anime: Anime! + entries: [Entry] + idRaw: Int + id: ID! + parent: Node + children: [Node!]! + internal: Internal! +} + +type Entry implements Node & Entity { + version: Int + episodes: String + nsfw: Boolean! + spoiler: Boolean! + theme: Theme! + videos: [Video] + idRaw: Int + id: ID! + parent: Node + children: [Node!]! + internal: Internal! +} + +type Video implements Node & Entity { + filename: String! + basename: String! + link: String + resolution: Int + nc: Boolean! + subbed: Boolean! + lyrics: Boolean! + uncen: Boolean! + source: String + overlap: String + tags: String + entries: [Entry] + idRaw: Int + id: ID! + parent: Node + children: [Node!]! + internal: Internal! +} + +type Song implements Node & Entity { + title: String! + themes: [Theme] + performances: [Performance] + idRaw: Int + id: ID! + parent: Node + children: [Node!]! + internal: Internal! +} + +type Performance implements Node { + song: Song! + artist: Artist! + as: String + id: ID! + parent: Node + children: [Node!]! + internal: Internal! +} + +type Artist implements Node & Entity { + slug: String! + name: String! + performances: [Performance] + resources: [Resource] + images: [Image] + idRaw: Int + id: ID! + parent: Node + children: [Node!]! + internal: Internal! +} + +type Series implements Node & Entity { + slug: String! + name: String! + anime: [Anime] + idRaw: Int + id: ID! + parent: Node + children: [Node!]! + internal: Internal! +} + +type Resource implements Node & Entity { + link: String! + site: String! + idRaw: Int + id: ID! + parent: Node + children: [Node!]! + internal: Internal! +} + +type Image implements Node & Entity { + facet: String! + link: String + idRaw: Int + id: ID! + parent: Node + children: [Node!]! + internal: Internal! +} + +type AnimeSeries implements Node { + anime: Anime! + series: Series! + id: ID! + parent: Node + children: [Node!]! + internal: Internal! +} + +type EntryVideo implements Node { + entry: Entry! + video: Video! + id: ID! + parent: Node + children: [Node!]! + internal: Internal! +} + +type AnimeResource implements Node { + anime: Anime! + resource: Resource! + id: ID! + parent: Node + children: [Node!]! + internal: Internal! +} + +type ArtistResource implements Node { + artist: Artist! + resource: Resource! + id: ID! + parent: Node + children: [Node!]! + internal: Internal! +} + +type AnimeImage implements Node { + anime: Anime! + image: Image! + id: ID! + parent: Node + children: [Node!]! + internal: Internal! +} + +type ArtistImage implements Node { + artist: Artist! + image: Image! + id: ID! + parent: Node + children: [Node!]! + internal: Internal! +} + +type Announcement implements Node & Entity { + content: String! + idRaw: Int + id: ID! + parent: Node + children: [Node!]! + internal: Internal! +} + +type SiteBuildMetadata implements Node { + id: ID! + parent: Node + children: [Node!]! + internal: Internal! + buildTime( + # Format the date using Moment.js' date tokens, e.g. `date(formatString: "YYYY MMMM DD")`. See https://momentjs.com/docs/#/displaying/format/ for documentation for different tokens. + formatString: String + + # Returns a string generated with Moment.js' `fromNow` function + fromNow: Boolean + + # Returns the difference between this date and the current time. Defaults to "milliseconds" but you can also pass in as the measurement "years", "months", "weeks", "days", "hours", "minutes", and "seconds". + difference: String + + # Configures the locale Moment.js will use to format the date. + locale: String + ): Date +} + +type SitePlugin implements Node { + id: ID! + parent: Node + children: [Node!]! + internal: Internal! + resolve: String + name: String + version: String + pluginOptions: SitePluginPluginOptions + nodeAPIs: [String] + browserAPIs: [String] + ssrAPIs: [String] + pluginFilepath: String + packageJson: SitePluginPackageJson +} + +type SitePluginPluginOptions { + displayName: Boolean + fileName: Boolean + minify: Boolean + namespace: String + transpileTemplateLiterals: Boolean + pure: Boolean + components: String + context: String + hooks: String + images: String + layout: String + pages: String + styles: String + templates: String + theme: String + utils: String + component: String + prefixes: [String] + icon: String + legacy: Boolean + theme_color_in_head: Boolean + cache_busting_mode: String + crossOrigin: String + include_favicon: Boolean + cacheDigest: String + path: String + pathCheck: Boolean + allExtensions: Boolean + isTSX: Boolean + jsxPragma: String +} + +type SitePluginPackageJson { + name: String + description: String + version: String + main: String + license: String + dependencies: [SitePluginPackageJsonDependencies] + devDependencies: [SitePluginPackageJsonDevDependencies] + peerDependencies: [SitePluginPackageJsonPeerDependencies] + keywords: [String] +} + +type SitePluginPackageJsonDependencies { + name: String + version: String +} + +type SitePluginPackageJsonDevDependencies { + name: String + version: String +} + +type SitePluginPackageJsonPeerDependencies { + name: String + version: String +} + +type Query { + file(sourceInstanceName: StringQueryOperatorInput, absolutePath: StringQueryOperatorInput, relativePath: StringQueryOperatorInput, extension: StringQueryOperatorInput, size: IntQueryOperatorInput, prettySize: StringQueryOperatorInput, modifiedTime: DateQueryOperatorInput, accessTime: DateQueryOperatorInput, changeTime: DateQueryOperatorInput, birthTime: DateQueryOperatorInput, root: StringQueryOperatorInput, dir: StringQueryOperatorInput, base: StringQueryOperatorInput, ext: StringQueryOperatorInput, name: StringQueryOperatorInput, relativeDirectory: StringQueryOperatorInput, dev: IntQueryOperatorInput, mode: IntQueryOperatorInput, nlink: IntQueryOperatorInput, uid: IntQueryOperatorInput, gid: IntQueryOperatorInput, rdev: IntQueryOperatorInput, ino: FloatQueryOperatorInput, atimeMs: FloatQueryOperatorInput, mtimeMs: FloatQueryOperatorInput, ctimeMs: FloatQueryOperatorInput, atime: DateQueryOperatorInput, mtime: DateQueryOperatorInput, ctime: DateQueryOperatorInput, birthtime: DateQueryOperatorInput, birthtimeMs: FloatQueryOperatorInput, id: StringQueryOperatorInput, parent: NodeFilterInput, children: NodeFilterListInput, internal: InternalFilterInput): File + allFile(filter: FileFilterInput, sort: FileSortInput, skip: Int, limit: Int): FileConnection! + directory(sourceInstanceName: StringQueryOperatorInput, absolutePath: StringQueryOperatorInput, relativePath: StringQueryOperatorInput, extension: StringQueryOperatorInput, size: IntQueryOperatorInput, prettySize: StringQueryOperatorInput, modifiedTime: DateQueryOperatorInput, accessTime: DateQueryOperatorInput, changeTime: DateQueryOperatorInput, birthTime: DateQueryOperatorInput, root: StringQueryOperatorInput, dir: StringQueryOperatorInput, base: StringQueryOperatorInput, ext: StringQueryOperatorInput, name: StringQueryOperatorInput, relativeDirectory: StringQueryOperatorInput, dev: IntQueryOperatorInput, mode: IntQueryOperatorInput, nlink: IntQueryOperatorInput, uid: IntQueryOperatorInput, gid: IntQueryOperatorInput, rdev: IntQueryOperatorInput, ino: FloatQueryOperatorInput, atimeMs: FloatQueryOperatorInput, mtimeMs: FloatQueryOperatorInput, ctimeMs: FloatQueryOperatorInput, atime: DateQueryOperatorInput, mtime: DateQueryOperatorInput, ctime: DateQueryOperatorInput, birthtime: DateQueryOperatorInput, birthtimeMs: FloatQueryOperatorInput, id: StringQueryOperatorInput, parent: NodeFilterInput, children: NodeFilterListInput, internal: InternalFilterInput): Directory + allDirectory(filter: DirectoryFilterInput, sort: DirectorySortInput, skip: Int, limit: Int): DirectoryConnection! + site(buildTime: DateQueryOperatorInput, siteMetadata: SiteSiteMetadataFilterInput, port: IntQueryOperatorInput, host: StringQueryOperatorInput, pathPrefix: StringQueryOperatorInput, polyfill: BooleanQueryOperatorInput, id: StringQueryOperatorInput, parent: NodeFilterInput, children: NodeFilterListInput, internal: InternalFilterInput): Site + allSite(filter: SiteFilterInput, sort: SiteSortInput, skip: Int, limit: Int): SiteConnection! + sitePage(path: StringQueryOperatorInput, component: StringQueryOperatorInput, internalComponentName: StringQueryOperatorInput, componentChunkName: StringQueryOperatorInput, matchPath: StringQueryOperatorInput, id: StringQueryOperatorInput, parent: NodeFilterInput, children: NodeFilterListInput, internal: InternalFilterInput, isCreatedByStatefulCreatePages: BooleanQueryOperatorInput, context: SitePageContextFilterInput, pluginCreator: SitePluginFilterInput, pluginCreatorId: StringQueryOperatorInput, componentPath: StringQueryOperatorInput): SitePage + allSitePage(filter: SitePageFilterInput, sort: SitePageSortInput, skip: Int, limit: Int): SitePageConnection! + anime(name: StringQueryOperatorInput, slug: StringQueryOperatorInput, year: IntQueryOperatorInput, season: StringQueryOperatorInput, synopsis: StringQueryOperatorInput, synonyms: SynonymFilterListInput, themes: ThemeFilterListInput, series: SeriesFilterListInput, resources: ResourceFilterListInput, images: ImageFilterListInput, idRaw: IntQueryOperatorInput, id: StringQueryOperatorInput, parent: NodeFilterInput, children: NodeFilterListInput, internal: InternalFilterInput): Anime + allAnime(filter: AnimeFilterInput, sort: AnimeSortInput, skip: Int, limit: Int): AnimeConnection! + synonym(text: StringQueryOperatorInput, anime: AnimeFilterInput, idRaw: IntQueryOperatorInput, id: StringQueryOperatorInput, parent: NodeFilterInput, children: NodeFilterListInput, internal: InternalFilterInput): Synonym + allSynonym(filter: SynonymFilterInput, sort: SynonymSortInput, skip: Int, limit: Int): SynonymConnection! + theme(slug: StringQueryOperatorInput, group: StringQueryOperatorInput, song: SongFilterInput, anime: AnimeFilterInput, entries: EntryFilterListInput, idRaw: IntQueryOperatorInput, id: StringQueryOperatorInput, parent: NodeFilterInput, children: NodeFilterListInput, internal: InternalFilterInput): Theme + allTheme(filter: ThemeFilterInput, sort: ThemeSortInput, skip: Int, limit: Int): ThemeConnection! + entry(version: IntQueryOperatorInput, episodes: StringQueryOperatorInput, nsfw: BooleanQueryOperatorInput, spoiler: BooleanQueryOperatorInput, theme: ThemeFilterInput, videos: VideoFilterListInput, idRaw: IntQueryOperatorInput, id: StringQueryOperatorInput, parent: NodeFilterInput, children: NodeFilterListInput, internal: InternalFilterInput): Entry + allEntry(filter: EntryFilterInput, sort: EntrySortInput, skip: Int, limit: Int): EntryConnection! + video(filename: StringQueryOperatorInput, basename: StringQueryOperatorInput, link: StringQueryOperatorInput, resolution: IntQueryOperatorInput, nc: BooleanQueryOperatorInput, subbed: BooleanQueryOperatorInput, lyrics: BooleanQueryOperatorInput, uncen: BooleanQueryOperatorInput, source: StringQueryOperatorInput, overlap: StringQueryOperatorInput, tags: StringQueryOperatorInput, entries: EntryFilterListInput, idRaw: IntQueryOperatorInput, id: StringQueryOperatorInput, parent: NodeFilterInput, children: NodeFilterListInput, internal: InternalFilterInput): Video + allVideo(filter: VideoFilterInput, sort: VideoSortInput, skip: Int, limit: Int): VideoConnection! + song(title: StringQueryOperatorInput, themes: ThemeFilterListInput, performances: PerformanceFilterListInput, idRaw: IntQueryOperatorInput, id: StringQueryOperatorInput, parent: NodeFilterInput, children: NodeFilterListInput, internal: InternalFilterInput): Song + allSong(filter: SongFilterInput, sort: SongSortInput, skip: Int, limit: Int): SongConnection! + performance(song: SongFilterInput, artist: ArtistFilterInput, as: StringQueryOperatorInput, id: StringQueryOperatorInput, parent: NodeFilterInput, children: NodeFilterListInput, internal: InternalFilterInput): Performance + allPerformance(filter: PerformanceFilterInput, sort: PerformanceSortInput, skip: Int, limit: Int): PerformanceConnection! + artist(slug: StringQueryOperatorInput, name: StringQueryOperatorInput, performances: PerformanceFilterListInput, resources: ResourceFilterListInput, images: ImageFilterListInput, idRaw: IntQueryOperatorInput, id: StringQueryOperatorInput, parent: NodeFilterInput, children: NodeFilterListInput, internal: InternalFilterInput): Artist + allArtist(filter: ArtistFilterInput, sort: ArtistSortInput, skip: Int, limit: Int): ArtistConnection! + series(slug: StringQueryOperatorInput, name: StringQueryOperatorInput, anime: AnimeFilterListInput, idRaw: IntQueryOperatorInput, id: StringQueryOperatorInput, parent: NodeFilterInput, children: NodeFilterListInput, internal: InternalFilterInput): Series + allSeries(filter: SeriesFilterInput, sort: SeriesSortInput, skip: Int, limit: Int): SeriesConnection! + resource(link: StringQueryOperatorInput, site: StringQueryOperatorInput, idRaw: IntQueryOperatorInput, id: StringQueryOperatorInput, parent: NodeFilterInput, children: NodeFilterListInput, internal: InternalFilterInput): Resource + allResource(filter: ResourceFilterInput, sort: ResourceSortInput, skip: Int, limit: Int): ResourceConnection! + image(facet: StringQueryOperatorInput, link: StringQueryOperatorInput, idRaw: IntQueryOperatorInput, id: StringQueryOperatorInput, parent: NodeFilterInput, children: NodeFilterListInput, internal: InternalFilterInput): Image + allImage(filter: ImageFilterInput, sort: ImageSortInput, skip: Int, limit: Int): ImageConnection! + animeSeries(anime: AnimeFilterInput, series: SeriesFilterInput, id: StringQueryOperatorInput, parent: NodeFilterInput, children: NodeFilterListInput, internal: InternalFilterInput): AnimeSeries + allAnimeSeries(filter: AnimeSeriesFilterInput, sort: AnimeSeriesSortInput, skip: Int, limit: Int): AnimeSeriesConnection! + entryVideo(entry: EntryFilterInput, video: VideoFilterInput, id: StringQueryOperatorInput, parent: NodeFilterInput, children: NodeFilterListInput, internal: InternalFilterInput): EntryVideo + allEntryVideo(filter: EntryVideoFilterInput, sort: EntryVideoSortInput, skip: Int, limit: Int): EntryVideoConnection! + animeResource(anime: AnimeFilterInput, resource: ResourceFilterInput, id: StringQueryOperatorInput, parent: NodeFilterInput, children: NodeFilterListInput, internal: InternalFilterInput): AnimeResource + allAnimeResource(filter: AnimeResourceFilterInput, sort: AnimeResourceSortInput, skip: Int, limit: Int): AnimeResourceConnection! + artistResource(artist: ArtistFilterInput, resource: ResourceFilterInput, id: StringQueryOperatorInput, parent: NodeFilterInput, children: NodeFilterListInput, internal: InternalFilterInput): ArtistResource + allArtistResource(filter: ArtistResourceFilterInput, sort: ArtistResourceSortInput, skip: Int, limit: Int): ArtistResourceConnection! + animeImage(anime: AnimeFilterInput, image: ImageFilterInput, id: StringQueryOperatorInput, parent: NodeFilterInput, children: NodeFilterListInput, internal: InternalFilterInput): AnimeImage + allAnimeImage(filter: AnimeImageFilterInput, sort: AnimeImageSortInput, skip: Int, limit: Int): AnimeImageConnection! + artistImage(artist: ArtistFilterInput, image: ImageFilterInput, id: StringQueryOperatorInput, parent: NodeFilterInput, children: NodeFilterListInput, internal: InternalFilterInput): ArtistImage + allArtistImage(filter: ArtistImageFilterInput, sort: ArtistImageSortInput, skip: Int, limit: Int): ArtistImageConnection! + announcement(content: StringQueryOperatorInput, idRaw: IntQueryOperatorInput, id: StringQueryOperatorInput, parent: NodeFilterInput, children: NodeFilterListInput, internal: InternalFilterInput): Announcement + allAnnouncement(filter: AnnouncementFilterInput, sort: AnnouncementSortInput, skip: Int, limit: Int): AnnouncementConnection! + siteBuildMetadata(id: StringQueryOperatorInput, parent: NodeFilterInput, children: NodeFilterListInput, internal: InternalFilterInput, buildTime: DateQueryOperatorInput): SiteBuildMetadata + allSiteBuildMetadata(filter: SiteBuildMetadataFilterInput, sort: SiteBuildMetadataSortInput, skip: Int, limit: Int): SiteBuildMetadataConnection! + sitePlugin(id: StringQueryOperatorInput, parent: NodeFilterInput, children: NodeFilterListInput, internal: InternalFilterInput, resolve: StringQueryOperatorInput, name: StringQueryOperatorInput, version: StringQueryOperatorInput, pluginOptions: SitePluginPluginOptionsFilterInput, nodeAPIs: StringQueryOperatorInput, browserAPIs: StringQueryOperatorInput, ssrAPIs: StringQueryOperatorInput, pluginFilepath: StringQueryOperatorInput, packageJson: SitePluginPackageJsonFilterInput): SitePlugin + allSitePlugin(filter: SitePluginFilterInput, sort: SitePluginSortInput, skip: Int, limit: Int): SitePluginConnection! +} + +input StringQueryOperatorInput { + eq: String + ne: String + in: [String] + nin: [String] + regex: String + glob: String +} + +input IntQueryOperatorInput { + eq: Int + ne: Int + gt: Int + gte: Int + lt: Int + lte: Int + in: [Int] + nin: [Int] +} + +input DateQueryOperatorInput { + eq: Date + ne: Date + gt: Date + gte: Date + lt: Date + lte: Date + in: [Date] + nin: [Date] +} + +input FloatQueryOperatorInput { + eq: Float + ne: Float + gt: Float + gte: Float + lt: Float + lte: Float + in: [Float] + nin: [Float] +} + +input NodeFilterInput { + id: StringQueryOperatorInput + parent: NodeFilterInput + children: NodeFilterListInput + internal: InternalFilterInput +} + +input NodeFilterListInput { + elemMatch: NodeFilterInput +} + +input InternalFilterInput { + content: StringQueryOperatorInput + contentDigest: StringQueryOperatorInput + description: StringQueryOperatorInput + fieldOwners: StringQueryOperatorInput + ignoreType: BooleanQueryOperatorInput + mediaType: StringQueryOperatorInput + owner: StringQueryOperatorInput + type: StringQueryOperatorInput +} + +input BooleanQueryOperatorInput { + eq: Boolean + ne: Boolean + in: [Boolean] + nin: [Boolean] +} + +type FileConnection { + totalCount: Int! + edges: [FileEdge!]! + nodes: [File!]! + pageInfo: PageInfo! + distinct(field: FileFieldsEnum!): [String!]! + group(skip: Int, limit: Int, field: FileFieldsEnum!): [FileGroupConnection!]! +} + +type FileEdge { + next: File + node: File! + previous: File +} + +type PageInfo { + currentPage: Int! + hasPreviousPage: Boolean! + hasNextPage: Boolean! + itemCount: Int! + pageCount: Int! + perPage: Int + totalCount: Int! +} + +enum FileFieldsEnum { + sourceInstanceName + absolutePath + relativePath + extension + size + prettySize + modifiedTime + accessTime + changeTime + birthTime + root + dir + base + ext + name + relativeDirectory + dev + mode + nlink + uid + gid + rdev + ino + atimeMs + mtimeMs + ctimeMs + atime + mtime + ctime + birthtime + birthtimeMs + id + parent___id + parent___parent___id + parent___parent___parent___id + parent___parent___parent___children + parent___parent___children + parent___parent___children___id + parent___parent___children___children + parent___parent___internal___content + parent___parent___internal___contentDigest + parent___parent___internal___description + parent___parent___internal___fieldOwners + parent___parent___internal___ignoreType + parent___parent___internal___mediaType + parent___parent___internal___owner + parent___parent___internal___type + parent___children + parent___children___id + parent___children___parent___id + parent___children___parent___children + parent___children___children + parent___children___children___id + parent___children___children___children + parent___children___internal___content + parent___children___internal___contentDigest + parent___children___internal___description + parent___children___internal___fieldOwners + parent___children___internal___ignoreType + parent___children___internal___mediaType + parent___children___internal___owner + parent___children___internal___type + parent___internal___content + parent___internal___contentDigest + parent___internal___description + parent___internal___fieldOwners + parent___internal___ignoreType + parent___internal___mediaType + parent___internal___owner + parent___internal___type + children + children___id + children___parent___id + children___parent___parent___id + children___parent___parent___children + children___parent___children + children___parent___children___id + children___parent___children___children + children___parent___internal___content + children___parent___internal___contentDigest + children___parent___internal___description + children___parent___internal___fieldOwners + children___parent___internal___ignoreType + children___parent___internal___mediaType + children___parent___internal___owner + children___parent___internal___type + children___children + children___children___id + children___children___parent___id + children___children___parent___children + children___children___children + children___children___children___id + children___children___children___children + children___children___internal___content + children___children___internal___contentDigest + children___children___internal___description + children___children___internal___fieldOwners + children___children___internal___ignoreType + children___children___internal___mediaType + children___children___internal___owner + children___children___internal___type + children___internal___content + children___internal___contentDigest + children___internal___description + children___internal___fieldOwners + children___internal___ignoreType + children___internal___mediaType + children___internal___owner + children___internal___type + internal___content + internal___contentDigest + internal___description + internal___fieldOwners + internal___ignoreType + internal___mediaType + internal___owner + internal___type +} + +type FileGroupConnection { + totalCount: Int! + edges: [FileEdge!]! + nodes: [File!]! + pageInfo: PageInfo! + field: String! + fieldValue: String +} + +input FileFilterInput { + sourceInstanceName: StringQueryOperatorInput + absolutePath: StringQueryOperatorInput + relativePath: StringQueryOperatorInput + extension: StringQueryOperatorInput + size: IntQueryOperatorInput + prettySize: StringQueryOperatorInput + modifiedTime: DateQueryOperatorInput + accessTime: DateQueryOperatorInput + changeTime: DateQueryOperatorInput + birthTime: DateQueryOperatorInput + root: StringQueryOperatorInput + dir: StringQueryOperatorInput + base: StringQueryOperatorInput + ext: StringQueryOperatorInput + name: StringQueryOperatorInput + relativeDirectory: StringQueryOperatorInput + dev: IntQueryOperatorInput + mode: IntQueryOperatorInput + nlink: IntQueryOperatorInput + uid: IntQueryOperatorInput + gid: IntQueryOperatorInput + rdev: IntQueryOperatorInput + ino: FloatQueryOperatorInput + atimeMs: FloatQueryOperatorInput + mtimeMs: FloatQueryOperatorInput + ctimeMs: FloatQueryOperatorInput + atime: DateQueryOperatorInput + mtime: DateQueryOperatorInput + ctime: DateQueryOperatorInput + birthtime: DateQueryOperatorInput + birthtimeMs: FloatQueryOperatorInput + id: StringQueryOperatorInput + parent: NodeFilterInput + children: NodeFilterListInput + internal: InternalFilterInput +} + +input FileSortInput { + fields: [FileFieldsEnum] + order: [SortOrderEnum] = [ASC] +} + +enum SortOrderEnum { + ASC + DESC +} + +type DirectoryConnection { + totalCount: Int! + edges: [DirectoryEdge!]! + nodes: [Directory!]! + pageInfo: PageInfo! + distinct(field: DirectoryFieldsEnum!): [String!]! + group(skip: Int, limit: Int, field: DirectoryFieldsEnum!): [DirectoryGroupConnection!]! +} + +type DirectoryEdge { + next: Directory + node: Directory! + previous: Directory +} + +enum DirectoryFieldsEnum { + sourceInstanceName + absolutePath + relativePath + extension + size + prettySize + modifiedTime + accessTime + changeTime + birthTime + root + dir + base + ext + name + relativeDirectory + dev + mode + nlink + uid + gid + rdev + ino + atimeMs + mtimeMs + ctimeMs + atime + mtime + ctime + birthtime + birthtimeMs + id + parent___id + parent___parent___id + parent___parent___parent___id + parent___parent___parent___children + parent___parent___children + parent___parent___children___id + parent___parent___children___children + parent___parent___internal___content + parent___parent___internal___contentDigest + parent___parent___internal___description + parent___parent___internal___fieldOwners + parent___parent___internal___ignoreType + parent___parent___internal___mediaType + parent___parent___internal___owner + parent___parent___internal___type + parent___children + parent___children___id + parent___children___parent___id + parent___children___parent___children + parent___children___children + parent___children___children___id + parent___children___children___children + parent___children___internal___content + parent___children___internal___contentDigest + parent___children___internal___description + parent___children___internal___fieldOwners + parent___children___internal___ignoreType + parent___children___internal___mediaType + parent___children___internal___owner + parent___children___internal___type + parent___internal___content + parent___internal___contentDigest + parent___internal___description + parent___internal___fieldOwners + parent___internal___ignoreType + parent___internal___mediaType + parent___internal___owner + parent___internal___type + children + children___id + children___parent___id + children___parent___parent___id + children___parent___parent___children + children___parent___children + children___parent___children___id + children___parent___children___children + children___parent___internal___content + children___parent___internal___contentDigest + children___parent___internal___description + children___parent___internal___fieldOwners + children___parent___internal___ignoreType + children___parent___internal___mediaType + children___parent___internal___owner + children___parent___internal___type + children___children + children___children___id + children___children___parent___id + children___children___parent___children + children___children___children + children___children___children___id + children___children___children___children + children___children___internal___content + children___children___internal___contentDigest + children___children___internal___description + children___children___internal___fieldOwners + children___children___internal___ignoreType + children___children___internal___mediaType + children___children___internal___owner + children___children___internal___type + children___internal___content + children___internal___contentDigest + children___internal___description + children___internal___fieldOwners + children___internal___ignoreType + children___internal___mediaType + children___internal___owner + children___internal___type + internal___content + internal___contentDigest + internal___description + internal___fieldOwners + internal___ignoreType + internal___mediaType + internal___owner + internal___type +} + +type DirectoryGroupConnection { + totalCount: Int! + edges: [DirectoryEdge!]! + nodes: [Directory!]! + pageInfo: PageInfo! + field: String! + fieldValue: String +} + +input DirectoryFilterInput { + sourceInstanceName: StringQueryOperatorInput + absolutePath: StringQueryOperatorInput + relativePath: StringQueryOperatorInput + extension: StringQueryOperatorInput + size: IntQueryOperatorInput + prettySize: StringQueryOperatorInput + modifiedTime: DateQueryOperatorInput + accessTime: DateQueryOperatorInput + changeTime: DateQueryOperatorInput + birthTime: DateQueryOperatorInput + root: StringQueryOperatorInput + dir: StringQueryOperatorInput + base: StringQueryOperatorInput + ext: StringQueryOperatorInput + name: StringQueryOperatorInput + relativeDirectory: StringQueryOperatorInput + dev: IntQueryOperatorInput + mode: IntQueryOperatorInput + nlink: IntQueryOperatorInput + uid: IntQueryOperatorInput + gid: IntQueryOperatorInput + rdev: IntQueryOperatorInput + ino: FloatQueryOperatorInput + atimeMs: FloatQueryOperatorInput + mtimeMs: FloatQueryOperatorInput + ctimeMs: FloatQueryOperatorInput + atime: DateQueryOperatorInput + mtime: DateQueryOperatorInput + ctime: DateQueryOperatorInput + birthtime: DateQueryOperatorInput + birthtimeMs: FloatQueryOperatorInput + id: StringQueryOperatorInput + parent: NodeFilterInput + children: NodeFilterListInput + internal: InternalFilterInput +} + +input DirectorySortInput { + fields: [DirectoryFieldsEnum] + order: [SortOrderEnum] = [ASC] +} + +input SiteSiteMetadataFilterInput { + title: StringQueryOperatorInput + description: StringQueryOperatorInput + lang: StringQueryOperatorInput + siteName: StringQueryOperatorInput + titleTemplate: StringQueryOperatorInput + siteUrl: StringQueryOperatorInput +} + +type SiteConnection { + totalCount: Int! + edges: [SiteEdge!]! + nodes: [Site!]! + pageInfo: PageInfo! + distinct(field: SiteFieldsEnum!): [String!]! + group(skip: Int, limit: Int, field: SiteFieldsEnum!): [SiteGroupConnection!]! +} + +type SiteEdge { + next: Site + node: Site! + previous: Site +} + +enum SiteFieldsEnum { + buildTime + siteMetadata___title + siteMetadata___description + siteMetadata___lang + siteMetadata___siteName + siteMetadata___titleTemplate + siteMetadata___siteUrl + port + host + pathPrefix + polyfill + id + parent___id + parent___parent___id + parent___parent___parent___id + parent___parent___parent___children + parent___parent___children + parent___parent___children___id + parent___parent___children___children + parent___parent___internal___content + parent___parent___internal___contentDigest + parent___parent___internal___description + parent___parent___internal___fieldOwners + parent___parent___internal___ignoreType + parent___parent___internal___mediaType + parent___parent___internal___owner + parent___parent___internal___type + parent___children + parent___children___id + parent___children___parent___id + parent___children___parent___children + parent___children___children + parent___children___children___id + parent___children___children___children + parent___children___internal___content + parent___children___internal___contentDigest + parent___children___internal___description + parent___children___internal___fieldOwners + parent___children___internal___ignoreType + parent___children___internal___mediaType + parent___children___internal___owner + parent___children___internal___type + parent___internal___content + parent___internal___contentDigest + parent___internal___description + parent___internal___fieldOwners + parent___internal___ignoreType + parent___internal___mediaType + parent___internal___owner + parent___internal___type + children + children___id + children___parent___id + children___parent___parent___id + children___parent___parent___children + children___parent___children + children___parent___children___id + children___parent___children___children + children___parent___internal___content + children___parent___internal___contentDigest + children___parent___internal___description + children___parent___internal___fieldOwners + children___parent___internal___ignoreType + children___parent___internal___mediaType + children___parent___internal___owner + children___parent___internal___type + children___children + children___children___id + children___children___parent___id + children___children___parent___children + children___children___children + children___children___children___id + children___children___children___children + children___children___internal___content + children___children___internal___contentDigest + children___children___internal___description + children___children___internal___fieldOwners + children___children___internal___ignoreType + children___children___internal___mediaType + children___children___internal___owner + children___children___internal___type + children___internal___content + children___internal___contentDigest + children___internal___description + children___internal___fieldOwners + children___internal___ignoreType + children___internal___mediaType + children___internal___owner + children___internal___type + internal___content + internal___contentDigest + internal___description + internal___fieldOwners + internal___ignoreType + internal___mediaType + internal___owner + internal___type +} + +type SiteGroupConnection { + totalCount: Int! + edges: [SiteEdge!]! + nodes: [Site!]! + pageInfo: PageInfo! + field: String! + fieldValue: String +} + +input SiteFilterInput { + buildTime: DateQueryOperatorInput + siteMetadata: SiteSiteMetadataFilterInput + port: IntQueryOperatorInput + host: StringQueryOperatorInput + pathPrefix: StringQueryOperatorInput + polyfill: BooleanQueryOperatorInput + id: StringQueryOperatorInput + parent: NodeFilterInput + children: NodeFilterListInput + internal: InternalFilterInput +} + +input SiteSortInput { + fields: [SiteFieldsEnum] + order: [SortOrderEnum] = [ASC] +} + +input SitePageContextFilterInput { + slug: StringQueryOperatorInput + id: StringQueryOperatorInput + entryId: StringQueryOperatorInput + year: IntQueryOperatorInput + seasonList: StringQueryOperatorInput + season: StringQueryOperatorInput +} + +input SitePluginFilterInput { + id: StringQueryOperatorInput + parent: NodeFilterInput + children: NodeFilterListInput + internal: InternalFilterInput + resolve: StringQueryOperatorInput + name: StringQueryOperatorInput + version: StringQueryOperatorInput + pluginOptions: SitePluginPluginOptionsFilterInput + nodeAPIs: StringQueryOperatorInput + browserAPIs: StringQueryOperatorInput + ssrAPIs: StringQueryOperatorInput + pluginFilepath: StringQueryOperatorInput + packageJson: SitePluginPackageJsonFilterInput +} + +input SitePluginPluginOptionsFilterInput { + displayName: BooleanQueryOperatorInput + fileName: BooleanQueryOperatorInput + minify: BooleanQueryOperatorInput + namespace: StringQueryOperatorInput + transpileTemplateLiterals: BooleanQueryOperatorInput + pure: BooleanQueryOperatorInput + components: StringQueryOperatorInput + context: StringQueryOperatorInput + hooks: StringQueryOperatorInput + images: StringQueryOperatorInput + layout: StringQueryOperatorInput + pages: StringQueryOperatorInput + styles: StringQueryOperatorInput + templates: StringQueryOperatorInput + theme: StringQueryOperatorInput + utils: StringQueryOperatorInput + component: StringQueryOperatorInput + prefixes: StringQueryOperatorInput + icon: StringQueryOperatorInput + legacy: BooleanQueryOperatorInput + theme_color_in_head: BooleanQueryOperatorInput + cache_busting_mode: StringQueryOperatorInput + crossOrigin: StringQueryOperatorInput + include_favicon: BooleanQueryOperatorInput + cacheDigest: StringQueryOperatorInput + path: StringQueryOperatorInput + pathCheck: BooleanQueryOperatorInput + allExtensions: BooleanQueryOperatorInput + isTSX: BooleanQueryOperatorInput + jsxPragma: StringQueryOperatorInput +} + +input SitePluginPackageJsonFilterInput { + name: StringQueryOperatorInput + description: StringQueryOperatorInput + version: StringQueryOperatorInput + main: StringQueryOperatorInput + license: StringQueryOperatorInput + dependencies: SitePluginPackageJsonDependenciesFilterListInput + devDependencies: SitePluginPackageJsonDevDependenciesFilterListInput + peerDependencies: SitePluginPackageJsonPeerDependenciesFilterListInput + keywords: StringQueryOperatorInput +} + +input SitePluginPackageJsonDependenciesFilterListInput { + elemMatch: SitePluginPackageJsonDependenciesFilterInput +} + +input SitePluginPackageJsonDependenciesFilterInput { + name: StringQueryOperatorInput + version: StringQueryOperatorInput +} + +input SitePluginPackageJsonDevDependenciesFilterListInput { + elemMatch: SitePluginPackageJsonDevDependenciesFilterInput +} + +input SitePluginPackageJsonDevDependenciesFilterInput { + name: StringQueryOperatorInput + version: StringQueryOperatorInput +} + +input SitePluginPackageJsonPeerDependenciesFilterListInput { + elemMatch: SitePluginPackageJsonPeerDependenciesFilterInput +} + +input SitePluginPackageJsonPeerDependenciesFilterInput { + name: StringQueryOperatorInput + version: StringQueryOperatorInput +} + +type SitePageConnection { + totalCount: Int! + edges: [SitePageEdge!]! + nodes: [SitePage!]! + pageInfo: PageInfo! + distinct(field: SitePageFieldsEnum!): [String!]! + group(skip: Int, limit: Int, field: SitePageFieldsEnum!): [SitePageGroupConnection!]! +} + +type SitePageEdge { + next: SitePage + node: SitePage! + previous: SitePage +} + +enum SitePageFieldsEnum { + path + component + internalComponentName + componentChunkName + matchPath + id + parent___id + parent___parent___id + parent___parent___parent___id + parent___parent___parent___children + parent___parent___children + parent___parent___children___id + parent___parent___children___children + parent___parent___internal___content + parent___parent___internal___contentDigest + parent___parent___internal___description + parent___parent___internal___fieldOwners + parent___parent___internal___ignoreType + parent___parent___internal___mediaType + parent___parent___internal___owner + parent___parent___internal___type + parent___children + parent___children___id + parent___children___parent___id + parent___children___parent___children + parent___children___children + parent___children___children___id + parent___children___children___children + parent___children___internal___content + parent___children___internal___contentDigest + parent___children___internal___description + parent___children___internal___fieldOwners + parent___children___internal___ignoreType + parent___children___internal___mediaType + parent___children___internal___owner + parent___children___internal___type + parent___internal___content + parent___internal___contentDigest + parent___internal___description + parent___internal___fieldOwners + parent___internal___ignoreType + parent___internal___mediaType + parent___internal___owner + parent___internal___type + children + children___id + children___parent___id + children___parent___parent___id + children___parent___parent___children + children___parent___children + children___parent___children___id + children___parent___children___children + children___parent___internal___content + children___parent___internal___contentDigest + children___parent___internal___description + children___parent___internal___fieldOwners + children___parent___internal___ignoreType + children___parent___internal___mediaType + children___parent___internal___owner + children___parent___internal___type + children___children + children___children___id + children___children___parent___id + children___children___parent___children + children___children___children + children___children___children___id + children___children___children___children + children___children___internal___content + children___children___internal___contentDigest + children___children___internal___description + children___children___internal___fieldOwners + children___children___internal___ignoreType + children___children___internal___mediaType + children___children___internal___owner + children___children___internal___type + children___internal___content + children___internal___contentDigest + children___internal___description + children___internal___fieldOwners + children___internal___ignoreType + children___internal___mediaType + children___internal___owner + children___internal___type + internal___content + internal___contentDigest + internal___description + internal___fieldOwners + internal___ignoreType + internal___mediaType + internal___owner + internal___type + isCreatedByStatefulCreatePages + context___slug + context___id + context___entryId + context___year + context___seasonList + context___season + pluginCreator___id + pluginCreator___parent___id + pluginCreator___parent___parent___id + pluginCreator___parent___parent___children + pluginCreator___parent___children + pluginCreator___parent___children___id + pluginCreator___parent___children___children + pluginCreator___parent___internal___content + pluginCreator___parent___internal___contentDigest + pluginCreator___parent___internal___description + pluginCreator___parent___internal___fieldOwners + pluginCreator___parent___internal___ignoreType + pluginCreator___parent___internal___mediaType + pluginCreator___parent___internal___owner + pluginCreator___parent___internal___type + pluginCreator___children + pluginCreator___children___id + pluginCreator___children___parent___id + pluginCreator___children___parent___children + pluginCreator___children___children + pluginCreator___children___children___id + pluginCreator___children___children___children + pluginCreator___children___internal___content + pluginCreator___children___internal___contentDigest + pluginCreator___children___internal___description + pluginCreator___children___internal___fieldOwners + pluginCreator___children___internal___ignoreType + pluginCreator___children___internal___mediaType + pluginCreator___children___internal___owner + pluginCreator___children___internal___type + pluginCreator___internal___content + pluginCreator___internal___contentDigest + pluginCreator___internal___description + pluginCreator___internal___fieldOwners + pluginCreator___internal___ignoreType + pluginCreator___internal___mediaType + pluginCreator___internal___owner + pluginCreator___internal___type + pluginCreator___resolve + pluginCreator___name + pluginCreator___version + pluginCreator___pluginOptions___displayName + pluginCreator___pluginOptions___fileName + pluginCreator___pluginOptions___minify + pluginCreator___pluginOptions___namespace + pluginCreator___pluginOptions___transpileTemplateLiterals + pluginCreator___pluginOptions___pure + pluginCreator___pluginOptions___components + pluginCreator___pluginOptions___context + pluginCreator___pluginOptions___hooks + pluginCreator___pluginOptions___images + pluginCreator___pluginOptions___layout + pluginCreator___pluginOptions___pages + pluginCreator___pluginOptions___styles + pluginCreator___pluginOptions___templates + pluginCreator___pluginOptions___theme + pluginCreator___pluginOptions___utils + pluginCreator___pluginOptions___component + pluginCreator___pluginOptions___prefixes + pluginCreator___pluginOptions___icon + pluginCreator___pluginOptions___legacy + pluginCreator___pluginOptions___theme_color_in_head + pluginCreator___pluginOptions___cache_busting_mode + pluginCreator___pluginOptions___crossOrigin + pluginCreator___pluginOptions___include_favicon + pluginCreator___pluginOptions___cacheDigest + pluginCreator___pluginOptions___path + pluginCreator___pluginOptions___pathCheck + pluginCreator___pluginOptions___allExtensions + pluginCreator___pluginOptions___isTSX + pluginCreator___pluginOptions___jsxPragma + pluginCreator___nodeAPIs + pluginCreator___browserAPIs + pluginCreator___ssrAPIs + pluginCreator___pluginFilepath + pluginCreator___packageJson___name + pluginCreator___packageJson___description + pluginCreator___packageJson___version + pluginCreator___packageJson___main + pluginCreator___packageJson___license + pluginCreator___packageJson___dependencies + pluginCreator___packageJson___dependencies___name + pluginCreator___packageJson___dependencies___version + pluginCreator___packageJson___devDependencies + pluginCreator___packageJson___devDependencies___name + pluginCreator___packageJson___devDependencies___version + pluginCreator___packageJson___peerDependencies + pluginCreator___packageJson___peerDependencies___name + pluginCreator___packageJson___peerDependencies___version + pluginCreator___packageJson___keywords + pluginCreatorId + componentPath +} + +type SitePageGroupConnection { + totalCount: Int! + edges: [SitePageEdge!]! + nodes: [SitePage!]! + pageInfo: PageInfo! + field: String! + fieldValue: String +} + +input SitePageFilterInput { + path: StringQueryOperatorInput + component: StringQueryOperatorInput + internalComponentName: StringQueryOperatorInput + componentChunkName: StringQueryOperatorInput + matchPath: StringQueryOperatorInput + id: StringQueryOperatorInput + parent: NodeFilterInput + children: NodeFilterListInput + internal: InternalFilterInput + isCreatedByStatefulCreatePages: BooleanQueryOperatorInput + context: SitePageContextFilterInput + pluginCreator: SitePluginFilterInput + pluginCreatorId: StringQueryOperatorInput + componentPath: StringQueryOperatorInput +} + +input SitePageSortInput { + fields: [SitePageFieldsEnum] + order: [SortOrderEnum] = [ASC] +} + +input SynonymFilterListInput { + elemMatch: SynonymFilterInput +} + +input SynonymFilterInput { + text: StringQueryOperatorInput + anime: AnimeFilterInput + idRaw: IntQueryOperatorInput + id: StringQueryOperatorInput + parent: NodeFilterInput + children: NodeFilterListInput + internal: InternalFilterInput +} + +input AnimeFilterInput { + name: StringQueryOperatorInput + slug: StringQueryOperatorInput + year: IntQueryOperatorInput + season: StringQueryOperatorInput + synopsis: StringQueryOperatorInput + synonyms: SynonymFilterListInput + themes: ThemeFilterListInput + series: SeriesFilterListInput + resources: ResourceFilterListInput + images: ImageFilterListInput + idRaw: IntQueryOperatorInput + id: StringQueryOperatorInput + parent: NodeFilterInput + children: NodeFilterListInput + internal: InternalFilterInput +} + +input ThemeFilterListInput { + elemMatch: ThemeFilterInput +} + +input ThemeFilterInput { + slug: StringQueryOperatorInput + group: StringQueryOperatorInput + song: SongFilterInput + anime: AnimeFilterInput + entries: EntryFilterListInput + idRaw: IntQueryOperatorInput + id: StringQueryOperatorInput + parent: NodeFilterInput + children: NodeFilterListInput + internal: InternalFilterInput +} + +input SongFilterInput { + title: StringQueryOperatorInput + themes: ThemeFilterListInput + performances: PerformanceFilterListInput + idRaw: IntQueryOperatorInput + id: StringQueryOperatorInput + parent: NodeFilterInput + children: NodeFilterListInput + internal: InternalFilterInput +} + +input PerformanceFilterListInput { + elemMatch: PerformanceFilterInput +} + +input PerformanceFilterInput { + song: SongFilterInput + artist: ArtistFilterInput + as: StringQueryOperatorInput + id: StringQueryOperatorInput + parent: NodeFilterInput + children: NodeFilterListInput + internal: InternalFilterInput +} + +input ArtistFilterInput { + slug: StringQueryOperatorInput + name: StringQueryOperatorInput + performances: PerformanceFilterListInput + resources: ResourceFilterListInput + images: ImageFilterListInput + idRaw: IntQueryOperatorInput + id: StringQueryOperatorInput + parent: NodeFilterInput + children: NodeFilterListInput + internal: InternalFilterInput +} + +input ResourceFilterListInput { + elemMatch: ResourceFilterInput +} + +input ResourceFilterInput { + link: StringQueryOperatorInput + site: StringQueryOperatorInput + idRaw: IntQueryOperatorInput + id: StringQueryOperatorInput + parent: NodeFilterInput + children: NodeFilterListInput + internal: InternalFilterInput +} + +input ImageFilterListInput { + elemMatch: ImageFilterInput +} + +input ImageFilterInput { + facet: StringQueryOperatorInput + link: StringQueryOperatorInput + idRaw: IntQueryOperatorInput + id: StringQueryOperatorInput + parent: NodeFilterInput + children: NodeFilterListInput + internal: InternalFilterInput +} + +input EntryFilterListInput { + elemMatch: EntryFilterInput +} + +input EntryFilterInput { + version: IntQueryOperatorInput + episodes: StringQueryOperatorInput + nsfw: BooleanQueryOperatorInput + spoiler: BooleanQueryOperatorInput + theme: ThemeFilterInput + videos: VideoFilterListInput + idRaw: IntQueryOperatorInput + id: StringQueryOperatorInput + parent: NodeFilterInput + children: NodeFilterListInput + internal: InternalFilterInput +} + +input VideoFilterListInput { + elemMatch: VideoFilterInput +} + +input VideoFilterInput { + filename: StringQueryOperatorInput + basename: StringQueryOperatorInput + link: StringQueryOperatorInput + resolution: IntQueryOperatorInput + nc: BooleanQueryOperatorInput + subbed: BooleanQueryOperatorInput + lyrics: BooleanQueryOperatorInput + uncen: BooleanQueryOperatorInput + source: StringQueryOperatorInput + overlap: StringQueryOperatorInput + tags: StringQueryOperatorInput + entries: EntryFilterListInput + idRaw: IntQueryOperatorInput + id: StringQueryOperatorInput + parent: NodeFilterInput + children: NodeFilterListInput + internal: InternalFilterInput +} + +input SeriesFilterListInput { + elemMatch: SeriesFilterInput +} + +input SeriesFilterInput { + slug: StringQueryOperatorInput + name: StringQueryOperatorInput + anime: AnimeFilterListInput + idRaw: IntQueryOperatorInput + id: StringQueryOperatorInput + parent: NodeFilterInput + children: NodeFilterListInput + internal: InternalFilterInput +} + +input AnimeFilterListInput { + elemMatch: AnimeFilterInput +} + +type AnimeConnection { + totalCount: Int! + edges: [AnimeEdge!]! + nodes: [Anime!]! + pageInfo: PageInfo! + distinct(field: AnimeFieldsEnum!): [String!]! + group(skip: Int, limit: Int, field: AnimeFieldsEnum!): [AnimeGroupConnection!]! +} + +type AnimeEdge { + next: Anime + node: Anime! + previous: Anime +} + +enum AnimeFieldsEnum { + name + slug + year + season + synopsis + synonyms + synonyms___text + synonyms___anime___name + synonyms___anime___slug + synonyms___anime___year + synonyms___anime___season + synonyms___anime___synopsis + synonyms___anime___synonyms + synonyms___anime___synonyms___text + synonyms___anime___synonyms___idRaw + synonyms___anime___synonyms___id + synonyms___anime___synonyms___children + synonyms___anime___themes + synonyms___anime___themes___slug + synonyms___anime___themes___group + synonyms___anime___themes___entries + synonyms___anime___themes___idRaw + synonyms___anime___themes___id + synonyms___anime___themes___children + synonyms___anime___series + synonyms___anime___series___slug + synonyms___anime___series___name + synonyms___anime___series___anime + synonyms___anime___series___idRaw + synonyms___anime___series___id + synonyms___anime___series___children + synonyms___anime___resources + synonyms___anime___resources___link + synonyms___anime___resources___site + synonyms___anime___resources___idRaw + synonyms___anime___resources___id + synonyms___anime___resources___children + synonyms___anime___images + synonyms___anime___images___facet + synonyms___anime___images___link + synonyms___anime___images___idRaw + synonyms___anime___images___id + synonyms___anime___images___children + synonyms___anime___idRaw + synonyms___anime___id + synonyms___anime___parent___id + synonyms___anime___parent___children + synonyms___anime___children + synonyms___anime___children___id + synonyms___anime___children___children + synonyms___anime___internal___content + synonyms___anime___internal___contentDigest + synonyms___anime___internal___description + synonyms___anime___internal___fieldOwners + synonyms___anime___internal___ignoreType + synonyms___anime___internal___mediaType + synonyms___anime___internal___owner + synonyms___anime___internal___type + synonyms___idRaw + synonyms___id + synonyms___parent___id + synonyms___parent___parent___id + synonyms___parent___parent___children + synonyms___parent___children + synonyms___parent___children___id + synonyms___parent___children___children + synonyms___parent___internal___content + synonyms___parent___internal___contentDigest + synonyms___parent___internal___description + synonyms___parent___internal___fieldOwners + synonyms___parent___internal___ignoreType + synonyms___parent___internal___mediaType + synonyms___parent___internal___owner + synonyms___parent___internal___type + synonyms___children + synonyms___children___id + synonyms___children___parent___id + synonyms___children___parent___children + synonyms___children___children + synonyms___children___children___id + synonyms___children___children___children + synonyms___children___internal___content + synonyms___children___internal___contentDigest + synonyms___children___internal___description + synonyms___children___internal___fieldOwners + synonyms___children___internal___ignoreType + synonyms___children___internal___mediaType + synonyms___children___internal___owner + synonyms___children___internal___type + synonyms___internal___content + synonyms___internal___contentDigest + synonyms___internal___description + synonyms___internal___fieldOwners + synonyms___internal___ignoreType + synonyms___internal___mediaType + synonyms___internal___owner + synonyms___internal___type + themes + themes___slug + themes___group + themes___song___title + themes___song___themes + themes___song___themes___slug + themes___song___themes___group + themes___song___themes___entries + themes___song___themes___idRaw + themes___song___themes___id + themes___song___themes___children + themes___song___performances + themes___song___performances___as + themes___song___performances___id + themes___song___performances___children + themes___song___idRaw + themes___song___id + themes___song___parent___id + themes___song___parent___children + themes___song___children + themes___song___children___id + themes___song___children___children + themes___song___internal___content + themes___song___internal___contentDigest + themes___song___internal___description + themes___song___internal___fieldOwners + themes___song___internal___ignoreType + themes___song___internal___mediaType + themes___song___internal___owner + themes___song___internal___type + themes___anime___name + themes___anime___slug + themes___anime___year + themes___anime___season + themes___anime___synopsis + themes___anime___synonyms + themes___anime___synonyms___text + themes___anime___synonyms___idRaw + themes___anime___synonyms___id + themes___anime___synonyms___children + themes___anime___themes + themes___anime___themes___slug + themes___anime___themes___group + themes___anime___themes___entries + themes___anime___themes___idRaw + themes___anime___themes___id + themes___anime___themes___children + themes___anime___series + themes___anime___series___slug + themes___anime___series___name + themes___anime___series___anime + themes___anime___series___idRaw + themes___anime___series___id + themes___anime___series___children + themes___anime___resources + themes___anime___resources___link + themes___anime___resources___site + themes___anime___resources___idRaw + themes___anime___resources___id + themes___anime___resources___children + themes___anime___images + themes___anime___images___facet + themes___anime___images___link + themes___anime___images___idRaw + themes___anime___images___id + themes___anime___images___children + themes___anime___idRaw + themes___anime___id + themes___anime___parent___id + themes___anime___parent___children + themes___anime___children + themes___anime___children___id + themes___anime___children___children + themes___anime___internal___content + themes___anime___internal___contentDigest + themes___anime___internal___description + themes___anime___internal___fieldOwners + themes___anime___internal___ignoreType + themes___anime___internal___mediaType + themes___anime___internal___owner + themes___anime___internal___type + themes___entries + themes___entries___version + themes___entries___episodes + themes___entries___nsfw + themes___entries___spoiler + themes___entries___theme___slug + themes___entries___theme___group + themes___entries___theme___entries + themes___entries___theme___idRaw + themes___entries___theme___id + themes___entries___theme___children + themes___entries___videos + themes___entries___videos___filename + themes___entries___videos___basename + themes___entries___videos___link + themes___entries___videos___resolution + themes___entries___videos___nc + themes___entries___videos___subbed + themes___entries___videos___lyrics + themes___entries___videos___uncen + themes___entries___videos___source + themes___entries___videos___overlap + themes___entries___videos___tags + themes___entries___videos___entries + themes___entries___videos___idRaw + themes___entries___videos___id + themes___entries___videos___children + themes___entries___idRaw + themes___entries___id + themes___entries___parent___id + themes___entries___parent___children + themes___entries___children + themes___entries___children___id + themes___entries___children___children + themes___entries___internal___content + themes___entries___internal___contentDigest + themes___entries___internal___description + themes___entries___internal___fieldOwners + themes___entries___internal___ignoreType + themes___entries___internal___mediaType + themes___entries___internal___owner + themes___entries___internal___type + themes___idRaw + themes___id + themes___parent___id + themes___parent___parent___id + themes___parent___parent___children + themes___parent___children + themes___parent___children___id + themes___parent___children___children + themes___parent___internal___content + themes___parent___internal___contentDigest + themes___parent___internal___description + themes___parent___internal___fieldOwners + themes___parent___internal___ignoreType + themes___parent___internal___mediaType + themes___parent___internal___owner + themes___parent___internal___type + themes___children + themes___children___id + themes___children___parent___id + themes___children___parent___children + themes___children___children + themes___children___children___id + themes___children___children___children + themes___children___internal___content + themes___children___internal___contentDigest + themes___children___internal___description + themes___children___internal___fieldOwners + themes___children___internal___ignoreType + themes___children___internal___mediaType + themes___children___internal___owner + themes___children___internal___type + themes___internal___content + themes___internal___contentDigest + themes___internal___description + themes___internal___fieldOwners + themes___internal___ignoreType + themes___internal___mediaType + themes___internal___owner + themes___internal___type + series + series___slug + series___name + series___anime + series___anime___name + series___anime___slug + series___anime___year + series___anime___season + series___anime___synopsis + series___anime___synonyms + series___anime___synonyms___text + series___anime___synonyms___idRaw + series___anime___synonyms___id + series___anime___synonyms___children + series___anime___themes + series___anime___themes___slug + series___anime___themes___group + series___anime___themes___entries + series___anime___themes___idRaw + series___anime___themes___id + series___anime___themes___children + series___anime___series + series___anime___series___slug + series___anime___series___name + series___anime___series___anime + series___anime___series___idRaw + series___anime___series___id + series___anime___series___children + series___anime___resources + series___anime___resources___link + series___anime___resources___site + series___anime___resources___idRaw + series___anime___resources___id + series___anime___resources___children + series___anime___images + series___anime___images___facet + series___anime___images___link + series___anime___images___idRaw + series___anime___images___id + series___anime___images___children + series___anime___idRaw + series___anime___id + series___anime___parent___id + series___anime___parent___children + series___anime___children + series___anime___children___id + series___anime___children___children + series___anime___internal___content + series___anime___internal___contentDigest + series___anime___internal___description + series___anime___internal___fieldOwners + series___anime___internal___ignoreType + series___anime___internal___mediaType + series___anime___internal___owner + series___anime___internal___type + series___idRaw + series___id + series___parent___id + series___parent___parent___id + series___parent___parent___children + series___parent___children + series___parent___children___id + series___parent___children___children + series___parent___internal___content + series___parent___internal___contentDigest + series___parent___internal___description + series___parent___internal___fieldOwners + series___parent___internal___ignoreType + series___parent___internal___mediaType + series___parent___internal___owner + series___parent___internal___type + series___children + series___children___id + series___children___parent___id + series___children___parent___children + series___children___children + series___children___children___id + series___children___children___children + series___children___internal___content + series___children___internal___contentDigest + series___children___internal___description + series___children___internal___fieldOwners + series___children___internal___ignoreType + series___children___internal___mediaType + series___children___internal___owner + series___children___internal___type + series___internal___content + series___internal___contentDigest + series___internal___description + series___internal___fieldOwners + series___internal___ignoreType + series___internal___mediaType + series___internal___owner + series___internal___type + resources + resources___link + resources___site + resources___idRaw + resources___id + resources___parent___id + resources___parent___parent___id + resources___parent___parent___children + resources___parent___children + resources___parent___children___id + resources___parent___children___children + resources___parent___internal___content + resources___parent___internal___contentDigest + resources___parent___internal___description + resources___parent___internal___fieldOwners + resources___parent___internal___ignoreType + resources___parent___internal___mediaType + resources___parent___internal___owner + resources___parent___internal___type + resources___children + resources___children___id + resources___children___parent___id + resources___children___parent___children + resources___children___children + resources___children___children___id + resources___children___children___children + resources___children___internal___content + resources___children___internal___contentDigest + resources___children___internal___description + resources___children___internal___fieldOwners + resources___children___internal___ignoreType + resources___children___internal___mediaType + resources___children___internal___owner + resources___children___internal___type + resources___internal___content + resources___internal___contentDigest + resources___internal___description + resources___internal___fieldOwners + resources___internal___ignoreType + resources___internal___mediaType + resources___internal___owner + resources___internal___type + images + images___facet + images___link + images___idRaw + images___id + images___parent___id + images___parent___parent___id + images___parent___parent___children + images___parent___children + images___parent___children___id + images___parent___children___children + images___parent___internal___content + images___parent___internal___contentDigest + images___parent___internal___description + images___parent___internal___fieldOwners + images___parent___internal___ignoreType + images___parent___internal___mediaType + images___parent___internal___owner + images___parent___internal___type + images___children + images___children___id + images___children___parent___id + images___children___parent___children + images___children___children + images___children___children___id + images___children___children___children + images___children___internal___content + images___children___internal___contentDigest + images___children___internal___description + images___children___internal___fieldOwners + images___children___internal___ignoreType + images___children___internal___mediaType + images___children___internal___owner + images___children___internal___type + images___internal___content + images___internal___contentDigest + images___internal___description + images___internal___fieldOwners + images___internal___ignoreType + images___internal___mediaType + images___internal___owner + images___internal___type + idRaw + id + parent___id + parent___parent___id + parent___parent___parent___id + parent___parent___parent___children + parent___parent___children + parent___parent___children___id + parent___parent___children___children + parent___parent___internal___content + parent___parent___internal___contentDigest + parent___parent___internal___description + parent___parent___internal___fieldOwners + parent___parent___internal___ignoreType + parent___parent___internal___mediaType + parent___parent___internal___owner + parent___parent___internal___type + parent___children + parent___children___id + parent___children___parent___id + parent___children___parent___children + parent___children___children + parent___children___children___id + parent___children___children___children + parent___children___internal___content + parent___children___internal___contentDigest + parent___children___internal___description + parent___children___internal___fieldOwners + parent___children___internal___ignoreType + parent___children___internal___mediaType + parent___children___internal___owner + parent___children___internal___type + parent___internal___content + parent___internal___contentDigest + parent___internal___description + parent___internal___fieldOwners + parent___internal___ignoreType + parent___internal___mediaType + parent___internal___owner + parent___internal___type + children + children___id + children___parent___id + children___parent___parent___id + children___parent___parent___children + children___parent___children + children___parent___children___id + children___parent___children___children + children___parent___internal___content + children___parent___internal___contentDigest + children___parent___internal___description + children___parent___internal___fieldOwners + children___parent___internal___ignoreType + children___parent___internal___mediaType + children___parent___internal___owner + children___parent___internal___type + children___children + children___children___id + children___children___parent___id + children___children___parent___children + children___children___children + children___children___children___id + children___children___children___children + children___children___internal___content + children___children___internal___contentDigest + children___children___internal___description + children___children___internal___fieldOwners + children___children___internal___ignoreType + children___children___internal___mediaType + children___children___internal___owner + children___children___internal___type + children___internal___content + children___internal___contentDigest + children___internal___description + children___internal___fieldOwners + children___internal___ignoreType + children___internal___mediaType + children___internal___owner + children___internal___type + internal___content + internal___contentDigest + internal___description + internal___fieldOwners + internal___ignoreType + internal___mediaType + internal___owner + internal___type +} + +type AnimeGroupConnection { + totalCount: Int! + edges: [AnimeEdge!]! + nodes: [Anime!]! + pageInfo: PageInfo! + field: String! + fieldValue: String +} + +input AnimeSortInput { + fields: [AnimeFieldsEnum] + order: [SortOrderEnum] = [ASC] +} + +type SynonymConnection { + totalCount: Int! + edges: [SynonymEdge!]! + nodes: [Synonym!]! + pageInfo: PageInfo! + distinct(field: SynonymFieldsEnum!): [String!]! + group(skip: Int, limit: Int, field: SynonymFieldsEnum!): [SynonymGroupConnection!]! +} + +type SynonymEdge { + next: Synonym + node: Synonym! + previous: Synonym +} + +enum SynonymFieldsEnum { + text + anime___name + anime___slug + anime___year + anime___season + anime___synopsis + anime___synonyms + anime___synonyms___text + anime___synonyms___anime___name + anime___synonyms___anime___slug + anime___synonyms___anime___year + anime___synonyms___anime___season + anime___synonyms___anime___synopsis + anime___synonyms___anime___synonyms + anime___synonyms___anime___themes + anime___synonyms___anime___series + anime___synonyms___anime___resources + anime___synonyms___anime___images + anime___synonyms___anime___idRaw + anime___synonyms___anime___id + anime___synonyms___anime___children + anime___synonyms___idRaw + anime___synonyms___id + anime___synonyms___parent___id + anime___synonyms___parent___children + anime___synonyms___children + anime___synonyms___children___id + anime___synonyms___children___children + anime___synonyms___internal___content + anime___synonyms___internal___contentDigest + anime___synonyms___internal___description + anime___synonyms___internal___fieldOwners + anime___synonyms___internal___ignoreType + anime___synonyms___internal___mediaType + anime___synonyms___internal___owner + anime___synonyms___internal___type + anime___themes + anime___themes___slug + anime___themes___group + anime___themes___song___title + anime___themes___song___themes + anime___themes___song___performances + anime___themes___song___idRaw + anime___themes___song___id + anime___themes___song___children + anime___themes___anime___name + anime___themes___anime___slug + anime___themes___anime___year + anime___themes___anime___season + anime___themes___anime___synopsis + anime___themes___anime___synonyms + anime___themes___anime___themes + anime___themes___anime___series + anime___themes___anime___resources + anime___themes___anime___images + anime___themes___anime___idRaw + anime___themes___anime___id + anime___themes___anime___children + anime___themes___entries + anime___themes___entries___version + anime___themes___entries___episodes + anime___themes___entries___nsfw + anime___themes___entries___spoiler + anime___themes___entries___videos + anime___themes___entries___idRaw + anime___themes___entries___id + anime___themes___entries___children + anime___themes___idRaw + anime___themes___id + anime___themes___parent___id + anime___themes___parent___children + anime___themes___children + anime___themes___children___id + anime___themes___children___children + anime___themes___internal___content + anime___themes___internal___contentDigest + anime___themes___internal___description + anime___themes___internal___fieldOwners + anime___themes___internal___ignoreType + anime___themes___internal___mediaType + anime___themes___internal___owner + anime___themes___internal___type + anime___series + anime___series___slug + anime___series___name + anime___series___anime + anime___series___anime___name + anime___series___anime___slug + anime___series___anime___year + anime___series___anime___season + anime___series___anime___synopsis + anime___series___anime___synonyms + anime___series___anime___themes + anime___series___anime___series + anime___series___anime___resources + anime___series___anime___images + anime___series___anime___idRaw + anime___series___anime___id + anime___series___anime___children + anime___series___idRaw + anime___series___id + anime___series___parent___id + anime___series___parent___children + anime___series___children + anime___series___children___id + anime___series___children___children + anime___series___internal___content + anime___series___internal___contentDigest + anime___series___internal___description + anime___series___internal___fieldOwners + anime___series___internal___ignoreType + anime___series___internal___mediaType + anime___series___internal___owner + anime___series___internal___type + anime___resources + anime___resources___link + anime___resources___site + anime___resources___idRaw + anime___resources___id + anime___resources___parent___id + anime___resources___parent___children + anime___resources___children + anime___resources___children___id + anime___resources___children___children + anime___resources___internal___content + anime___resources___internal___contentDigest + anime___resources___internal___description + anime___resources___internal___fieldOwners + anime___resources___internal___ignoreType + anime___resources___internal___mediaType + anime___resources___internal___owner + anime___resources___internal___type + anime___images + anime___images___facet + anime___images___link + anime___images___idRaw + anime___images___id + anime___images___parent___id + anime___images___parent___children + anime___images___children + anime___images___children___id + anime___images___children___children + anime___images___internal___content + anime___images___internal___contentDigest + anime___images___internal___description + anime___images___internal___fieldOwners + anime___images___internal___ignoreType + anime___images___internal___mediaType + anime___images___internal___owner + anime___images___internal___type + anime___idRaw + anime___id + anime___parent___id + anime___parent___parent___id + anime___parent___parent___children + anime___parent___children + anime___parent___children___id + anime___parent___children___children + anime___parent___internal___content + anime___parent___internal___contentDigest + anime___parent___internal___description + anime___parent___internal___fieldOwners + anime___parent___internal___ignoreType + anime___parent___internal___mediaType + anime___parent___internal___owner + anime___parent___internal___type + anime___children + anime___children___id + anime___children___parent___id + anime___children___parent___children + anime___children___children + anime___children___children___id + anime___children___children___children + anime___children___internal___content + anime___children___internal___contentDigest + anime___children___internal___description + anime___children___internal___fieldOwners + anime___children___internal___ignoreType + anime___children___internal___mediaType + anime___children___internal___owner + anime___children___internal___type + anime___internal___content + anime___internal___contentDigest + anime___internal___description + anime___internal___fieldOwners + anime___internal___ignoreType + anime___internal___mediaType + anime___internal___owner + anime___internal___type + idRaw + id + parent___id + parent___parent___id + parent___parent___parent___id + parent___parent___parent___children + parent___parent___children + parent___parent___children___id + parent___parent___children___children + parent___parent___internal___content + parent___parent___internal___contentDigest + parent___parent___internal___description + parent___parent___internal___fieldOwners + parent___parent___internal___ignoreType + parent___parent___internal___mediaType + parent___parent___internal___owner + parent___parent___internal___type + parent___children + parent___children___id + parent___children___parent___id + parent___children___parent___children + parent___children___children + parent___children___children___id + parent___children___children___children + parent___children___internal___content + parent___children___internal___contentDigest + parent___children___internal___description + parent___children___internal___fieldOwners + parent___children___internal___ignoreType + parent___children___internal___mediaType + parent___children___internal___owner + parent___children___internal___type + parent___internal___content + parent___internal___contentDigest + parent___internal___description + parent___internal___fieldOwners + parent___internal___ignoreType + parent___internal___mediaType + parent___internal___owner + parent___internal___type + children + children___id + children___parent___id + children___parent___parent___id + children___parent___parent___children + children___parent___children + children___parent___children___id + children___parent___children___children + children___parent___internal___content + children___parent___internal___contentDigest + children___parent___internal___description + children___parent___internal___fieldOwners + children___parent___internal___ignoreType + children___parent___internal___mediaType + children___parent___internal___owner + children___parent___internal___type + children___children + children___children___id + children___children___parent___id + children___children___parent___children + children___children___children + children___children___children___id + children___children___children___children + children___children___internal___content + children___children___internal___contentDigest + children___children___internal___description + children___children___internal___fieldOwners + children___children___internal___ignoreType + children___children___internal___mediaType + children___children___internal___owner + children___children___internal___type + children___internal___content + children___internal___contentDigest + children___internal___description + children___internal___fieldOwners + children___internal___ignoreType + children___internal___mediaType + children___internal___owner + children___internal___type + internal___content + internal___contentDigest + internal___description + internal___fieldOwners + internal___ignoreType + internal___mediaType + internal___owner + internal___type +} + +type SynonymGroupConnection { + totalCount: Int! + edges: [SynonymEdge!]! + nodes: [Synonym!]! + pageInfo: PageInfo! + field: String! + fieldValue: String +} + +input SynonymSortInput { + fields: [SynonymFieldsEnum] + order: [SortOrderEnum] = [ASC] +} + +type ThemeConnection { + totalCount: Int! + edges: [ThemeEdge!]! + nodes: [Theme!]! + pageInfo: PageInfo! + distinct(field: ThemeFieldsEnum!): [String!]! + group(skip: Int, limit: Int, field: ThemeFieldsEnum!): [ThemeGroupConnection!]! +} + +type ThemeEdge { + next: Theme + node: Theme! + previous: Theme +} + +enum ThemeFieldsEnum { + slug + group + song___title + song___themes + song___themes___slug + song___themes___group + song___themes___song___title + song___themes___song___themes + song___themes___song___performances + song___themes___song___idRaw + song___themes___song___id + song___themes___song___children + song___themes___anime___name + song___themes___anime___slug + song___themes___anime___year + song___themes___anime___season + song___themes___anime___synopsis + song___themes___anime___synonyms + song___themes___anime___themes + song___themes___anime___series + song___themes___anime___resources + song___themes___anime___images + song___themes___anime___idRaw + song___themes___anime___id + song___themes___anime___children + song___themes___entries + song___themes___entries___version + song___themes___entries___episodes + song___themes___entries___nsfw + song___themes___entries___spoiler + song___themes___entries___videos + song___themes___entries___idRaw + song___themes___entries___id + song___themes___entries___children + song___themes___idRaw + song___themes___id + song___themes___parent___id + song___themes___parent___children + song___themes___children + song___themes___children___id + song___themes___children___children + song___themes___internal___content + song___themes___internal___contentDigest + song___themes___internal___description + song___themes___internal___fieldOwners + song___themes___internal___ignoreType + song___themes___internal___mediaType + song___themes___internal___owner + song___themes___internal___type + song___performances + song___performances___song___title + song___performances___song___themes + song___performances___song___performances + song___performances___song___idRaw + song___performances___song___id + song___performances___song___children + song___performances___artist___slug + song___performances___artist___name + song___performances___artist___performances + song___performances___artist___resources + song___performances___artist___images + song___performances___artist___idRaw + song___performances___artist___id + song___performances___artist___children + song___performances___as + song___performances___id + song___performances___parent___id + song___performances___parent___children + song___performances___children + song___performances___children___id + song___performances___children___children + song___performances___internal___content + song___performances___internal___contentDigest + song___performances___internal___description + song___performances___internal___fieldOwners + song___performances___internal___ignoreType + song___performances___internal___mediaType + song___performances___internal___owner + song___performances___internal___type + song___idRaw + song___id + song___parent___id + song___parent___parent___id + song___parent___parent___children + song___parent___children + song___parent___children___id + song___parent___children___children + song___parent___internal___content + song___parent___internal___contentDigest + song___parent___internal___description + song___parent___internal___fieldOwners + song___parent___internal___ignoreType + song___parent___internal___mediaType + song___parent___internal___owner + song___parent___internal___type + song___children + song___children___id + song___children___parent___id + song___children___parent___children + song___children___children + song___children___children___id + song___children___children___children + song___children___internal___content + song___children___internal___contentDigest + song___children___internal___description + song___children___internal___fieldOwners + song___children___internal___ignoreType + song___children___internal___mediaType + song___children___internal___owner + song___children___internal___type + song___internal___content + song___internal___contentDigest + song___internal___description + song___internal___fieldOwners + song___internal___ignoreType + song___internal___mediaType + song___internal___owner + song___internal___type + anime___name + anime___slug + anime___year + anime___season + anime___synopsis + anime___synonyms + anime___synonyms___text + anime___synonyms___anime___name + anime___synonyms___anime___slug + anime___synonyms___anime___year + anime___synonyms___anime___season + anime___synonyms___anime___synopsis + anime___synonyms___anime___synonyms + anime___synonyms___anime___themes + anime___synonyms___anime___series + anime___synonyms___anime___resources + anime___synonyms___anime___images + anime___synonyms___anime___idRaw + anime___synonyms___anime___id + anime___synonyms___anime___children + anime___synonyms___idRaw + anime___synonyms___id + anime___synonyms___parent___id + anime___synonyms___parent___children + anime___synonyms___children + anime___synonyms___children___id + anime___synonyms___children___children + anime___synonyms___internal___content + anime___synonyms___internal___contentDigest + anime___synonyms___internal___description + anime___synonyms___internal___fieldOwners + anime___synonyms___internal___ignoreType + anime___synonyms___internal___mediaType + anime___synonyms___internal___owner + anime___synonyms___internal___type + anime___themes + anime___themes___slug + anime___themes___group + anime___themes___song___title + anime___themes___song___themes + anime___themes___song___performances + anime___themes___song___idRaw + anime___themes___song___id + anime___themes___song___children + anime___themes___anime___name + anime___themes___anime___slug + anime___themes___anime___year + anime___themes___anime___season + anime___themes___anime___synopsis + anime___themes___anime___synonyms + anime___themes___anime___themes + anime___themes___anime___series + anime___themes___anime___resources + anime___themes___anime___images + anime___themes___anime___idRaw + anime___themes___anime___id + anime___themes___anime___children + anime___themes___entries + anime___themes___entries___version + anime___themes___entries___episodes + anime___themes___entries___nsfw + anime___themes___entries___spoiler + anime___themes___entries___videos + anime___themes___entries___idRaw + anime___themes___entries___id + anime___themes___entries___children + anime___themes___idRaw + anime___themes___id + anime___themes___parent___id + anime___themes___parent___children + anime___themes___children + anime___themes___children___id + anime___themes___children___children + anime___themes___internal___content + anime___themes___internal___contentDigest + anime___themes___internal___description + anime___themes___internal___fieldOwners + anime___themes___internal___ignoreType + anime___themes___internal___mediaType + anime___themes___internal___owner + anime___themes___internal___type + anime___series + anime___series___slug + anime___series___name + anime___series___anime + anime___series___anime___name + anime___series___anime___slug + anime___series___anime___year + anime___series___anime___season + anime___series___anime___synopsis + anime___series___anime___synonyms + anime___series___anime___themes + anime___series___anime___series + anime___series___anime___resources + anime___series___anime___images + anime___series___anime___idRaw + anime___series___anime___id + anime___series___anime___children + anime___series___idRaw + anime___series___id + anime___series___parent___id + anime___series___parent___children + anime___series___children + anime___series___children___id + anime___series___children___children + anime___series___internal___content + anime___series___internal___contentDigest + anime___series___internal___description + anime___series___internal___fieldOwners + anime___series___internal___ignoreType + anime___series___internal___mediaType + anime___series___internal___owner + anime___series___internal___type + anime___resources + anime___resources___link + anime___resources___site + anime___resources___idRaw + anime___resources___id + anime___resources___parent___id + anime___resources___parent___children + anime___resources___children + anime___resources___children___id + anime___resources___children___children + anime___resources___internal___content + anime___resources___internal___contentDigest + anime___resources___internal___description + anime___resources___internal___fieldOwners + anime___resources___internal___ignoreType + anime___resources___internal___mediaType + anime___resources___internal___owner + anime___resources___internal___type + anime___images + anime___images___facet + anime___images___link + anime___images___idRaw + anime___images___id + anime___images___parent___id + anime___images___parent___children + anime___images___children + anime___images___children___id + anime___images___children___children + anime___images___internal___content + anime___images___internal___contentDigest + anime___images___internal___description + anime___images___internal___fieldOwners + anime___images___internal___ignoreType + anime___images___internal___mediaType + anime___images___internal___owner + anime___images___internal___type + anime___idRaw + anime___id + anime___parent___id + anime___parent___parent___id + anime___parent___parent___children + anime___parent___children + anime___parent___children___id + anime___parent___children___children + anime___parent___internal___content + anime___parent___internal___contentDigest + anime___parent___internal___description + anime___parent___internal___fieldOwners + anime___parent___internal___ignoreType + anime___parent___internal___mediaType + anime___parent___internal___owner + anime___parent___internal___type + anime___children + anime___children___id + anime___children___parent___id + anime___children___parent___children + anime___children___children + anime___children___children___id + anime___children___children___children + anime___children___internal___content + anime___children___internal___contentDigest + anime___children___internal___description + anime___children___internal___fieldOwners + anime___children___internal___ignoreType + anime___children___internal___mediaType + anime___children___internal___owner + anime___children___internal___type + anime___internal___content + anime___internal___contentDigest + anime___internal___description + anime___internal___fieldOwners + anime___internal___ignoreType + anime___internal___mediaType + anime___internal___owner + anime___internal___type + entries + entries___version + entries___episodes + entries___nsfw + entries___spoiler + entries___theme___slug + entries___theme___group + entries___theme___song___title + entries___theme___song___themes + entries___theme___song___performances + entries___theme___song___idRaw + entries___theme___song___id + entries___theme___song___children + entries___theme___anime___name + entries___theme___anime___slug + entries___theme___anime___year + entries___theme___anime___season + entries___theme___anime___synopsis + entries___theme___anime___synonyms + entries___theme___anime___themes + entries___theme___anime___series + entries___theme___anime___resources + entries___theme___anime___images + entries___theme___anime___idRaw + entries___theme___anime___id + entries___theme___anime___children + entries___theme___entries + entries___theme___entries___version + entries___theme___entries___episodes + entries___theme___entries___nsfw + entries___theme___entries___spoiler + entries___theme___entries___videos + entries___theme___entries___idRaw + entries___theme___entries___id + entries___theme___entries___children + entries___theme___idRaw + entries___theme___id + entries___theme___parent___id + entries___theme___parent___children + entries___theme___children + entries___theme___children___id + entries___theme___children___children + entries___theme___internal___content + entries___theme___internal___contentDigest + entries___theme___internal___description + entries___theme___internal___fieldOwners + entries___theme___internal___ignoreType + entries___theme___internal___mediaType + entries___theme___internal___owner + entries___theme___internal___type + entries___videos + entries___videos___filename + entries___videos___basename + entries___videos___link + entries___videos___resolution + entries___videos___nc + entries___videos___subbed + entries___videos___lyrics + entries___videos___uncen + entries___videos___source + entries___videos___overlap + entries___videos___tags + entries___videos___entries + entries___videos___entries___version + entries___videos___entries___episodes + entries___videos___entries___nsfw + entries___videos___entries___spoiler + entries___videos___entries___videos + entries___videos___entries___idRaw + entries___videos___entries___id + entries___videos___entries___children + entries___videos___idRaw + entries___videos___id + entries___videos___parent___id + entries___videos___parent___children + entries___videos___children + entries___videos___children___id + entries___videos___children___children + entries___videos___internal___content + entries___videos___internal___contentDigest + entries___videos___internal___description + entries___videos___internal___fieldOwners + entries___videos___internal___ignoreType + entries___videos___internal___mediaType + entries___videos___internal___owner + entries___videos___internal___type + entries___idRaw + entries___id + entries___parent___id + entries___parent___parent___id + entries___parent___parent___children + entries___parent___children + entries___parent___children___id + entries___parent___children___children + entries___parent___internal___content + entries___parent___internal___contentDigest + entries___parent___internal___description + entries___parent___internal___fieldOwners + entries___parent___internal___ignoreType + entries___parent___internal___mediaType + entries___parent___internal___owner + entries___parent___internal___type + entries___children + entries___children___id + entries___children___parent___id + entries___children___parent___children + entries___children___children + entries___children___children___id + entries___children___children___children + entries___children___internal___content + entries___children___internal___contentDigest + entries___children___internal___description + entries___children___internal___fieldOwners + entries___children___internal___ignoreType + entries___children___internal___mediaType + entries___children___internal___owner + entries___children___internal___type + entries___internal___content + entries___internal___contentDigest + entries___internal___description + entries___internal___fieldOwners + entries___internal___ignoreType + entries___internal___mediaType + entries___internal___owner + entries___internal___type + idRaw + id + parent___id + parent___parent___id + parent___parent___parent___id + parent___parent___parent___children + parent___parent___children + parent___parent___children___id + parent___parent___children___children + parent___parent___internal___content + parent___parent___internal___contentDigest + parent___parent___internal___description + parent___parent___internal___fieldOwners + parent___parent___internal___ignoreType + parent___parent___internal___mediaType + parent___parent___internal___owner + parent___parent___internal___type + parent___children + parent___children___id + parent___children___parent___id + parent___children___parent___children + parent___children___children + parent___children___children___id + parent___children___children___children + parent___children___internal___content + parent___children___internal___contentDigest + parent___children___internal___description + parent___children___internal___fieldOwners + parent___children___internal___ignoreType + parent___children___internal___mediaType + parent___children___internal___owner + parent___children___internal___type + parent___internal___content + parent___internal___contentDigest + parent___internal___description + parent___internal___fieldOwners + parent___internal___ignoreType + parent___internal___mediaType + parent___internal___owner + parent___internal___type + children + children___id + children___parent___id + children___parent___parent___id + children___parent___parent___children + children___parent___children + children___parent___children___id + children___parent___children___children + children___parent___internal___content + children___parent___internal___contentDigest + children___parent___internal___description + children___parent___internal___fieldOwners + children___parent___internal___ignoreType + children___parent___internal___mediaType + children___parent___internal___owner + children___parent___internal___type + children___children + children___children___id + children___children___parent___id + children___children___parent___children + children___children___children + children___children___children___id + children___children___children___children + children___children___internal___content + children___children___internal___contentDigest + children___children___internal___description + children___children___internal___fieldOwners + children___children___internal___ignoreType + children___children___internal___mediaType + children___children___internal___owner + children___children___internal___type + children___internal___content + children___internal___contentDigest + children___internal___description + children___internal___fieldOwners + children___internal___ignoreType + children___internal___mediaType + children___internal___owner + children___internal___type + internal___content + internal___contentDigest + internal___description + internal___fieldOwners + internal___ignoreType + internal___mediaType + internal___owner + internal___type +} + +type ThemeGroupConnection { + totalCount: Int! + edges: [ThemeEdge!]! + nodes: [Theme!]! + pageInfo: PageInfo! + field: String! + fieldValue: String +} + +input ThemeSortInput { + fields: [ThemeFieldsEnum] + order: [SortOrderEnum] = [ASC] +} + +type EntryConnection { + totalCount: Int! + edges: [EntryEdge!]! + nodes: [Entry!]! + pageInfo: PageInfo! + distinct(field: EntryFieldsEnum!): [String!]! + group(skip: Int, limit: Int, field: EntryFieldsEnum!): [EntryGroupConnection!]! +} + +type EntryEdge { + next: Entry + node: Entry! + previous: Entry +} + +enum EntryFieldsEnum { + version + episodes + nsfw + spoiler + theme___slug + theme___group + theme___song___title + theme___song___themes + theme___song___themes___slug + theme___song___themes___group + theme___song___themes___entries + theme___song___themes___idRaw + theme___song___themes___id + theme___song___themes___children + theme___song___performances + theme___song___performances___as + theme___song___performances___id + theme___song___performances___children + theme___song___idRaw + theme___song___id + theme___song___parent___id + theme___song___parent___children + theme___song___children + theme___song___children___id + theme___song___children___children + theme___song___internal___content + theme___song___internal___contentDigest + theme___song___internal___description + theme___song___internal___fieldOwners + theme___song___internal___ignoreType + theme___song___internal___mediaType + theme___song___internal___owner + theme___song___internal___type + theme___anime___name + theme___anime___slug + theme___anime___year + theme___anime___season + theme___anime___synopsis + theme___anime___synonyms + theme___anime___synonyms___text + theme___anime___synonyms___idRaw + theme___anime___synonyms___id + theme___anime___synonyms___children + theme___anime___themes + theme___anime___themes___slug + theme___anime___themes___group + theme___anime___themes___entries + theme___anime___themes___idRaw + theme___anime___themes___id + theme___anime___themes___children + theme___anime___series + theme___anime___series___slug + theme___anime___series___name + theme___anime___series___anime + theme___anime___series___idRaw + theme___anime___series___id + theme___anime___series___children + theme___anime___resources + theme___anime___resources___link + theme___anime___resources___site + theme___anime___resources___idRaw + theme___anime___resources___id + theme___anime___resources___children + theme___anime___images + theme___anime___images___facet + theme___anime___images___link + theme___anime___images___idRaw + theme___anime___images___id + theme___anime___images___children + theme___anime___idRaw + theme___anime___id + theme___anime___parent___id + theme___anime___parent___children + theme___anime___children + theme___anime___children___id + theme___anime___children___children + theme___anime___internal___content + theme___anime___internal___contentDigest + theme___anime___internal___description + theme___anime___internal___fieldOwners + theme___anime___internal___ignoreType + theme___anime___internal___mediaType + theme___anime___internal___owner + theme___anime___internal___type + theme___entries + theme___entries___version + theme___entries___episodes + theme___entries___nsfw + theme___entries___spoiler + theme___entries___theme___slug + theme___entries___theme___group + theme___entries___theme___entries + theme___entries___theme___idRaw + theme___entries___theme___id + theme___entries___theme___children + theme___entries___videos + theme___entries___videos___filename + theme___entries___videos___basename + theme___entries___videos___link + theme___entries___videos___resolution + theme___entries___videos___nc + theme___entries___videos___subbed + theme___entries___videos___lyrics + theme___entries___videos___uncen + theme___entries___videos___source + theme___entries___videos___overlap + theme___entries___videos___tags + theme___entries___videos___entries + theme___entries___videos___idRaw + theme___entries___videos___id + theme___entries___videos___children + theme___entries___idRaw + theme___entries___id + theme___entries___parent___id + theme___entries___parent___children + theme___entries___children + theme___entries___children___id + theme___entries___children___children + theme___entries___internal___content + theme___entries___internal___contentDigest + theme___entries___internal___description + theme___entries___internal___fieldOwners + theme___entries___internal___ignoreType + theme___entries___internal___mediaType + theme___entries___internal___owner + theme___entries___internal___type + theme___idRaw + theme___id + theme___parent___id + theme___parent___parent___id + theme___parent___parent___children + theme___parent___children + theme___parent___children___id + theme___parent___children___children + theme___parent___internal___content + theme___parent___internal___contentDigest + theme___parent___internal___description + theme___parent___internal___fieldOwners + theme___parent___internal___ignoreType + theme___parent___internal___mediaType + theme___parent___internal___owner + theme___parent___internal___type + theme___children + theme___children___id + theme___children___parent___id + theme___children___parent___children + theme___children___children + theme___children___children___id + theme___children___children___children + theme___children___internal___content + theme___children___internal___contentDigest + theme___children___internal___description + theme___children___internal___fieldOwners + theme___children___internal___ignoreType + theme___children___internal___mediaType + theme___children___internal___owner + theme___children___internal___type + theme___internal___content + theme___internal___contentDigest + theme___internal___description + theme___internal___fieldOwners + theme___internal___ignoreType + theme___internal___mediaType + theme___internal___owner + theme___internal___type + videos + videos___filename + videos___basename + videos___link + videos___resolution + videos___nc + videos___subbed + videos___lyrics + videos___uncen + videos___source + videos___overlap + videos___tags + videos___entries + videos___entries___version + videos___entries___episodes + videos___entries___nsfw + videos___entries___spoiler + videos___entries___theme___slug + videos___entries___theme___group + videos___entries___theme___entries + videos___entries___theme___idRaw + videos___entries___theme___id + videos___entries___theme___children + videos___entries___videos + videos___entries___videos___filename + videos___entries___videos___basename + videos___entries___videos___link + videos___entries___videos___resolution + videos___entries___videos___nc + videos___entries___videos___subbed + videos___entries___videos___lyrics + videos___entries___videos___uncen + videos___entries___videos___source + videos___entries___videos___overlap + videos___entries___videos___tags + videos___entries___videos___entries + videos___entries___videos___idRaw + videos___entries___videos___id + videos___entries___videos___children + videos___entries___idRaw + videos___entries___id + videos___entries___parent___id + videos___entries___parent___children + videos___entries___children + videos___entries___children___id + videos___entries___children___children + videos___entries___internal___content + videos___entries___internal___contentDigest + videos___entries___internal___description + videos___entries___internal___fieldOwners + videos___entries___internal___ignoreType + videos___entries___internal___mediaType + videos___entries___internal___owner + videos___entries___internal___type + videos___idRaw + videos___id + videos___parent___id + videos___parent___parent___id + videos___parent___parent___children + videos___parent___children + videos___parent___children___id + videos___parent___children___children + videos___parent___internal___content + videos___parent___internal___contentDigest + videos___parent___internal___description + videos___parent___internal___fieldOwners + videos___parent___internal___ignoreType + videos___parent___internal___mediaType + videos___parent___internal___owner + videos___parent___internal___type + videos___children + videos___children___id + videos___children___parent___id + videos___children___parent___children + videos___children___children + videos___children___children___id + videos___children___children___children + videos___children___internal___content + videos___children___internal___contentDigest + videos___children___internal___description + videos___children___internal___fieldOwners + videos___children___internal___ignoreType + videos___children___internal___mediaType + videos___children___internal___owner + videos___children___internal___type + videos___internal___content + videos___internal___contentDigest + videos___internal___description + videos___internal___fieldOwners + videos___internal___ignoreType + videos___internal___mediaType + videos___internal___owner + videos___internal___type + idRaw + id + parent___id + parent___parent___id + parent___parent___parent___id + parent___parent___parent___children + parent___parent___children + parent___parent___children___id + parent___parent___children___children + parent___parent___internal___content + parent___parent___internal___contentDigest + parent___parent___internal___description + parent___parent___internal___fieldOwners + parent___parent___internal___ignoreType + parent___parent___internal___mediaType + parent___parent___internal___owner + parent___parent___internal___type + parent___children + parent___children___id + parent___children___parent___id + parent___children___parent___children + parent___children___children + parent___children___children___id + parent___children___children___children + parent___children___internal___content + parent___children___internal___contentDigest + parent___children___internal___description + parent___children___internal___fieldOwners + parent___children___internal___ignoreType + parent___children___internal___mediaType + parent___children___internal___owner + parent___children___internal___type + parent___internal___content + parent___internal___contentDigest + parent___internal___description + parent___internal___fieldOwners + parent___internal___ignoreType + parent___internal___mediaType + parent___internal___owner + parent___internal___type + children + children___id + children___parent___id + children___parent___parent___id + children___parent___parent___children + children___parent___children + children___parent___children___id + children___parent___children___children + children___parent___internal___content + children___parent___internal___contentDigest + children___parent___internal___description + children___parent___internal___fieldOwners + children___parent___internal___ignoreType + children___parent___internal___mediaType + children___parent___internal___owner + children___parent___internal___type + children___children + children___children___id + children___children___parent___id + children___children___parent___children + children___children___children + children___children___children___id + children___children___children___children + children___children___internal___content + children___children___internal___contentDigest + children___children___internal___description + children___children___internal___fieldOwners + children___children___internal___ignoreType + children___children___internal___mediaType + children___children___internal___owner + children___children___internal___type + children___internal___content + children___internal___contentDigest + children___internal___description + children___internal___fieldOwners + children___internal___ignoreType + children___internal___mediaType + children___internal___owner + children___internal___type + internal___content + internal___contentDigest + internal___description + internal___fieldOwners + internal___ignoreType + internal___mediaType + internal___owner + internal___type +} + +type EntryGroupConnection { + totalCount: Int! + edges: [EntryEdge!]! + nodes: [Entry!]! + pageInfo: PageInfo! + field: String! + fieldValue: String +} + +input EntrySortInput { + fields: [EntryFieldsEnum] + order: [SortOrderEnum] = [ASC] +} + +type VideoConnection { + totalCount: Int! + edges: [VideoEdge!]! + nodes: [Video!]! + pageInfo: PageInfo! + distinct(field: VideoFieldsEnum!): [String!]! + group(skip: Int, limit: Int, field: VideoFieldsEnum!): [VideoGroupConnection!]! +} + +type VideoEdge { + next: Video + node: Video! + previous: Video +} + +enum VideoFieldsEnum { + filename + basename + link + resolution + nc + subbed + lyrics + uncen + source + overlap + tags + entries + entries___version + entries___episodes + entries___nsfw + entries___spoiler + entries___theme___slug + entries___theme___group + entries___theme___song___title + entries___theme___song___themes + entries___theme___song___performances + entries___theme___song___idRaw + entries___theme___song___id + entries___theme___song___children + entries___theme___anime___name + entries___theme___anime___slug + entries___theme___anime___year + entries___theme___anime___season + entries___theme___anime___synopsis + entries___theme___anime___synonyms + entries___theme___anime___themes + entries___theme___anime___series + entries___theme___anime___resources + entries___theme___anime___images + entries___theme___anime___idRaw + entries___theme___anime___id + entries___theme___anime___children + entries___theme___entries + entries___theme___entries___version + entries___theme___entries___episodes + entries___theme___entries___nsfw + entries___theme___entries___spoiler + entries___theme___entries___videos + entries___theme___entries___idRaw + entries___theme___entries___id + entries___theme___entries___children + entries___theme___idRaw + entries___theme___id + entries___theme___parent___id + entries___theme___parent___children + entries___theme___children + entries___theme___children___id + entries___theme___children___children + entries___theme___internal___content + entries___theme___internal___contentDigest + entries___theme___internal___description + entries___theme___internal___fieldOwners + entries___theme___internal___ignoreType + entries___theme___internal___mediaType + entries___theme___internal___owner + entries___theme___internal___type + entries___videos + entries___videos___filename + entries___videos___basename + entries___videos___link + entries___videos___resolution + entries___videos___nc + entries___videos___subbed + entries___videos___lyrics + entries___videos___uncen + entries___videos___source + entries___videos___overlap + entries___videos___tags + entries___videos___entries + entries___videos___entries___version + entries___videos___entries___episodes + entries___videos___entries___nsfw + entries___videos___entries___spoiler + entries___videos___entries___videos + entries___videos___entries___idRaw + entries___videos___entries___id + entries___videos___entries___children + entries___videos___idRaw + entries___videos___id + entries___videos___parent___id + entries___videos___parent___children + entries___videos___children + entries___videos___children___id + entries___videos___children___children + entries___videos___internal___content + entries___videos___internal___contentDigest + entries___videos___internal___description + entries___videos___internal___fieldOwners + entries___videos___internal___ignoreType + entries___videos___internal___mediaType + entries___videos___internal___owner + entries___videos___internal___type + entries___idRaw + entries___id + entries___parent___id + entries___parent___parent___id + entries___parent___parent___children + entries___parent___children + entries___parent___children___id + entries___parent___children___children + entries___parent___internal___content + entries___parent___internal___contentDigest + entries___parent___internal___description + entries___parent___internal___fieldOwners + entries___parent___internal___ignoreType + entries___parent___internal___mediaType + entries___parent___internal___owner + entries___parent___internal___type + entries___children + entries___children___id + entries___children___parent___id + entries___children___parent___children + entries___children___children + entries___children___children___id + entries___children___children___children + entries___children___internal___content + entries___children___internal___contentDigest + entries___children___internal___description + entries___children___internal___fieldOwners + entries___children___internal___ignoreType + entries___children___internal___mediaType + entries___children___internal___owner + entries___children___internal___type + entries___internal___content + entries___internal___contentDigest + entries___internal___description + entries___internal___fieldOwners + entries___internal___ignoreType + entries___internal___mediaType + entries___internal___owner + entries___internal___type + idRaw + id + parent___id + parent___parent___id + parent___parent___parent___id + parent___parent___parent___children + parent___parent___children + parent___parent___children___id + parent___parent___children___children + parent___parent___internal___content + parent___parent___internal___contentDigest + parent___parent___internal___description + parent___parent___internal___fieldOwners + parent___parent___internal___ignoreType + parent___parent___internal___mediaType + parent___parent___internal___owner + parent___parent___internal___type + parent___children + parent___children___id + parent___children___parent___id + parent___children___parent___children + parent___children___children + parent___children___children___id + parent___children___children___children + parent___children___internal___content + parent___children___internal___contentDigest + parent___children___internal___description + parent___children___internal___fieldOwners + parent___children___internal___ignoreType + parent___children___internal___mediaType + parent___children___internal___owner + parent___children___internal___type + parent___internal___content + parent___internal___contentDigest + parent___internal___description + parent___internal___fieldOwners + parent___internal___ignoreType + parent___internal___mediaType + parent___internal___owner + parent___internal___type + children + children___id + children___parent___id + children___parent___parent___id + children___parent___parent___children + children___parent___children + children___parent___children___id + children___parent___children___children + children___parent___internal___content + children___parent___internal___contentDigest + children___parent___internal___description + children___parent___internal___fieldOwners + children___parent___internal___ignoreType + children___parent___internal___mediaType + children___parent___internal___owner + children___parent___internal___type + children___children + children___children___id + children___children___parent___id + children___children___parent___children + children___children___children + children___children___children___id + children___children___children___children + children___children___internal___content + children___children___internal___contentDigest + children___children___internal___description + children___children___internal___fieldOwners + children___children___internal___ignoreType + children___children___internal___mediaType + children___children___internal___owner + children___children___internal___type + children___internal___content + children___internal___contentDigest + children___internal___description + children___internal___fieldOwners + children___internal___ignoreType + children___internal___mediaType + children___internal___owner + children___internal___type + internal___content + internal___contentDigest + internal___description + internal___fieldOwners + internal___ignoreType + internal___mediaType + internal___owner + internal___type +} + +type VideoGroupConnection { + totalCount: Int! + edges: [VideoEdge!]! + nodes: [Video!]! + pageInfo: PageInfo! + field: String! + fieldValue: String +} + +input VideoSortInput { + fields: [VideoFieldsEnum] + order: [SortOrderEnum] = [ASC] +} + +type SongConnection { + totalCount: Int! + edges: [SongEdge!]! + nodes: [Song!]! + pageInfo: PageInfo! + distinct(field: SongFieldsEnum!): [String!]! + group(skip: Int, limit: Int, field: SongFieldsEnum!): [SongGroupConnection!]! +} + +type SongEdge { + next: Song + node: Song! + previous: Song +} + +enum SongFieldsEnum { + title + themes + themes___slug + themes___group + themes___song___title + themes___song___themes + themes___song___themes___slug + themes___song___themes___group + themes___song___themes___entries + themes___song___themes___idRaw + themes___song___themes___id + themes___song___themes___children + themes___song___performances + themes___song___performances___as + themes___song___performances___id + themes___song___performances___children + themes___song___idRaw + themes___song___id + themes___song___parent___id + themes___song___parent___children + themes___song___children + themes___song___children___id + themes___song___children___children + themes___song___internal___content + themes___song___internal___contentDigest + themes___song___internal___description + themes___song___internal___fieldOwners + themes___song___internal___ignoreType + themes___song___internal___mediaType + themes___song___internal___owner + themes___song___internal___type + themes___anime___name + themes___anime___slug + themes___anime___year + themes___anime___season + themes___anime___synopsis + themes___anime___synonyms + themes___anime___synonyms___text + themes___anime___synonyms___idRaw + themes___anime___synonyms___id + themes___anime___synonyms___children + themes___anime___themes + themes___anime___themes___slug + themes___anime___themes___group + themes___anime___themes___entries + themes___anime___themes___idRaw + themes___anime___themes___id + themes___anime___themes___children + themes___anime___series + themes___anime___series___slug + themes___anime___series___name + themes___anime___series___anime + themes___anime___series___idRaw + themes___anime___series___id + themes___anime___series___children + themes___anime___resources + themes___anime___resources___link + themes___anime___resources___site + themes___anime___resources___idRaw + themes___anime___resources___id + themes___anime___resources___children + themes___anime___images + themes___anime___images___facet + themes___anime___images___link + themes___anime___images___idRaw + themes___anime___images___id + themes___anime___images___children + themes___anime___idRaw + themes___anime___id + themes___anime___parent___id + themes___anime___parent___children + themes___anime___children + themes___anime___children___id + themes___anime___children___children + themes___anime___internal___content + themes___anime___internal___contentDigest + themes___anime___internal___description + themes___anime___internal___fieldOwners + themes___anime___internal___ignoreType + themes___anime___internal___mediaType + themes___anime___internal___owner + themes___anime___internal___type + themes___entries + themes___entries___version + themes___entries___episodes + themes___entries___nsfw + themes___entries___spoiler + themes___entries___theme___slug + themes___entries___theme___group + themes___entries___theme___entries + themes___entries___theme___idRaw + themes___entries___theme___id + themes___entries___theme___children + themes___entries___videos + themes___entries___videos___filename + themes___entries___videos___basename + themes___entries___videos___link + themes___entries___videos___resolution + themes___entries___videos___nc + themes___entries___videos___subbed + themes___entries___videos___lyrics + themes___entries___videos___uncen + themes___entries___videos___source + themes___entries___videos___overlap + themes___entries___videos___tags + themes___entries___videos___entries + themes___entries___videos___idRaw + themes___entries___videos___id + themes___entries___videos___children + themes___entries___idRaw + themes___entries___id + themes___entries___parent___id + themes___entries___parent___children + themes___entries___children + themes___entries___children___id + themes___entries___children___children + themes___entries___internal___content + themes___entries___internal___contentDigest + themes___entries___internal___description + themes___entries___internal___fieldOwners + themes___entries___internal___ignoreType + themes___entries___internal___mediaType + themes___entries___internal___owner + themes___entries___internal___type + themes___idRaw + themes___id + themes___parent___id + themes___parent___parent___id + themes___parent___parent___children + themes___parent___children + themes___parent___children___id + themes___parent___children___children + themes___parent___internal___content + themes___parent___internal___contentDigest + themes___parent___internal___description + themes___parent___internal___fieldOwners + themes___parent___internal___ignoreType + themes___parent___internal___mediaType + themes___parent___internal___owner + themes___parent___internal___type + themes___children + themes___children___id + themes___children___parent___id + themes___children___parent___children + themes___children___children + themes___children___children___id + themes___children___children___children + themes___children___internal___content + themes___children___internal___contentDigest + themes___children___internal___description + themes___children___internal___fieldOwners + themes___children___internal___ignoreType + themes___children___internal___mediaType + themes___children___internal___owner + themes___children___internal___type + themes___internal___content + themes___internal___contentDigest + themes___internal___description + themes___internal___fieldOwners + themes___internal___ignoreType + themes___internal___mediaType + themes___internal___owner + themes___internal___type + performances + performances___song___title + performances___song___themes + performances___song___themes___slug + performances___song___themes___group + performances___song___themes___entries + performances___song___themes___idRaw + performances___song___themes___id + performances___song___themes___children + performances___song___performances + performances___song___performances___as + performances___song___performances___id + performances___song___performances___children + performances___song___idRaw + performances___song___id + performances___song___parent___id + performances___song___parent___children + performances___song___children + performances___song___children___id + performances___song___children___children + performances___song___internal___content + performances___song___internal___contentDigest + performances___song___internal___description + performances___song___internal___fieldOwners + performances___song___internal___ignoreType + performances___song___internal___mediaType + performances___song___internal___owner + performances___song___internal___type + performances___artist___slug + performances___artist___name + performances___artist___performances + performances___artist___performances___as + performances___artist___performances___id + performances___artist___performances___children + performances___artist___resources + performances___artist___resources___link + performances___artist___resources___site + performances___artist___resources___idRaw + performances___artist___resources___id + performances___artist___resources___children + performances___artist___images + performances___artist___images___facet + performances___artist___images___link + performances___artist___images___idRaw + performances___artist___images___id + performances___artist___images___children + performances___artist___idRaw + performances___artist___id + performances___artist___parent___id + performances___artist___parent___children + performances___artist___children + performances___artist___children___id + performances___artist___children___children + performances___artist___internal___content + performances___artist___internal___contentDigest + performances___artist___internal___description + performances___artist___internal___fieldOwners + performances___artist___internal___ignoreType + performances___artist___internal___mediaType + performances___artist___internal___owner + performances___artist___internal___type + performances___as + performances___id + performances___parent___id + performances___parent___parent___id + performances___parent___parent___children + performances___parent___children + performances___parent___children___id + performances___parent___children___children + performances___parent___internal___content + performances___parent___internal___contentDigest + performances___parent___internal___description + performances___parent___internal___fieldOwners + performances___parent___internal___ignoreType + performances___parent___internal___mediaType + performances___parent___internal___owner + performances___parent___internal___type + performances___children + performances___children___id + performances___children___parent___id + performances___children___parent___children + performances___children___children + performances___children___children___id + performances___children___children___children + performances___children___internal___content + performances___children___internal___contentDigest + performances___children___internal___description + performances___children___internal___fieldOwners + performances___children___internal___ignoreType + performances___children___internal___mediaType + performances___children___internal___owner + performances___children___internal___type + performances___internal___content + performances___internal___contentDigest + performances___internal___description + performances___internal___fieldOwners + performances___internal___ignoreType + performances___internal___mediaType + performances___internal___owner + performances___internal___type + idRaw + id + parent___id + parent___parent___id + parent___parent___parent___id + parent___parent___parent___children + parent___parent___children + parent___parent___children___id + parent___parent___children___children + parent___parent___internal___content + parent___parent___internal___contentDigest + parent___parent___internal___description + parent___parent___internal___fieldOwners + parent___parent___internal___ignoreType + parent___parent___internal___mediaType + parent___parent___internal___owner + parent___parent___internal___type + parent___children + parent___children___id + parent___children___parent___id + parent___children___parent___children + parent___children___children + parent___children___children___id + parent___children___children___children + parent___children___internal___content + parent___children___internal___contentDigest + parent___children___internal___description + parent___children___internal___fieldOwners + parent___children___internal___ignoreType + parent___children___internal___mediaType + parent___children___internal___owner + parent___children___internal___type + parent___internal___content + parent___internal___contentDigest + parent___internal___description + parent___internal___fieldOwners + parent___internal___ignoreType + parent___internal___mediaType + parent___internal___owner + parent___internal___type + children + children___id + children___parent___id + children___parent___parent___id + children___parent___parent___children + children___parent___children + children___parent___children___id + children___parent___children___children + children___parent___internal___content + children___parent___internal___contentDigest + children___parent___internal___description + children___parent___internal___fieldOwners + children___parent___internal___ignoreType + children___parent___internal___mediaType + children___parent___internal___owner + children___parent___internal___type + children___children + children___children___id + children___children___parent___id + children___children___parent___children + children___children___children + children___children___children___id + children___children___children___children + children___children___internal___content + children___children___internal___contentDigest + children___children___internal___description + children___children___internal___fieldOwners + children___children___internal___ignoreType + children___children___internal___mediaType + children___children___internal___owner + children___children___internal___type + children___internal___content + children___internal___contentDigest + children___internal___description + children___internal___fieldOwners + children___internal___ignoreType + children___internal___mediaType + children___internal___owner + children___internal___type + internal___content + internal___contentDigest + internal___description + internal___fieldOwners + internal___ignoreType + internal___mediaType + internal___owner + internal___type +} + +type SongGroupConnection { + totalCount: Int! + edges: [SongEdge!]! + nodes: [Song!]! + pageInfo: PageInfo! + field: String! + fieldValue: String +} + +input SongSortInput { + fields: [SongFieldsEnum] + order: [SortOrderEnum] = [ASC] +} + +type PerformanceConnection { + totalCount: Int! + edges: [PerformanceEdge!]! + nodes: [Performance!]! + pageInfo: PageInfo! + distinct(field: PerformanceFieldsEnum!): [String!]! + group(skip: Int, limit: Int, field: PerformanceFieldsEnum!): [PerformanceGroupConnection!]! +} + +type PerformanceEdge { + next: Performance + node: Performance! + previous: Performance +} + +enum PerformanceFieldsEnum { + song___title + song___themes + song___themes___slug + song___themes___group + song___themes___song___title + song___themes___song___themes + song___themes___song___performances + song___themes___song___idRaw + song___themes___song___id + song___themes___song___children + song___themes___anime___name + song___themes___anime___slug + song___themes___anime___year + song___themes___anime___season + song___themes___anime___synopsis + song___themes___anime___synonyms + song___themes___anime___themes + song___themes___anime___series + song___themes___anime___resources + song___themes___anime___images + song___themes___anime___idRaw + song___themes___anime___id + song___themes___anime___children + song___themes___entries + song___themes___entries___version + song___themes___entries___episodes + song___themes___entries___nsfw + song___themes___entries___spoiler + song___themes___entries___videos + song___themes___entries___idRaw + song___themes___entries___id + song___themes___entries___children + song___themes___idRaw + song___themes___id + song___themes___parent___id + song___themes___parent___children + song___themes___children + song___themes___children___id + song___themes___children___children + song___themes___internal___content + song___themes___internal___contentDigest + song___themes___internal___description + song___themes___internal___fieldOwners + song___themes___internal___ignoreType + song___themes___internal___mediaType + song___themes___internal___owner + song___themes___internal___type + song___performances + song___performances___song___title + song___performances___song___themes + song___performances___song___performances + song___performances___song___idRaw + song___performances___song___id + song___performances___song___children + song___performances___artist___slug + song___performances___artist___name + song___performances___artist___performances + song___performances___artist___resources + song___performances___artist___images + song___performances___artist___idRaw + song___performances___artist___id + song___performances___artist___children + song___performances___as + song___performances___id + song___performances___parent___id + song___performances___parent___children + song___performances___children + song___performances___children___id + song___performances___children___children + song___performances___internal___content + song___performances___internal___contentDigest + song___performances___internal___description + song___performances___internal___fieldOwners + song___performances___internal___ignoreType + song___performances___internal___mediaType + song___performances___internal___owner + song___performances___internal___type + song___idRaw + song___id + song___parent___id + song___parent___parent___id + song___parent___parent___children + song___parent___children + song___parent___children___id + song___parent___children___children + song___parent___internal___content + song___parent___internal___contentDigest + song___parent___internal___description + song___parent___internal___fieldOwners + song___parent___internal___ignoreType + song___parent___internal___mediaType + song___parent___internal___owner + song___parent___internal___type + song___children + song___children___id + song___children___parent___id + song___children___parent___children + song___children___children + song___children___children___id + song___children___children___children + song___children___internal___content + song___children___internal___contentDigest + song___children___internal___description + song___children___internal___fieldOwners + song___children___internal___ignoreType + song___children___internal___mediaType + song___children___internal___owner + song___children___internal___type + song___internal___content + song___internal___contentDigest + song___internal___description + song___internal___fieldOwners + song___internal___ignoreType + song___internal___mediaType + song___internal___owner + song___internal___type + artist___slug + artist___name + artist___performances + artist___performances___song___title + artist___performances___song___themes + artist___performances___song___performances + artist___performances___song___idRaw + artist___performances___song___id + artist___performances___song___children + artist___performances___artist___slug + artist___performances___artist___name + artist___performances___artist___performances + artist___performances___artist___resources + artist___performances___artist___images + artist___performances___artist___idRaw + artist___performances___artist___id + artist___performances___artist___children + artist___performances___as + artist___performances___id + artist___performances___parent___id + artist___performances___parent___children + artist___performances___children + artist___performances___children___id + artist___performances___children___children + artist___performances___internal___content + artist___performances___internal___contentDigest + artist___performances___internal___description + artist___performances___internal___fieldOwners + artist___performances___internal___ignoreType + artist___performances___internal___mediaType + artist___performances___internal___owner + artist___performances___internal___type + artist___resources + artist___resources___link + artist___resources___site + artist___resources___idRaw + artist___resources___id + artist___resources___parent___id + artist___resources___parent___children + artist___resources___children + artist___resources___children___id + artist___resources___children___children + artist___resources___internal___content + artist___resources___internal___contentDigest + artist___resources___internal___description + artist___resources___internal___fieldOwners + artist___resources___internal___ignoreType + artist___resources___internal___mediaType + artist___resources___internal___owner + artist___resources___internal___type + artist___images + artist___images___facet + artist___images___link + artist___images___idRaw + artist___images___id + artist___images___parent___id + artist___images___parent___children + artist___images___children + artist___images___children___id + artist___images___children___children + artist___images___internal___content + artist___images___internal___contentDigest + artist___images___internal___description + artist___images___internal___fieldOwners + artist___images___internal___ignoreType + artist___images___internal___mediaType + artist___images___internal___owner + artist___images___internal___type + artist___idRaw + artist___id + artist___parent___id + artist___parent___parent___id + artist___parent___parent___children + artist___parent___children + artist___parent___children___id + artist___parent___children___children + artist___parent___internal___content + artist___parent___internal___contentDigest + artist___parent___internal___description + artist___parent___internal___fieldOwners + artist___parent___internal___ignoreType + artist___parent___internal___mediaType + artist___parent___internal___owner + artist___parent___internal___type + artist___children + artist___children___id + artist___children___parent___id + artist___children___parent___children + artist___children___children + artist___children___children___id + artist___children___children___children + artist___children___internal___content + artist___children___internal___contentDigest + artist___children___internal___description + artist___children___internal___fieldOwners + artist___children___internal___ignoreType + artist___children___internal___mediaType + artist___children___internal___owner + artist___children___internal___type + artist___internal___content + artist___internal___contentDigest + artist___internal___description + artist___internal___fieldOwners + artist___internal___ignoreType + artist___internal___mediaType + artist___internal___owner + artist___internal___type + as + id + parent___id + parent___parent___id + parent___parent___parent___id + parent___parent___parent___children + parent___parent___children + parent___parent___children___id + parent___parent___children___children + parent___parent___internal___content + parent___parent___internal___contentDigest + parent___parent___internal___description + parent___parent___internal___fieldOwners + parent___parent___internal___ignoreType + parent___parent___internal___mediaType + parent___parent___internal___owner + parent___parent___internal___type + parent___children + parent___children___id + parent___children___parent___id + parent___children___parent___children + parent___children___children + parent___children___children___id + parent___children___children___children + parent___children___internal___content + parent___children___internal___contentDigest + parent___children___internal___description + parent___children___internal___fieldOwners + parent___children___internal___ignoreType + parent___children___internal___mediaType + parent___children___internal___owner + parent___children___internal___type + parent___internal___content + parent___internal___contentDigest + parent___internal___description + parent___internal___fieldOwners + parent___internal___ignoreType + parent___internal___mediaType + parent___internal___owner + parent___internal___type + children + children___id + children___parent___id + children___parent___parent___id + children___parent___parent___children + children___parent___children + children___parent___children___id + children___parent___children___children + children___parent___internal___content + children___parent___internal___contentDigest + children___parent___internal___description + children___parent___internal___fieldOwners + children___parent___internal___ignoreType + children___parent___internal___mediaType + children___parent___internal___owner + children___parent___internal___type + children___children + children___children___id + children___children___parent___id + children___children___parent___children + children___children___children + children___children___children___id + children___children___children___children + children___children___internal___content + children___children___internal___contentDigest + children___children___internal___description + children___children___internal___fieldOwners + children___children___internal___ignoreType + children___children___internal___mediaType + children___children___internal___owner + children___children___internal___type + children___internal___content + children___internal___contentDigest + children___internal___description + children___internal___fieldOwners + children___internal___ignoreType + children___internal___mediaType + children___internal___owner + children___internal___type + internal___content + internal___contentDigest + internal___description + internal___fieldOwners + internal___ignoreType + internal___mediaType + internal___owner + internal___type +} + +type PerformanceGroupConnection { + totalCount: Int! + edges: [PerformanceEdge!]! + nodes: [Performance!]! + pageInfo: PageInfo! + field: String! + fieldValue: String +} + +input PerformanceSortInput { + fields: [PerformanceFieldsEnum] + order: [SortOrderEnum] = [ASC] +} + +type ArtistConnection { + totalCount: Int! + edges: [ArtistEdge!]! + nodes: [Artist!]! + pageInfo: PageInfo! + distinct(field: ArtistFieldsEnum!): [String!]! + group(skip: Int, limit: Int, field: ArtistFieldsEnum!): [ArtistGroupConnection!]! +} + +type ArtistEdge { + next: Artist + node: Artist! + previous: Artist +} + +enum ArtistFieldsEnum { + slug + name + performances + performances___song___title + performances___song___themes + performances___song___themes___slug + performances___song___themes___group + performances___song___themes___entries + performances___song___themes___idRaw + performances___song___themes___id + performances___song___themes___children + performances___song___performances + performances___song___performances___as + performances___song___performances___id + performances___song___performances___children + performances___song___idRaw + performances___song___id + performances___song___parent___id + performances___song___parent___children + performances___song___children + performances___song___children___id + performances___song___children___children + performances___song___internal___content + performances___song___internal___contentDigest + performances___song___internal___description + performances___song___internal___fieldOwners + performances___song___internal___ignoreType + performances___song___internal___mediaType + performances___song___internal___owner + performances___song___internal___type + performances___artist___slug + performances___artist___name + performances___artist___performances + performances___artist___performances___as + performances___artist___performances___id + performances___artist___performances___children + performances___artist___resources + performances___artist___resources___link + performances___artist___resources___site + performances___artist___resources___idRaw + performances___artist___resources___id + performances___artist___resources___children + performances___artist___images + performances___artist___images___facet + performances___artist___images___link + performances___artist___images___idRaw + performances___artist___images___id + performances___artist___images___children + performances___artist___idRaw + performances___artist___id + performances___artist___parent___id + performances___artist___parent___children + performances___artist___children + performances___artist___children___id + performances___artist___children___children + performances___artist___internal___content + performances___artist___internal___contentDigest + performances___artist___internal___description + performances___artist___internal___fieldOwners + performances___artist___internal___ignoreType + performances___artist___internal___mediaType + performances___artist___internal___owner + performances___artist___internal___type + performances___as + performances___id + performances___parent___id + performances___parent___parent___id + performances___parent___parent___children + performances___parent___children + performances___parent___children___id + performances___parent___children___children + performances___parent___internal___content + performances___parent___internal___contentDigest + performances___parent___internal___description + performances___parent___internal___fieldOwners + performances___parent___internal___ignoreType + performances___parent___internal___mediaType + performances___parent___internal___owner + performances___parent___internal___type + performances___children + performances___children___id + performances___children___parent___id + performances___children___parent___children + performances___children___children + performances___children___children___id + performances___children___children___children + performances___children___internal___content + performances___children___internal___contentDigest + performances___children___internal___description + performances___children___internal___fieldOwners + performances___children___internal___ignoreType + performances___children___internal___mediaType + performances___children___internal___owner + performances___children___internal___type + performances___internal___content + performances___internal___contentDigest + performances___internal___description + performances___internal___fieldOwners + performances___internal___ignoreType + performances___internal___mediaType + performances___internal___owner + performances___internal___type + resources + resources___link + resources___site + resources___idRaw + resources___id + resources___parent___id + resources___parent___parent___id + resources___parent___parent___children + resources___parent___children + resources___parent___children___id + resources___parent___children___children + resources___parent___internal___content + resources___parent___internal___contentDigest + resources___parent___internal___description + resources___parent___internal___fieldOwners + resources___parent___internal___ignoreType + resources___parent___internal___mediaType + resources___parent___internal___owner + resources___parent___internal___type + resources___children + resources___children___id + resources___children___parent___id + resources___children___parent___children + resources___children___children + resources___children___children___id + resources___children___children___children + resources___children___internal___content + resources___children___internal___contentDigest + resources___children___internal___description + resources___children___internal___fieldOwners + resources___children___internal___ignoreType + resources___children___internal___mediaType + resources___children___internal___owner + resources___children___internal___type + resources___internal___content + resources___internal___contentDigest + resources___internal___description + resources___internal___fieldOwners + resources___internal___ignoreType + resources___internal___mediaType + resources___internal___owner + resources___internal___type + images + images___facet + images___link + images___idRaw + images___id + images___parent___id + images___parent___parent___id + images___parent___parent___children + images___parent___children + images___parent___children___id + images___parent___children___children + images___parent___internal___content + images___parent___internal___contentDigest + images___parent___internal___description + images___parent___internal___fieldOwners + images___parent___internal___ignoreType + images___parent___internal___mediaType + images___parent___internal___owner + images___parent___internal___type + images___children + images___children___id + images___children___parent___id + images___children___parent___children + images___children___children + images___children___children___id + images___children___children___children + images___children___internal___content + images___children___internal___contentDigest + images___children___internal___description + images___children___internal___fieldOwners + images___children___internal___ignoreType + images___children___internal___mediaType + images___children___internal___owner + images___children___internal___type + images___internal___content + images___internal___contentDigest + images___internal___description + images___internal___fieldOwners + images___internal___ignoreType + images___internal___mediaType + images___internal___owner + images___internal___type + idRaw + id + parent___id + parent___parent___id + parent___parent___parent___id + parent___parent___parent___children + parent___parent___children + parent___parent___children___id + parent___parent___children___children + parent___parent___internal___content + parent___parent___internal___contentDigest + parent___parent___internal___description + parent___parent___internal___fieldOwners + parent___parent___internal___ignoreType + parent___parent___internal___mediaType + parent___parent___internal___owner + parent___parent___internal___type + parent___children + parent___children___id + parent___children___parent___id + parent___children___parent___children + parent___children___children + parent___children___children___id + parent___children___children___children + parent___children___internal___content + parent___children___internal___contentDigest + parent___children___internal___description + parent___children___internal___fieldOwners + parent___children___internal___ignoreType + parent___children___internal___mediaType + parent___children___internal___owner + parent___children___internal___type + parent___internal___content + parent___internal___contentDigest + parent___internal___description + parent___internal___fieldOwners + parent___internal___ignoreType + parent___internal___mediaType + parent___internal___owner + parent___internal___type + children + children___id + children___parent___id + children___parent___parent___id + children___parent___parent___children + children___parent___children + children___parent___children___id + children___parent___children___children + children___parent___internal___content + children___parent___internal___contentDigest + children___parent___internal___description + children___parent___internal___fieldOwners + children___parent___internal___ignoreType + children___parent___internal___mediaType + children___parent___internal___owner + children___parent___internal___type + children___children + children___children___id + children___children___parent___id + children___children___parent___children + children___children___children + children___children___children___id + children___children___children___children + children___children___internal___content + children___children___internal___contentDigest + children___children___internal___description + children___children___internal___fieldOwners + children___children___internal___ignoreType + children___children___internal___mediaType + children___children___internal___owner + children___children___internal___type + children___internal___content + children___internal___contentDigest + children___internal___description + children___internal___fieldOwners + children___internal___ignoreType + children___internal___mediaType + children___internal___owner + children___internal___type + internal___content + internal___contentDigest + internal___description + internal___fieldOwners + internal___ignoreType + internal___mediaType + internal___owner + internal___type +} + +type ArtistGroupConnection { + totalCount: Int! + edges: [ArtistEdge!]! + nodes: [Artist!]! + pageInfo: PageInfo! + field: String! + fieldValue: String +} + +input ArtistSortInput { + fields: [ArtistFieldsEnum] + order: [SortOrderEnum] = [ASC] +} + +type SeriesConnection { + totalCount: Int! + edges: [SeriesEdge!]! + nodes: [Series!]! + pageInfo: PageInfo! + distinct(field: SeriesFieldsEnum!): [String!]! + group(skip: Int, limit: Int, field: SeriesFieldsEnum!): [SeriesGroupConnection!]! +} + +type SeriesEdge { + next: Series + node: Series! + previous: Series +} + +enum SeriesFieldsEnum { + slug + name + anime + anime___name + anime___slug + anime___year + anime___season + anime___synopsis + anime___synonyms + anime___synonyms___text + anime___synonyms___anime___name + anime___synonyms___anime___slug + anime___synonyms___anime___year + anime___synonyms___anime___season + anime___synonyms___anime___synopsis + anime___synonyms___anime___synonyms + anime___synonyms___anime___themes + anime___synonyms___anime___series + anime___synonyms___anime___resources + anime___synonyms___anime___images + anime___synonyms___anime___idRaw + anime___synonyms___anime___id + anime___synonyms___anime___children + anime___synonyms___idRaw + anime___synonyms___id + anime___synonyms___parent___id + anime___synonyms___parent___children + anime___synonyms___children + anime___synonyms___children___id + anime___synonyms___children___children + anime___synonyms___internal___content + anime___synonyms___internal___contentDigest + anime___synonyms___internal___description + anime___synonyms___internal___fieldOwners + anime___synonyms___internal___ignoreType + anime___synonyms___internal___mediaType + anime___synonyms___internal___owner + anime___synonyms___internal___type + anime___themes + anime___themes___slug + anime___themes___group + anime___themes___song___title + anime___themes___song___themes + anime___themes___song___performances + anime___themes___song___idRaw + anime___themes___song___id + anime___themes___song___children + anime___themes___anime___name + anime___themes___anime___slug + anime___themes___anime___year + anime___themes___anime___season + anime___themes___anime___synopsis + anime___themes___anime___synonyms + anime___themes___anime___themes + anime___themes___anime___series + anime___themes___anime___resources + anime___themes___anime___images + anime___themes___anime___idRaw + anime___themes___anime___id + anime___themes___anime___children + anime___themes___entries + anime___themes___entries___version + anime___themes___entries___episodes + anime___themes___entries___nsfw + anime___themes___entries___spoiler + anime___themes___entries___videos + anime___themes___entries___idRaw + anime___themes___entries___id + anime___themes___entries___children + anime___themes___idRaw + anime___themes___id + anime___themes___parent___id + anime___themes___parent___children + anime___themes___children + anime___themes___children___id + anime___themes___children___children + anime___themes___internal___content + anime___themes___internal___contentDigest + anime___themes___internal___description + anime___themes___internal___fieldOwners + anime___themes___internal___ignoreType + anime___themes___internal___mediaType + anime___themes___internal___owner + anime___themes___internal___type + anime___series + anime___series___slug + anime___series___name + anime___series___anime + anime___series___anime___name + anime___series___anime___slug + anime___series___anime___year + anime___series___anime___season + anime___series___anime___synopsis + anime___series___anime___synonyms + anime___series___anime___themes + anime___series___anime___series + anime___series___anime___resources + anime___series___anime___images + anime___series___anime___idRaw + anime___series___anime___id + anime___series___anime___children + anime___series___idRaw + anime___series___id + anime___series___parent___id + anime___series___parent___children + anime___series___children + anime___series___children___id + anime___series___children___children + anime___series___internal___content + anime___series___internal___contentDigest + anime___series___internal___description + anime___series___internal___fieldOwners + anime___series___internal___ignoreType + anime___series___internal___mediaType + anime___series___internal___owner + anime___series___internal___type + anime___resources + anime___resources___link + anime___resources___site + anime___resources___idRaw + anime___resources___id + anime___resources___parent___id + anime___resources___parent___children + anime___resources___children + anime___resources___children___id + anime___resources___children___children + anime___resources___internal___content + anime___resources___internal___contentDigest + anime___resources___internal___description + anime___resources___internal___fieldOwners + anime___resources___internal___ignoreType + anime___resources___internal___mediaType + anime___resources___internal___owner + anime___resources___internal___type + anime___images + anime___images___facet + anime___images___link + anime___images___idRaw + anime___images___id + anime___images___parent___id + anime___images___parent___children + anime___images___children + anime___images___children___id + anime___images___children___children + anime___images___internal___content + anime___images___internal___contentDigest + anime___images___internal___description + anime___images___internal___fieldOwners + anime___images___internal___ignoreType + anime___images___internal___mediaType + anime___images___internal___owner + anime___images___internal___type + anime___idRaw + anime___id + anime___parent___id + anime___parent___parent___id + anime___parent___parent___children + anime___parent___children + anime___parent___children___id + anime___parent___children___children + anime___parent___internal___content + anime___parent___internal___contentDigest + anime___parent___internal___description + anime___parent___internal___fieldOwners + anime___parent___internal___ignoreType + anime___parent___internal___mediaType + anime___parent___internal___owner + anime___parent___internal___type + anime___children + anime___children___id + anime___children___parent___id + anime___children___parent___children + anime___children___children + anime___children___children___id + anime___children___children___children + anime___children___internal___content + anime___children___internal___contentDigest + anime___children___internal___description + anime___children___internal___fieldOwners + anime___children___internal___ignoreType + anime___children___internal___mediaType + anime___children___internal___owner + anime___children___internal___type + anime___internal___content + anime___internal___contentDigest + anime___internal___description + anime___internal___fieldOwners + anime___internal___ignoreType + anime___internal___mediaType + anime___internal___owner + anime___internal___type + idRaw + id + parent___id + parent___parent___id + parent___parent___parent___id + parent___parent___parent___children + parent___parent___children + parent___parent___children___id + parent___parent___children___children + parent___parent___internal___content + parent___parent___internal___contentDigest + parent___parent___internal___description + parent___parent___internal___fieldOwners + parent___parent___internal___ignoreType + parent___parent___internal___mediaType + parent___parent___internal___owner + parent___parent___internal___type + parent___children + parent___children___id + parent___children___parent___id + parent___children___parent___children + parent___children___children + parent___children___children___id + parent___children___children___children + parent___children___internal___content + parent___children___internal___contentDigest + parent___children___internal___description + parent___children___internal___fieldOwners + parent___children___internal___ignoreType + parent___children___internal___mediaType + parent___children___internal___owner + parent___children___internal___type + parent___internal___content + parent___internal___contentDigest + parent___internal___description + parent___internal___fieldOwners + parent___internal___ignoreType + parent___internal___mediaType + parent___internal___owner + parent___internal___type + children + children___id + children___parent___id + children___parent___parent___id + children___parent___parent___children + children___parent___children + children___parent___children___id + children___parent___children___children + children___parent___internal___content + children___parent___internal___contentDigest + children___parent___internal___description + children___parent___internal___fieldOwners + children___parent___internal___ignoreType + children___parent___internal___mediaType + children___parent___internal___owner + children___parent___internal___type + children___children + children___children___id + children___children___parent___id + children___children___parent___children + children___children___children + children___children___children___id + children___children___children___children + children___children___internal___content + children___children___internal___contentDigest + children___children___internal___description + children___children___internal___fieldOwners + children___children___internal___ignoreType + children___children___internal___mediaType + children___children___internal___owner + children___children___internal___type + children___internal___content + children___internal___contentDigest + children___internal___description + children___internal___fieldOwners + children___internal___ignoreType + children___internal___mediaType + children___internal___owner + children___internal___type + internal___content + internal___contentDigest + internal___description + internal___fieldOwners + internal___ignoreType + internal___mediaType + internal___owner + internal___type +} + +type SeriesGroupConnection { + totalCount: Int! + edges: [SeriesEdge!]! + nodes: [Series!]! + pageInfo: PageInfo! + field: String! + fieldValue: String +} + +input SeriesSortInput { + fields: [SeriesFieldsEnum] + order: [SortOrderEnum] = [ASC] +} + +type ResourceConnection { + totalCount: Int! + edges: [ResourceEdge!]! + nodes: [Resource!]! + pageInfo: PageInfo! + distinct(field: ResourceFieldsEnum!): [String!]! + group(skip: Int, limit: Int, field: ResourceFieldsEnum!): [ResourceGroupConnection!]! +} + +type ResourceEdge { + next: Resource + node: Resource! + previous: Resource +} + +enum ResourceFieldsEnum { + link + site + idRaw + id + parent___id + parent___parent___id + parent___parent___parent___id + parent___parent___parent___children + parent___parent___children + parent___parent___children___id + parent___parent___children___children + parent___parent___internal___content + parent___parent___internal___contentDigest + parent___parent___internal___description + parent___parent___internal___fieldOwners + parent___parent___internal___ignoreType + parent___parent___internal___mediaType + parent___parent___internal___owner + parent___parent___internal___type + parent___children + parent___children___id + parent___children___parent___id + parent___children___parent___children + parent___children___children + parent___children___children___id + parent___children___children___children + parent___children___internal___content + parent___children___internal___contentDigest + parent___children___internal___description + parent___children___internal___fieldOwners + parent___children___internal___ignoreType + parent___children___internal___mediaType + parent___children___internal___owner + parent___children___internal___type + parent___internal___content + parent___internal___contentDigest + parent___internal___description + parent___internal___fieldOwners + parent___internal___ignoreType + parent___internal___mediaType + parent___internal___owner + parent___internal___type + children + children___id + children___parent___id + children___parent___parent___id + children___parent___parent___children + children___parent___children + children___parent___children___id + children___parent___children___children + children___parent___internal___content + children___parent___internal___contentDigest + children___parent___internal___description + children___parent___internal___fieldOwners + children___parent___internal___ignoreType + children___parent___internal___mediaType + children___parent___internal___owner + children___parent___internal___type + children___children + children___children___id + children___children___parent___id + children___children___parent___children + children___children___children + children___children___children___id + children___children___children___children + children___children___internal___content + children___children___internal___contentDigest + children___children___internal___description + children___children___internal___fieldOwners + children___children___internal___ignoreType + children___children___internal___mediaType + children___children___internal___owner + children___children___internal___type + children___internal___content + children___internal___contentDigest + children___internal___description + children___internal___fieldOwners + children___internal___ignoreType + children___internal___mediaType + children___internal___owner + children___internal___type + internal___content + internal___contentDigest + internal___description + internal___fieldOwners + internal___ignoreType + internal___mediaType + internal___owner + internal___type +} + +type ResourceGroupConnection { + totalCount: Int! + edges: [ResourceEdge!]! + nodes: [Resource!]! + pageInfo: PageInfo! + field: String! + fieldValue: String +} + +input ResourceSortInput { + fields: [ResourceFieldsEnum] + order: [SortOrderEnum] = [ASC] +} + +type ImageConnection { + totalCount: Int! + edges: [ImageEdge!]! + nodes: [Image!]! + pageInfo: PageInfo! + distinct(field: ImageFieldsEnum!): [String!]! + group(skip: Int, limit: Int, field: ImageFieldsEnum!): [ImageGroupConnection!]! +} + +type ImageEdge { + next: Image + node: Image! + previous: Image +} + +enum ImageFieldsEnum { + facet + link + idRaw + id + parent___id + parent___parent___id + parent___parent___parent___id + parent___parent___parent___children + parent___parent___children + parent___parent___children___id + parent___parent___children___children + parent___parent___internal___content + parent___parent___internal___contentDigest + parent___parent___internal___description + parent___parent___internal___fieldOwners + parent___parent___internal___ignoreType + parent___parent___internal___mediaType + parent___parent___internal___owner + parent___parent___internal___type + parent___children + parent___children___id + parent___children___parent___id + parent___children___parent___children + parent___children___children + parent___children___children___id + parent___children___children___children + parent___children___internal___content + parent___children___internal___contentDigest + parent___children___internal___description + parent___children___internal___fieldOwners + parent___children___internal___ignoreType + parent___children___internal___mediaType + parent___children___internal___owner + parent___children___internal___type + parent___internal___content + parent___internal___contentDigest + parent___internal___description + parent___internal___fieldOwners + parent___internal___ignoreType + parent___internal___mediaType + parent___internal___owner + parent___internal___type + children + children___id + children___parent___id + children___parent___parent___id + children___parent___parent___children + children___parent___children + children___parent___children___id + children___parent___children___children + children___parent___internal___content + children___parent___internal___contentDigest + children___parent___internal___description + children___parent___internal___fieldOwners + children___parent___internal___ignoreType + children___parent___internal___mediaType + children___parent___internal___owner + children___parent___internal___type + children___children + children___children___id + children___children___parent___id + children___children___parent___children + children___children___children + children___children___children___id + children___children___children___children + children___children___internal___content + children___children___internal___contentDigest + children___children___internal___description + children___children___internal___fieldOwners + children___children___internal___ignoreType + children___children___internal___mediaType + children___children___internal___owner + children___children___internal___type + children___internal___content + children___internal___contentDigest + children___internal___description + children___internal___fieldOwners + children___internal___ignoreType + children___internal___mediaType + children___internal___owner + children___internal___type + internal___content + internal___contentDigest + internal___description + internal___fieldOwners + internal___ignoreType + internal___mediaType + internal___owner + internal___type +} + +type ImageGroupConnection { + totalCount: Int! + edges: [ImageEdge!]! + nodes: [Image!]! + pageInfo: PageInfo! + field: String! + fieldValue: String +} + +input ImageSortInput { + fields: [ImageFieldsEnum] + order: [SortOrderEnum] = [ASC] +} + +type AnimeSeriesConnection { + totalCount: Int! + edges: [AnimeSeriesEdge!]! + nodes: [AnimeSeries!]! + pageInfo: PageInfo! + distinct(field: AnimeSeriesFieldsEnum!): [String!]! + group(skip: Int, limit: Int, field: AnimeSeriesFieldsEnum!): [AnimeSeriesGroupConnection!]! +} + +type AnimeSeriesEdge { + next: AnimeSeries + node: AnimeSeries! + previous: AnimeSeries +} + +enum AnimeSeriesFieldsEnum { + anime___name + anime___slug + anime___year + anime___season + anime___synopsis + anime___synonyms + anime___synonyms___text + anime___synonyms___anime___name + anime___synonyms___anime___slug + anime___synonyms___anime___year + anime___synonyms___anime___season + anime___synonyms___anime___synopsis + anime___synonyms___anime___synonyms + anime___synonyms___anime___themes + anime___synonyms___anime___series + anime___synonyms___anime___resources + anime___synonyms___anime___images + anime___synonyms___anime___idRaw + anime___synonyms___anime___id + anime___synonyms___anime___children + anime___synonyms___idRaw + anime___synonyms___id + anime___synonyms___parent___id + anime___synonyms___parent___children + anime___synonyms___children + anime___synonyms___children___id + anime___synonyms___children___children + anime___synonyms___internal___content + anime___synonyms___internal___contentDigest + anime___synonyms___internal___description + anime___synonyms___internal___fieldOwners + anime___synonyms___internal___ignoreType + anime___synonyms___internal___mediaType + anime___synonyms___internal___owner + anime___synonyms___internal___type + anime___themes + anime___themes___slug + anime___themes___group + anime___themes___song___title + anime___themes___song___themes + anime___themes___song___performances + anime___themes___song___idRaw + anime___themes___song___id + anime___themes___song___children + anime___themes___anime___name + anime___themes___anime___slug + anime___themes___anime___year + anime___themes___anime___season + anime___themes___anime___synopsis + anime___themes___anime___synonyms + anime___themes___anime___themes + anime___themes___anime___series + anime___themes___anime___resources + anime___themes___anime___images + anime___themes___anime___idRaw + anime___themes___anime___id + anime___themes___anime___children + anime___themes___entries + anime___themes___entries___version + anime___themes___entries___episodes + anime___themes___entries___nsfw + anime___themes___entries___spoiler + anime___themes___entries___videos + anime___themes___entries___idRaw + anime___themes___entries___id + anime___themes___entries___children + anime___themes___idRaw + anime___themes___id + anime___themes___parent___id + anime___themes___parent___children + anime___themes___children + anime___themes___children___id + anime___themes___children___children + anime___themes___internal___content + anime___themes___internal___contentDigest + anime___themes___internal___description + anime___themes___internal___fieldOwners + anime___themes___internal___ignoreType + anime___themes___internal___mediaType + anime___themes___internal___owner + anime___themes___internal___type + anime___series + anime___series___slug + anime___series___name + anime___series___anime + anime___series___anime___name + anime___series___anime___slug + anime___series___anime___year + anime___series___anime___season + anime___series___anime___synopsis + anime___series___anime___synonyms + anime___series___anime___themes + anime___series___anime___series + anime___series___anime___resources + anime___series___anime___images + anime___series___anime___idRaw + anime___series___anime___id + anime___series___anime___children + anime___series___idRaw + anime___series___id + anime___series___parent___id + anime___series___parent___children + anime___series___children + anime___series___children___id + anime___series___children___children + anime___series___internal___content + anime___series___internal___contentDigest + anime___series___internal___description + anime___series___internal___fieldOwners + anime___series___internal___ignoreType + anime___series___internal___mediaType + anime___series___internal___owner + anime___series___internal___type + anime___resources + anime___resources___link + anime___resources___site + anime___resources___idRaw + anime___resources___id + anime___resources___parent___id + anime___resources___parent___children + anime___resources___children + anime___resources___children___id + anime___resources___children___children + anime___resources___internal___content + anime___resources___internal___contentDigest + anime___resources___internal___description + anime___resources___internal___fieldOwners + anime___resources___internal___ignoreType + anime___resources___internal___mediaType + anime___resources___internal___owner + anime___resources___internal___type + anime___images + anime___images___facet + anime___images___link + anime___images___idRaw + anime___images___id + anime___images___parent___id + anime___images___parent___children + anime___images___children + anime___images___children___id + anime___images___children___children + anime___images___internal___content + anime___images___internal___contentDigest + anime___images___internal___description + anime___images___internal___fieldOwners + anime___images___internal___ignoreType + anime___images___internal___mediaType + anime___images___internal___owner + anime___images___internal___type + anime___idRaw + anime___id + anime___parent___id + anime___parent___parent___id + anime___parent___parent___children + anime___parent___children + anime___parent___children___id + anime___parent___children___children + anime___parent___internal___content + anime___parent___internal___contentDigest + anime___parent___internal___description + anime___parent___internal___fieldOwners + anime___parent___internal___ignoreType + anime___parent___internal___mediaType + anime___parent___internal___owner + anime___parent___internal___type + anime___children + anime___children___id + anime___children___parent___id + anime___children___parent___children + anime___children___children + anime___children___children___id + anime___children___children___children + anime___children___internal___content + anime___children___internal___contentDigest + anime___children___internal___description + anime___children___internal___fieldOwners + anime___children___internal___ignoreType + anime___children___internal___mediaType + anime___children___internal___owner + anime___children___internal___type + anime___internal___content + anime___internal___contentDigest + anime___internal___description + anime___internal___fieldOwners + anime___internal___ignoreType + anime___internal___mediaType + anime___internal___owner + anime___internal___type + series___slug + series___name + series___anime + series___anime___name + series___anime___slug + series___anime___year + series___anime___season + series___anime___synopsis + series___anime___synonyms + series___anime___synonyms___text + series___anime___synonyms___idRaw + series___anime___synonyms___id + series___anime___synonyms___children + series___anime___themes + series___anime___themes___slug + series___anime___themes___group + series___anime___themes___entries + series___anime___themes___idRaw + series___anime___themes___id + series___anime___themes___children + series___anime___series + series___anime___series___slug + series___anime___series___name + series___anime___series___anime + series___anime___series___idRaw + series___anime___series___id + series___anime___series___children + series___anime___resources + series___anime___resources___link + series___anime___resources___site + series___anime___resources___idRaw + series___anime___resources___id + series___anime___resources___children + series___anime___images + series___anime___images___facet + series___anime___images___link + series___anime___images___idRaw + series___anime___images___id + series___anime___images___children + series___anime___idRaw + series___anime___id + series___anime___parent___id + series___anime___parent___children + series___anime___children + series___anime___children___id + series___anime___children___children + series___anime___internal___content + series___anime___internal___contentDigest + series___anime___internal___description + series___anime___internal___fieldOwners + series___anime___internal___ignoreType + series___anime___internal___mediaType + series___anime___internal___owner + series___anime___internal___type + series___idRaw + series___id + series___parent___id + series___parent___parent___id + series___parent___parent___children + series___parent___children + series___parent___children___id + series___parent___children___children + series___parent___internal___content + series___parent___internal___contentDigest + series___parent___internal___description + series___parent___internal___fieldOwners + series___parent___internal___ignoreType + series___parent___internal___mediaType + series___parent___internal___owner + series___parent___internal___type + series___children + series___children___id + series___children___parent___id + series___children___parent___children + series___children___children + series___children___children___id + series___children___children___children + series___children___internal___content + series___children___internal___contentDigest + series___children___internal___description + series___children___internal___fieldOwners + series___children___internal___ignoreType + series___children___internal___mediaType + series___children___internal___owner + series___children___internal___type + series___internal___content + series___internal___contentDigest + series___internal___description + series___internal___fieldOwners + series___internal___ignoreType + series___internal___mediaType + series___internal___owner + series___internal___type + id + parent___id + parent___parent___id + parent___parent___parent___id + parent___parent___parent___children + parent___parent___children + parent___parent___children___id + parent___parent___children___children + parent___parent___internal___content + parent___parent___internal___contentDigest + parent___parent___internal___description + parent___parent___internal___fieldOwners + parent___parent___internal___ignoreType + parent___parent___internal___mediaType + parent___parent___internal___owner + parent___parent___internal___type + parent___children + parent___children___id + parent___children___parent___id + parent___children___parent___children + parent___children___children + parent___children___children___id + parent___children___children___children + parent___children___internal___content + parent___children___internal___contentDigest + parent___children___internal___description + parent___children___internal___fieldOwners + parent___children___internal___ignoreType + parent___children___internal___mediaType + parent___children___internal___owner + parent___children___internal___type + parent___internal___content + parent___internal___contentDigest + parent___internal___description + parent___internal___fieldOwners + parent___internal___ignoreType + parent___internal___mediaType + parent___internal___owner + parent___internal___type + children + children___id + children___parent___id + children___parent___parent___id + children___parent___parent___children + children___parent___children + children___parent___children___id + children___parent___children___children + children___parent___internal___content + children___parent___internal___contentDigest + children___parent___internal___description + children___parent___internal___fieldOwners + children___parent___internal___ignoreType + children___parent___internal___mediaType + children___parent___internal___owner + children___parent___internal___type + children___children + children___children___id + children___children___parent___id + children___children___parent___children + children___children___children + children___children___children___id + children___children___children___children + children___children___internal___content + children___children___internal___contentDigest + children___children___internal___description + children___children___internal___fieldOwners + children___children___internal___ignoreType + children___children___internal___mediaType + children___children___internal___owner + children___children___internal___type + children___internal___content + children___internal___contentDigest + children___internal___description + children___internal___fieldOwners + children___internal___ignoreType + children___internal___mediaType + children___internal___owner + children___internal___type + internal___content + internal___contentDigest + internal___description + internal___fieldOwners + internal___ignoreType + internal___mediaType + internal___owner + internal___type +} + +type AnimeSeriesGroupConnection { + totalCount: Int! + edges: [AnimeSeriesEdge!]! + nodes: [AnimeSeries!]! + pageInfo: PageInfo! + field: String! + fieldValue: String +} + +input AnimeSeriesFilterInput { + anime: AnimeFilterInput + series: SeriesFilterInput + id: StringQueryOperatorInput + parent: NodeFilterInput + children: NodeFilterListInput + internal: InternalFilterInput +} + +input AnimeSeriesSortInput { + fields: [AnimeSeriesFieldsEnum] + order: [SortOrderEnum] = [ASC] +} + +type EntryVideoConnection { + totalCount: Int! + edges: [EntryVideoEdge!]! + nodes: [EntryVideo!]! + pageInfo: PageInfo! + distinct(field: EntryVideoFieldsEnum!): [String!]! + group(skip: Int, limit: Int, field: EntryVideoFieldsEnum!): [EntryVideoGroupConnection!]! +} + +type EntryVideoEdge { + next: EntryVideo + node: EntryVideo! + previous: EntryVideo +} + +enum EntryVideoFieldsEnum { + entry___version + entry___episodes + entry___nsfw + entry___spoiler + entry___theme___slug + entry___theme___group + entry___theme___song___title + entry___theme___song___themes + entry___theme___song___performances + entry___theme___song___idRaw + entry___theme___song___id + entry___theme___song___children + entry___theme___anime___name + entry___theme___anime___slug + entry___theme___anime___year + entry___theme___anime___season + entry___theme___anime___synopsis + entry___theme___anime___synonyms + entry___theme___anime___themes + entry___theme___anime___series + entry___theme___anime___resources + entry___theme___anime___images + entry___theme___anime___idRaw + entry___theme___anime___id + entry___theme___anime___children + entry___theme___entries + entry___theme___entries___version + entry___theme___entries___episodes + entry___theme___entries___nsfw + entry___theme___entries___spoiler + entry___theme___entries___videos + entry___theme___entries___idRaw + entry___theme___entries___id + entry___theme___entries___children + entry___theme___idRaw + entry___theme___id + entry___theme___parent___id + entry___theme___parent___children + entry___theme___children + entry___theme___children___id + entry___theme___children___children + entry___theme___internal___content + entry___theme___internal___contentDigest + entry___theme___internal___description + entry___theme___internal___fieldOwners + entry___theme___internal___ignoreType + entry___theme___internal___mediaType + entry___theme___internal___owner + entry___theme___internal___type + entry___videos + entry___videos___filename + entry___videos___basename + entry___videos___link + entry___videos___resolution + entry___videos___nc + entry___videos___subbed + entry___videos___lyrics + entry___videos___uncen + entry___videos___source + entry___videos___overlap + entry___videos___tags + entry___videos___entries + entry___videos___entries___version + entry___videos___entries___episodes + entry___videos___entries___nsfw + entry___videos___entries___spoiler + entry___videos___entries___videos + entry___videos___entries___idRaw + entry___videos___entries___id + entry___videos___entries___children + entry___videos___idRaw + entry___videos___id + entry___videos___parent___id + entry___videos___parent___children + entry___videos___children + entry___videos___children___id + entry___videos___children___children + entry___videos___internal___content + entry___videos___internal___contentDigest + entry___videos___internal___description + entry___videos___internal___fieldOwners + entry___videos___internal___ignoreType + entry___videos___internal___mediaType + entry___videos___internal___owner + entry___videos___internal___type + entry___idRaw + entry___id + entry___parent___id + entry___parent___parent___id + entry___parent___parent___children + entry___parent___children + entry___parent___children___id + entry___parent___children___children + entry___parent___internal___content + entry___parent___internal___contentDigest + entry___parent___internal___description + entry___parent___internal___fieldOwners + entry___parent___internal___ignoreType + entry___parent___internal___mediaType + entry___parent___internal___owner + entry___parent___internal___type + entry___children + entry___children___id + entry___children___parent___id + entry___children___parent___children + entry___children___children + entry___children___children___id + entry___children___children___children + entry___children___internal___content + entry___children___internal___contentDigest + entry___children___internal___description + entry___children___internal___fieldOwners + entry___children___internal___ignoreType + entry___children___internal___mediaType + entry___children___internal___owner + entry___children___internal___type + entry___internal___content + entry___internal___contentDigest + entry___internal___description + entry___internal___fieldOwners + entry___internal___ignoreType + entry___internal___mediaType + entry___internal___owner + entry___internal___type + video___filename + video___basename + video___link + video___resolution + video___nc + video___subbed + video___lyrics + video___uncen + video___source + video___overlap + video___tags + video___entries + video___entries___version + video___entries___episodes + video___entries___nsfw + video___entries___spoiler + video___entries___theme___slug + video___entries___theme___group + video___entries___theme___entries + video___entries___theme___idRaw + video___entries___theme___id + video___entries___theme___children + video___entries___videos + video___entries___videos___filename + video___entries___videos___basename + video___entries___videos___link + video___entries___videos___resolution + video___entries___videos___nc + video___entries___videos___subbed + video___entries___videos___lyrics + video___entries___videos___uncen + video___entries___videos___source + video___entries___videos___overlap + video___entries___videos___tags + video___entries___videos___entries + video___entries___videos___idRaw + video___entries___videos___id + video___entries___videos___children + video___entries___idRaw + video___entries___id + video___entries___parent___id + video___entries___parent___children + video___entries___children + video___entries___children___id + video___entries___children___children + video___entries___internal___content + video___entries___internal___contentDigest + video___entries___internal___description + video___entries___internal___fieldOwners + video___entries___internal___ignoreType + video___entries___internal___mediaType + video___entries___internal___owner + video___entries___internal___type + video___idRaw + video___id + video___parent___id + video___parent___parent___id + video___parent___parent___children + video___parent___children + video___parent___children___id + video___parent___children___children + video___parent___internal___content + video___parent___internal___contentDigest + video___parent___internal___description + video___parent___internal___fieldOwners + video___parent___internal___ignoreType + video___parent___internal___mediaType + video___parent___internal___owner + video___parent___internal___type + video___children + video___children___id + video___children___parent___id + video___children___parent___children + video___children___children + video___children___children___id + video___children___children___children + video___children___internal___content + video___children___internal___contentDigest + video___children___internal___description + video___children___internal___fieldOwners + video___children___internal___ignoreType + video___children___internal___mediaType + video___children___internal___owner + video___children___internal___type + video___internal___content + video___internal___contentDigest + video___internal___description + video___internal___fieldOwners + video___internal___ignoreType + video___internal___mediaType + video___internal___owner + video___internal___type + id + parent___id + parent___parent___id + parent___parent___parent___id + parent___parent___parent___children + parent___parent___children + parent___parent___children___id + parent___parent___children___children + parent___parent___internal___content + parent___parent___internal___contentDigest + parent___parent___internal___description + parent___parent___internal___fieldOwners + parent___parent___internal___ignoreType + parent___parent___internal___mediaType + parent___parent___internal___owner + parent___parent___internal___type + parent___children + parent___children___id + parent___children___parent___id + parent___children___parent___children + parent___children___children + parent___children___children___id + parent___children___children___children + parent___children___internal___content + parent___children___internal___contentDigest + parent___children___internal___description + parent___children___internal___fieldOwners + parent___children___internal___ignoreType + parent___children___internal___mediaType + parent___children___internal___owner + parent___children___internal___type + parent___internal___content + parent___internal___contentDigest + parent___internal___description + parent___internal___fieldOwners + parent___internal___ignoreType + parent___internal___mediaType + parent___internal___owner + parent___internal___type + children + children___id + children___parent___id + children___parent___parent___id + children___parent___parent___children + children___parent___children + children___parent___children___id + children___parent___children___children + children___parent___internal___content + children___parent___internal___contentDigest + children___parent___internal___description + children___parent___internal___fieldOwners + children___parent___internal___ignoreType + children___parent___internal___mediaType + children___parent___internal___owner + children___parent___internal___type + children___children + children___children___id + children___children___parent___id + children___children___parent___children + children___children___children + children___children___children___id + children___children___children___children + children___children___internal___content + children___children___internal___contentDigest + children___children___internal___description + children___children___internal___fieldOwners + children___children___internal___ignoreType + children___children___internal___mediaType + children___children___internal___owner + children___children___internal___type + children___internal___content + children___internal___contentDigest + children___internal___description + children___internal___fieldOwners + children___internal___ignoreType + children___internal___mediaType + children___internal___owner + children___internal___type + internal___content + internal___contentDigest + internal___description + internal___fieldOwners + internal___ignoreType + internal___mediaType + internal___owner + internal___type +} + +type EntryVideoGroupConnection { + totalCount: Int! + edges: [EntryVideoEdge!]! + nodes: [EntryVideo!]! + pageInfo: PageInfo! + field: String! + fieldValue: String +} + +input EntryVideoFilterInput { + entry: EntryFilterInput + video: VideoFilterInput + id: StringQueryOperatorInput + parent: NodeFilterInput + children: NodeFilterListInput + internal: InternalFilterInput +} + +input EntryVideoSortInput { + fields: [EntryVideoFieldsEnum] + order: [SortOrderEnum] = [ASC] +} + +type AnimeResourceConnection { + totalCount: Int! + edges: [AnimeResourceEdge!]! + nodes: [AnimeResource!]! + pageInfo: PageInfo! + distinct(field: AnimeResourceFieldsEnum!): [String!]! + group(skip: Int, limit: Int, field: AnimeResourceFieldsEnum!): [AnimeResourceGroupConnection!]! +} + +type AnimeResourceEdge { + next: AnimeResource + node: AnimeResource! + previous: AnimeResource +} + +enum AnimeResourceFieldsEnum { + anime___name + anime___slug + anime___year + anime___season + anime___synopsis + anime___synonyms + anime___synonyms___text + anime___synonyms___anime___name + anime___synonyms___anime___slug + anime___synonyms___anime___year + anime___synonyms___anime___season + anime___synonyms___anime___synopsis + anime___synonyms___anime___synonyms + anime___synonyms___anime___themes + anime___synonyms___anime___series + anime___synonyms___anime___resources + anime___synonyms___anime___images + anime___synonyms___anime___idRaw + anime___synonyms___anime___id + anime___synonyms___anime___children + anime___synonyms___idRaw + anime___synonyms___id + anime___synonyms___parent___id + anime___synonyms___parent___children + anime___synonyms___children + anime___synonyms___children___id + anime___synonyms___children___children + anime___synonyms___internal___content + anime___synonyms___internal___contentDigest + anime___synonyms___internal___description + anime___synonyms___internal___fieldOwners + anime___synonyms___internal___ignoreType + anime___synonyms___internal___mediaType + anime___synonyms___internal___owner + anime___synonyms___internal___type + anime___themes + anime___themes___slug + anime___themes___group + anime___themes___song___title + anime___themes___song___themes + anime___themes___song___performances + anime___themes___song___idRaw + anime___themes___song___id + anime___themes___song___children + anime___themes___anime___name + anime___themes___anime___slug + anime___themes___anime___year + anime___themes___anime___season + anime___themes___anime___synopsis + anime___themes___anime___synonyms + anime___themes___anime___themes + anime___themes___anime___series + anime___themes___anime___resources + anime___themes___anime___images + anime___themes___anime___idRaw + anime___themes___anime___id + anime___themes___anime___children + anime___themes___entries + anime___themes___entries___version + anime___themes___entries___episodes + anime___themes___entries___nsfw + anime___themes___entries___spoiler + anime___themes___entries___videos + anime___themes___entries___idRaw + anime___themes___entries___id + anime___themes___entries___children + anime___themes___idRaw + anime___themes___id + anime___themes___parent___id + anime___themes___parent___children + anime___themes___children + anime___themes___children___id + anime___themes___children___children + anime___themes___internal___content + anime___themes___internal___contentDigest + anime___themes___internal___description + anime___themes___internal___fieldOwners + anime___themes___internal___ignoreType + anime___themes___internal___mediaType + anime___themes___internal___owner + anime___themes___internal___type + anime___series + anime___series___slug + anime___series___name + anime___series___anime + anime___series___anime___name + anime___series___anime___slug + anime___series___anime___year + anime___series___anime___season + anime___series___anime___synopsis + anime___series___anime___synonyms + anime___series___anime___themes + anime___series___anime___series + anime___series___anime___resources + anime___series___anime___images + anime___series___anime___idRaw + anime___series___anime___id + anime___series___anime___children + anime___series___idRaw + anime___series___id + anime___series___parent___id + anime___series___parent___children + anime___series___children + anime___series___children___id + anime___series___children___children + anime___series___internal___content + anime___series___internal___contentDigest + anime___series___internal___description + anime___series___internal___fieldOwners + anime___series___internal___ignoreType + anime___series___internal___mediaType + anime___series___internal___owner + anime___series___internal___type + anime___resources + anime___resources___link + anime___resources___site + anime___resources___idRaw + anime___resources___id + anime___resources___parent___id + anime___resources___parent___children + anime___resources___children + anime___resources___children___id + anime___resources___children___children + anime___resources___internal___content + anime___resources___internal___contentDigest + anime___resources___internal___description + anime___resources___internal___fieldOwners + anime___resources___internal___ignoreType + anime___resources___internal___mediaType + anime___resources___internal___owner + anime___resources___internal___type + anime___images + anime___images___facet + anime___images___link + anime___images___idRaw + anime___images___id + anime___images___parent___id + anime___images___parent___children + anime___images___children + anime___images___children___id + anime___images___children___children + anime___images___internal___content + anime___images___internal___contentDigest + anime___images___internal___description + anime___images___internal___fieldOwners + anime___images___internal___ignoreType + anime___images___internal___mediaType + anime___images___internal___owner + anime___images___internal___type + anime___idRaw + anime___id + anime___parent___id + anime___parent___parent___id + anime___parent___parent___children + anime___parent___children + anime___parent___children___id + anime___parent___children___children + anime___parent___internal___content + anime___parent___internal___contentDigest + anime___parent___internal___description + anime___parent___internal___fieldOwners + anime___parent___internal___ignoreType + anime___parent___internal___mediaType + anime___parent___internal___owner + anime___parent___internal___type + anime___children + anime___children___id + anime___children___parent___id + anime___children___parent___children + anime___children___children + anime___children___children___id + anime___children___children___children + anime___children___internal___content + anime___children___internal___contentDigest + anime___children___internal___description + anime___children___internal___fieldOwners + anime___children___internal___ignoreType + anime___children___internal___mediaType + anime___children___internal___owner + anime___children___internal___type + anime___internal___content + anime___internal___contentDigest + anime___internal___description + anime___internal___fieldOwners + anime___internal___ignoreType + anime___internal___mediaType + anime___internal___owner + anime___internal___type + resource___link + resource___site + resource___idRaw + resource___id + resource___parent___id + resource___parent___parent___id + resource___parent___parent___children + resource___parent___children + resource___parent___children___id + resource___parent___children___children + resource___parent___internal___content + resource___parent___internal___contentDigest + resource___parent___internal___description + resource___parent___internal___fieldOwners + resource___parent___internal___ignoreType + resource___parent___internal___mediaType + resource___parent___internal___owner + resource___parent___internal___type + resource___children + resource___children___id + resource___children___parent___id + resource___children___parent___children + resource___children___children + resource___children___children___id + resource___children___children___children + resource___children___internal___content + resource___children___internal___contentDigest + resource___children___internal___description + resource___children___internal___fieldOwners + resource___children___internal___ignoreType + resource___children___internal___mediaType + resource___children___internal___owner + resource___children___internal___type + resource___internal___content + resource___internal___contentDigest + resource___internal___description + resource___internal___fieldOwners + resource___internal___ignoreType + resource___internal___mediaType + resource___internal___owner + resource___internal___type + id + parent___id + parent___parent___id + parent___parent___parent___id + parent___parent___parent___children + parent___parent___children + parent___parent___children___id + parent___parent___children___children + parent___parent___internal___content + parent___parent___internal___contentDigest + parent___parent___internal___description + parent___parent___internal___fieldOwners + parent___parent___internal___ignoreType + parent___parent___internal___mediaType + parent___parent___internal___owner + parent___parent___internal___type + parent___children + parent___children___id + parent___children___parent___id + parent___children___parent___children + parent___children___children + parent___children___children___id + parent___children___children___children + parent___children___internal___content + parent___children___internal___contentDigest + parent___children___internal___description + parent___children___internal___fieldOwners + parent___children___internal___ignoreType + parent___children___internal___mediaType + parent___children___internal___owner + parent___children___internal___type + parent___internal___content + parent___internal___contentDigest + parent___internal___description + parent___internal___fieldOwners + parent___internal___ignoreType + parent___internal___mediaType + parent___internal___owner + parent___internal___type + children + children___id + children___parent___id + children___parent___parent___id + children___parent___parent___children + children___parent___children + children___parent___children___id + children___parent___children___children + children___parent___internal___content + children___parent___internal___contentDigest + children___parent___internal___description + children___parent___internal___fieldOwners + children___parent___internal___ignoreType + children___parent___internal___mediaType + children___parent___internal___owner + children___parent___internal___type + children___children + children___children___id + children___children___parent___id + children___children___parent___children + children___children___children + children___children___children___id + children___children___children___children + children___children___internal___content + children___children___internal___contentDigest + children___children___internal___description + children___children___internal___fieldOwners + children___children___internal___ignoreType + children___children___internal___mediaType + children___children___internal___owner + children___children___internal___type + children___internal___content + children___internal___contentDigest + children___internal___description + children___internal___fieldOwners + children___internal___ignoreType + children___internal___mediaType + children___internal___owner + children___internal___type + internal___content + internal___contentDigest + internal___description + internal___fieldOwners + internal___ignoreType + internal___mediaType + internal___owner + internal___type +} + +type AnimeResourceGroupConnection { + totalCount: Int! + edges: [AnimeResourceEdge!]! + nodes: [AnimeResource!]! + pageInfo: PageInfo! + field: String! + fieldValue: String +} + +input AnimeResourceFilterInput { + anime: AnimeFilterInput + resource: ResourceFilterInput + id: StringQueryOperatorInput + parent: NodeFilterInput + children: NodeFilterListInput + internal: InternalFilterInput +} + +input AnimeResourceSortInput { + fields: [AnimeResourceFieldsEnum] + order: [SortOrderEnum] = [ASC] +} + +type ArtistResourceConnection { + totalCount: Int! + edges: [ArtistResourceEdge!]! + nodes: [ArtistResource!]! + pageInfo: PageInfo! + distinct(field: ArtistResourceFieldsEnum!): [String!]! + group(skip: Int, limit: Int, field: ArtistResourceFieldsEnum!): [ArtistResourceGroupConnection!]! +} + +type ArtistResourceEdge { + next: ArtistResource + node: ArtistResource! + previous: ArtistResource +} + +enum ArtistResourceFieldsEnum { + artist___slug + artist___name + artist___performances + artist___performances___song___title + artist___performances___song___themes + artist___performances___song___performances + artist___performances___song___idRaw + artist___performances___song___id + artist___performances___song___children + artist___performances___artist___slug + artist___performances___artist___name + artist___performances___artist___performances + artist___performances___artist___resources + artist___performances___artist___images + artist___performances___artist___idRaw + artist___performances___artist___id + artist___performances___artist___children + artist___performances___as + artist___performances___id + artist___performances___parent___id + artist___performances___parent___children + artist___performances___children + artist___performances___children___id + artist___performances___children___children + artist___performances___internal___content + artist___performances___internal___contentDigest + artist___performances___internal___description + artist___performances___internal___fieldOwners + artist___performances___internal___ignoreType + artist___performances___internal___mediaType + artist___performances___internal___owner + artist___performances___internal___type + artist___resources + artist___resources___link + artist___resources___site + artist___resources___idRaw + artist___resources___id + artist___resources___parent___id + artist___resources___parent___children + artist___resources___children + artist___resources___children___id + artist___resources___children___children + artist___resources___internal___content + artist___resources___internal___contentDigest + artist___resources___internal___description + artist___resources___internal___fieldOwners + artist___resources___internal___ignoreType + artist___resources___internal___mediaType + artist___resources___internal___owner + artist___resources___internal___type + artist___images + artist___images___facet + artist___images___link + artist___images___idRaw + artist___images___id + artist___images___parent___id + artist___images___parent___children + artist___images___children + artist___images___children___id + artist___images___children___children + artist___images___internal___content + artist___images___internal___contentDigest + artist___images___internal___description + artist___images___internal___fieldOwners + artist___images___internal___ignoreType + artist___images___internal___mediaType + artist___images___internal___owner + artist___images___internal___type + artist___idRaw + artist___id + artist___parent___id + artist___parent___parent___id + artist___parent___parent___children + artist___parent___children + artist___parent___children___id + artist___parent___children___children + artist___parent___internal___content + artist___parent___internal___contentDigest + artist___parent___internal___description + artist___parent___internal___fieldOwners + artist___parent___internal___ignoreType + artist___parent___internal___mediaType + artist___parent___internal___owner + artist___parent___internal___type + artist___children + artist___children___id + artist___children___parent___id + artist___children___parent___children + artist___children___children + artist___children___children___id + artist___children___children___children + artist___children___internal___content + artist___children___internal___contentDigest + artist___children___internal___description + artist___children___internal___fieldOwners + artist___children___internal___ignoreType + artist___children___internal___mediaType + artist___children___internal___owner + artist___children___internal___type + artist___internal___content + artist___internal___contentDigest + artist___internal___description + artist___internal___fieldOwners + artist___internal___ignoreType + artist___internal___mediaType + artist___internal___owner + artist___internal___type + resource___link + resource___site + resource___idRaw + resource___id + resource___parent___id + resource___parent___parent___id + resource___parent___parent___children + resource___parent___children + resource___parent___children___id + resource___parent___children___children + resource___parent___internal___content + resource___parent___internal___contentDigest + resource___parent___internal___description + resource___parent___internal___fieldOwners + resource___parent___internal___ignoreType + resource___parent___internal___mediaType + resource___parent___internal___owner + resource___parent___internal___type + resource___children + resource___children___id + resource___children___parent___id + resource___children___parent___children + resource___children___children + resource___children___children___id + resource___children___children___children + resource___children___internal___content + resource___children___internal___contentDigest + resource___children___internal___description + resource___children___internal___fieldOwners + resource___children___internal___ignoreType + resource___children___internal___mediaType + resource___children___internal___owner + resource___children___internal___type + resource___internal___content + resource___internal___contentDigest + resource___internal___description + resource___internal___fieldOwners + resource___internal___ignoreType + resource___internal___mediaType + resource___internal___owner + resource___internal___type + id + parent___id + parent___parent___id + parent___parent___parent___id + parent___parent___parent___children + parent___parent___children + parent___parent___children___id + parent___parent___children___children + parent___parent___internal___content + parent___parent___internal___contentDigest + parent___parent___internal___description + parent___parent___internal___fieldOwners + parent___parent___internal___ignoreType + parent___parent___internal___mediaType + parent___parent___internal___owner + parent___parent___internal___type + parent___children + parent___children___id + parent___children___parent___id + parent___children___parent___children + parent___children___children + parent___children___children___id + parent___children___children___children + parent___children___internal___content + parent___children___internal___contentDigest + parent___children___internal___description + parent___children___internal___fieldOwners + parent___children___internal___ignoreType + parent___children___internal___mediaType + parent___children___internal___owner + parent___children___internal___type + parent___internal___content + parent___internal___contentDigest + parent___internal___description + parent___internal___fieldOwners + parent___internal___ignoreType + parent___internal___mediaType + parent___internal___owner + parent___internal___type + children + children___id + children___parent___id + children___parent___parent___id + children___parent___parent___children + children___parent___children + children___parent___children___id + children___parent___children___children + children___parent___internal___content + children___parent___internal___contentDigest + children___parent___internal___description + children___parent___internal___fieldOwners + children___parent___internal___ignoreType + children___parent___internal___mediaType + children___parent___internal___owner + children___parent___internal___type + children___children + children___children___id + children___children___parent___id + children___children___parent___children + children___children___children + children___children___children___id + children___children___children___children + children___children___internal___content + children___children___internal___contentDigest + children___children___internal___description + children___children___internal___fieldOwners + children___children___internal___ignoreType + children___children___internal___mediaType + children___children___internal___owner + children___children___internal___type + children___internal___content + children___internal___contentDigest + children___internal___description + children___internal___fieldOwners + children___internal___ignoreType + children___internal___mediaType + children___internal___owner + children___internal___type + internal___content + internal___contentDigest + internal___description + internal___fieldOwners + internal___ignoreType + internal___mediaType + internal___owner + internal___type +} + +type ArtistResourceGroupConnection { + totalCount: Int! + edges: [ArtistResourceEdge!]! + nodes: [ArtistResource!]! + pageInfo: PageInfo! + field: String! + fieldValue: String +} + +input ArtistResourceFilterInput { + artist: ArtistFilterInput + resource: ResourceFilterInput + id: StringQueryOperatorInput + parent: NodeFilterInput + children: NodeFilterListInput + internal: InternalFilterInput +} + +input ArtistResourceSortInput { + fields: [ArtistResourceFieldsEnum] + order: [SortOrderEnum] = [ASC] +} + +type AnimeImageConnection { + totalCount: Int! + edges: [AnimeImageEdge!]! + nodes: [AnimeImage!]! + pageInfo: PageInfo! + distinct(field: AnimeImageFieldsEnum!): [String!]! + group(skip: Int, limit: Int, field: AnimeImageFieldsEnum!): [AnimeImageGroupConnection!]! +} + +type AnimeImageEdge { + next: AnimeImage + node: AnimeImage! + previous: AnimeImage +} + +enum AnimeImageFieldsEnum { + anime___name + anime___slug + anime___year + anime___season + anime___synopsis + anime___synonyms + anime___synonyms___text + anime___synonyms___anime___name + anime___synonyms___anime___slug + anime___synonyms___anime___year + anime___synonyms___anime___season + anime___synonyms___anime___synopsis + anime___synonyms___anime___synonyms + anime___synonyms___anime___themes + anime___synonyms___anime___series + anime___synonyms___anime___resources + anime___synonyms___anime___images + anime___synonyms___anime___idRaw + anime___synonyms___anime___id + anime___synonyms___anime___children + anime___synonyms___idRaw + anime___synonyms___id + anime___synonyms___parent___id + anime___synonyms___parent___children + anime___synonyms___children + anime___synonyms___children___id + anime___synonyms___children___children + anime___synonyms___internal___content + anime___synonyms___internal___contentDigest + anime___synonyms___internal___description + anime___synonyms___internal___fieldOwners + anime___synonyms___internal___ignoreType + anime___synonyms___internal___mediaType + anime___synonyms___internal___owner + anime___synonyms___internal___type + anime___themes + anime___themes___slug + anime___themes___group + anime___themes___song___title + anime___themes___song___themes + anime___themes___song___performances + anime___themes___song___idRaw + anime___themes___song___id + anime___themes___song___children + anime___themes___anime___name + anime___themes___anime___slug + anime___themes___anime___year + anime___themes___anime___season + anime___themes___anime___synopsis + anime___themes___anime___synonyms + anime___themes___anime___themes + anime___themes___anime___series + anime___themes___anime___resources + anime___themes___anime___images + anime___themes___anime___idRaw + anime___themes___anime___id + anime___themes___anime___children + anime___themes___entries + anime___themes___entries___version + anime___themes___entries___episodes + anime___themes___entries___nsfw + anime___themes___entries___spoiler + anime___themes___entries___videos + anime___themes___entries___idRaw + anime___themes___entries___id + anime___themes___entries___children + anime___themes___idRaw + anime___themes___id + anime___themes___parent___id + anime___themes___parent___children + anime___themes___children + anime___themes___children___id + anime___themes___children___children + anime___themes___internal___content + anime___themes___internal___contentDigest + anime___themes___internal___description + anime___themes___internal___fieldOwners + anime___themes___internal___ignoreType + anime___themes___internal___mediaType + anime___themes___internal___owner + anime___themes___internal___type + anime___series + anime___series___slug + anime___series___name + anime___series___anime + anime___series___anime___name + anime___series___anime___slug + anime___series___anime___year + anime___series___anime___season + anime___series___anime___synopsis + anime___series___anime___synonyms + anime___series___anime___themes + anime___series___anime___series + anime___series___anime___resources + anime___series___anime___images + anime___series___anime___idRaw + anime___series___anime___id + anime___series___anime___children + anime___series___idRaw + anime___series___id + anime___series___parent___id + anime___series___parent___children + anime___series___children + anime___series___children___id + anime___series___children___children + anime___series___internal___content + anime___series___internal___contentDigest + anime___series___internal___description + anime___series___internal___fieldOwners + anime___series___internal___ignoreType + anime___series___internal___mediaType + anime___series___internal___owner + anime___series___internal___type + anime___resources + anime___resources___link + anime___resources___site + anime___resources___idRaw + anime___resources___id + anime___resources___parent___id + anime___resources___parent___children + anime___resources___children + anime___resources___children___id + anime___resources___children___children + anime___resources___internal___content + anime___resources___internal___contentDigest + anime___resources___internal___description + anime___resources___internal___fieldOwners + anime___resources___internal___ignoreType + anime___resources___internal___mediaType + anime___resources___internal___owner + anime___resources___internal___type + anime___images + anime___images___facet + anime___images___link + anime___images___idRaw + anime___images___id + anime___images___parent___id + anime___images___parent___children + anime___images___children + anime___images___children___id + anime___images___children___children + anime___images___internal___content + anime___images___internal___contentDigest + anime___images___internal___description + anime___images___internal___fieldOwners + anime___images___internal___ignoreType + anime___images___internal___mediaType + anime___images___internal___owner + anime___images___internal___type + anime___idRaw + anime___id + anime___parent___id + anime___parent___parent___id + anime___parent___parent___children + anime___parent___children + anime___parent___children___id + anime___parent___children___children + anime___parent___internal___content + anime___parent___internal___contentDigest + anime___parent___internal___description + anime___parent___internal___fieldOwners + anime___parent___internal___ignoreType + anime___parent___internal___mediaType + anime___parent___internal___owner + anime___parent___internal___type + anime___children + anime___children___id + anime___children___parent___id + anime___children___parent___children + anime___children___children + anime___children___children___id + anime___children___children___children + anime___children___internal___content + anime___children___internal___contentDigest + anime___children___internal___description + anime___children___internal___fieldOwners + anime___children___internal___ignoreType + anime___children___internal___mediaType + anime___children___internal___owner + anime___children___internal___type + anime___internal___content + anime___internal___contentDigest + anime___internal___description + anime___internal___fieldOwners + anime___internal___ignoreType + anime___internal___mediaType + anime___internal___owner + anime___internal___type + image___facet + image___link + image___idRaw + image___id + image___parent___id + image___parent___parent___id + image___parent___parent___children + image___parent___children + image___parent___children___id + image___parent___children___children + image___parent___internal___content + image___parent___internal___contentDigest + image___parent___internal___description + image___parent___internal___fieldOwners + image___parent___internal___ignoreType + image___parent___internal___mediaType + image___parent___internal___owner + image___parent___internal___type + image___children + image___children___id + image___children___parent___id + image___children___parent___children + image___children___children + image___children___children___id + image___children___children___children + image___children___internal___content + image___children___internal___contentDigest + image___children___internal___description + image___children___internal___fieldOwners + image___children___internal___ignoreType + image___children___internal___mediaType + image___children___internal___owner + image___children___internal___type + image___internal___content + image___internal___contentDigest + image___internal___description + image___internal___fieldOwners + image___internal___ignoreType + image___internal___mediaType + image___internal___owner + image___internal___type + id + parent___id + parent___parent___id + parent___parent___parent___id + parent___parent___parent___children + parent___parent___children + parent___parent___children___id + parent___parent___children___children + parent___parent___internal___content + parent___parent___internal___contentDigest + parent___parent___internal___description + parent___parent___internal___fieldOwners + parent___parent___internal___ignoreType + parent___parent___internal___mediaType + parent___parent___internal___owner + parent___parent___internal___type + parent___children + parent___children___id + parent___children___parent___id + parent___children___parent___children + parent___children___children + parent___children___children___id + parent___children___children___children + parent___children___internal___content + parent___children___internal___contentDigest + parent___children___internal___description + parent___children___internal___fieldOwners + parent___children___internal___ignoreType + parent___children___internal___mediaType + parent___children___internal___owner + parent___children___internal___type + parent___internal___content + parent___internal___contentDigest + parent___internal___description + parent___internal___fieldOwners + parent___internal___ignoreType + parent___internal___mediaType + parent___internal___owner + parent___internal___type + children + children___id + children___parent___id + children___parent___parent___id + children___parent___parent___children + children___parent___children + children___parent___children___id + children___parent___children___children + children___parent___internal___content + children___parent___internal___contentDigest + children___parent___internal___description + children___parent___internal___fieldOwners + children___parent___internal___ignoreType + children___parent___internal___mediaType + children___parent___internal___owner + children___parent___internal___type + children___children + children___children___id + children___children___parent___id + children___children___parent___children + children___children___children + children___children___children___id + children___children___children___children + children___children___internal___content + children___children___internal___contentDigest + children___children___internal___description + children___children___internal___fieldOwners + children___children___internal___ignoreType + children___children___internal___mediaType + children___children___internal___owner + children___children___internal___type + children___internal___content + children___internal___contentDigest + children___internal___description + children___internal___fieldOwners + children___internal___ignoreType + children___internal___mediaType + children___internal___owner + children___internal___type + internal___content + internal___contentDigest + internal___description + internal___fieldOwners + internal___ignoreType + internal___mediaType + internal___owner + internal___type +} + +type AnimeImageGroupConnection { + totalCount: Int! + edges: [AnimeImageEdge!]! + nodes: [AnimeImage!]! + pageInfo: PageInfo! + field: String! + fieldValue: String +} + +input AnimeImageFilterInput { + anime: AnimeFilterInput + image: ImageFilterInput + id: StringQueryOperatorInput + parent: NodeFilterInput + children: NodeFilterListInput + internal: InternalFilterInput +} + +input AnimeImageSortInput { + fields: [AnimeImageFieldsEnum] + order: [SortOrderEnum] = [ASC] +} + +type ArtistImageConnection { + totalCount: Int! + edges: [ArtistImageEdge!]! + nodes: [ArtistImage!]! + pageInfo: PageInfo! + distinct(field: ArtistImageFieldsEnum!): [String!]! + group(skip: Int, limit: Int, field: ArtistImageFieldsEnum!): [ArtistImageGroupConnection!]! +} + +type ArtistImageEdge { + next: ArtistImage + node: ArtistImage! + previous: ArtistImage +} + +enum ArtistImageFieldsEnum { + artist___slug + artist___name + artist___performances + artist___performances___song___title + artist___performances___song___themes + artist___performances___song___performances + artist___performances___song___idRaw + artist___performances___song___id + artist___performances___song___children + artist___performances___artist___slug + artist___performances___artist___name + artist___performances___artist___performances + artist___performances___artist___resources + artist___performances___artist___images + artist___performances___artist___idRaw + artist___performances___artist___id + artist___performances___artist___children + artist___performances___as + artist___performances___id + artist___performances___parent___id + artist___performances___parent___children + artist___performances___children + artist___performances___children___id + artist___performances___children___children + artist___performances___internal___content + artist___performances___internal___contentDigest + artist___performances___internal___description + artist___performances___internal___fieldOwners + artist___performances___internal___ignoreType + artist___performances___internal___mediaType + artist___performances___internal___owner + artist___performances___internal___type + artist___resources + artist___resources___link + artist___resources___site + artist___resources___idRaw + artist___resources___id + artist___resources___parent___id + artist___resources___parent___children + artist___resources___children + artist___resources___children___id + artist___resources___children___children + artist___resources___internal___content + artist___resources___internal___contentDigest + artist___resources___internal___description + artist___resources___internal___fieldOwners + artist___resources___internal___ignoreType + artist___resources___internal___mediaType + artist___resources___internal___owner + artist___resources___internal___type + artist___images + artist___images___facet + artist___images___link + artist___images___idRaw + artist___images___id + artist___images___parent___id + artist___images___parent___children + artist___images___children + artist___images___children___id + artist___images___children___children + artist___images___internal___content + artist___images___internal___contentDigest + artist___images___internal___description + artist___images___internal___fieldOwners + artist___images___internal___ignoreType + artist___images___internal___mediaType + artist___images___internal___owner + artist___images___internal___type + artist___idRaw + artist___id + artist___parent___id + artist___parent___parent___id + artist___parent___parent___children + artist___parent___children + artist___parent___children___id + artist___parent___children___children + artist___parent___internal___content + artist___parent___internal___contentDigest + artist___parent___internal___description + artist___parent___internal___fieldOwners + artist___parent___internal___ignoreType + artist___parent___internal___mediaType + artist___parent___internal___owner + artist___parent___internal___type + artist___children + artist___children___id + artist___children___parent___id + artist___children___parent___children + artist___children___children + artist___children___children___id + artist___children___children___children + artist___children___internal___content + artist___children___internal___contentDigest + artist___children___internal___description + artist___children___internal___fieldOwners + artist___children___internal___ignoreType + artist___children___internal___mediaType + artist___children___internal___owner + artist___children___internal___type + artist___internal___content + artist___internal___contentDigest + artist___internal___description + artist___internal___fieldOwners + artist___internal___ignoreType + artist___internal___mediaType + artist___internal___owner + artist___internal___type + image___facet + image___link + image___idRaw + image___id + image___parent___id + image___parent___parent___id + image___parent___parent___children + image___parent___children + image___parent___children___id + image___parent___children___children + image___parent___internal___content + image___parent___internal___contentDigest + image___parent___internal___description + image___parent___internal___fieldOwners + image___parent___internal___ignoreType + image___parent___internal___mediaType + image___parent___internal___owner + image___parent___internal___type + image___children + image___children___id + image___children___parent___id + image___children___parent___children + image___children___children + image___children___children___id + image___children___children___children + image___children___internal___content + image___children___internal___contentDigest + image___children___internal___description + image___children___internal___fieldOwners + image___children___internal___ignoreType + image___children___internal___mediaType + image___children___internal___owner + image___children___internal___type + image___internal___content + image___internal___contentDigest + image___internal___description + image___internal___fieldOwners + image___internal___ignoreType + image___internal___mediaType + image___internal___owner + image___internal___type + id + parent___id + parent___parent___id + parent___parent___parent___id + parent___parent___parent___children + parent___parent___children + parent___parent___children___id + parent___parent___children___children + parent___parent___internal___content + parent___parent___internal___contentDigest + parent___parent___internal___description + parent___parent___internal___fieldOwners + parent___parent___internal___ignoreType + parent___parent___internal___mediaType + parent___parent___internal___owner + parent___parent___internal___type + parent___children + parent___children___id + parent___children___parent___id + parent___children___parent___children + parent___children___children + parent___children___children___id + parent___children___children___children + parent___children___internal___content + parent___children___internal___contentDigest + parent___children___internal___description + parent___children___internal___fieldOwners + parent___children___internal___ignoreType + parent___children___internal___mediaType + parent___children___internal___owner + parent___children___internal___type + parent___internal___content + parent___internal___contentDigest + parent___internal___description + parent___internal___fieldOwners + parent___internal___ignoreType + parent___internal___mediaType + parent___internal___owner + parent___internal___type + children + children___id + children___parent___id + children___parent___parent___id + children___parent___parent___children + children___parent___children + children___parent___children___id + children___parent___children___children + children___parent___internal___content + children___parent___internal___contentDigest + children___parent___internal___description + children___parent___internal___fieldOwners + children___parent___internal___ignoreType + children___parent___internal___mediaType + children___parent___internal___owner + children___parent___internal___type + children___children + children___children___id + children___children___parent___id + children___children___parent___children + children___children___children + children___children___children___id + children___children___children___children + children___children___internal___content + children___children___internal___contentDigest + children___children___internal___description + children___children___internal___fieldOwners + children___children___internal___ignoreType + children___children___internal___mediaType + children___children___internal___owner + children___children___internal___type + children___internal___content + children___internal___contentDigest + children___internal___description + children___internal___fieldOwners + children___internal___ignoreType + children___internal___mediaType + children___internal___owner + children___internal___type + internal___content + internal___contentDigest + internal___description + internal___fieldOwners + internal___ignoreType + internal___mediaType + internal___owner + internal___type +} + +type ArtistImageGroupConnection { + totalCount: Int! + edges: [ArtistImageEdge!]! + nodes: [ArtistImage!]! + pageInfo: PageInfo! + field: String! + fieldValue: String +} + +input ArtistImageFilterInput { + artist: ArtistFilterInput + image: ImageFilterInput + id: StringQueryOperatorInput + parent: NodeFilterInput + children: NodeFilterListInput + internal: InternalFilterInput +} + +input ArtistImageSortInput { + fields: [ArtistImageFieldsEnum] + order: [SortOrderEnum] = [ASC] +} + +type AnnouncementConnection { + totalCount: Int! + edges: [AnnouncementEdge!]! + nodes: [Announcement!]! + pageInfo: PageInfo! + distinct(field: AnnouncementFieldsEnum!): [String!]! + group(skip: Int, limit: Int, field: AnnouncementFieldsEnum!): [AnnouncementGroupConnection!]! +} + +type AnnouncementEdge { + next: Announcement + node: Announcement! + previous: Announcement +} + +enum AnnouncementFieldsEnum { + content + idRaw + id + parent___id + parent___parent___id + parent___parent___parent___id + parent___parent___parent___children + parent___parent___children + parent___parent___children___id + parent___parent___children___children + parent___parent___internal___content + parent___parent___internal___contentDigest + parent___parent___internal___description + parent___parent___internal___fieldOwners + parent___parent___internal___ignoreType + parent___parent___internal___mediaType + parent___parent___internal___owner + parent___parent___internal___type + parent___children + parent___children___id + parent___children___parent___id + parent___children___parent___children + parent___children___children + parent___children___children___id + parent___children___children___children + parent___children___internal___content + parent___children___internal___contentDigest + parent___children___internal___description + parent___children___internal___fieldOwners + parent___children___internal___ignoreType + parent___children___internal___mediaType + parent___children___internal___owner + parent___children___internal___type + parent___internal___content + parent___internal___contentDigest + parent___internal___description + parent___internal___fieldOwners + parent___internal___ignoreType + parent___internal___mediaType + parent___internal___owner + parent___internal___type + children + children___id + children___parent___id + children___parent___parent___id + children___parent___parent___children + children___parent___children + children___parent___children___id + children___parent___children___children + children___parent___internal___content + children___parent___internal___contentDigest + children___parent___internal___description + children___parent___internal___fieldOwners + children___parent___internal___ignoreType + children___parent___internal___mediaType + children___parent___internal___owner + children___parent___internal___type + children___children + children___children___id + children___children___parent___id + children___children___parent___children + children___children___children + children___children___children___id + children___children___children___children + children___children___internal___content + children___children___internal___contentDigest + children___children___internal___description + children___children___internal___fieldOwners + children___children___internal___ignoreType + children___children___internal___mediaType + children___children___internal___owner + children___children___internal___type + children___internal___content + children___internal___contentDigest + children___internal___description + children___internal___fieldOwners + children___internal___ignoreType + children___internal___mediaType + children___internal___owner + children___internal___type + internal___content + internal___contentDigest + internal___description + internal___fieldOwners + internal___ignoreType + internal___mediaType + internal___owner + internal___type +} + +type AnnouncementGroupConnection { + totalCount: Int! + edges: [AnnouncementEdge!]! + nodes: [Announcement!]! + pageInfo: PageInfo! + field: String! + fieldValue: String +} + +input AnnouncementFilterInput { + content: StringQueryOperatorInput + idRaw: IntQueryOperatorInput + id: StringQueryOperatorInput + parent: NodeFilterInput + children: NodeFilterListInput + internal: InternalFilterInput +} + +input AnnouncementSortInput { + fields: [AnnouncementFieldsEnum] + order: [SortOrderEnum] = [ASC] +} + +type SiteBuildMetadataConnection { + totalCount: Int! + edges: [SiteBuildMetadataEdge!]! + nodes: [SiteBuildMetadata!]! + pageInfo: PageInfo! + distinct(field: SiteBuildMetadataFieldsEnum!): [String!]! + group(skip: Int, limit: Int, field: SiteBuildMetadataFieldsEnum!): [SiteBuildMetadataGroupConnection!]! +} + +type SiteBuildMetadataEdge { + next: SiteBuildMetadata + node: SiteBuildMetadata! + previous: SiteBuildMetadata +} + +enum SiteBuildMetadataFieldsEnum { + id + parent___id + parent___parent___id + parent___parent___parent___id + parent___parent___parent___children + parent___parent___children + parent___parent___children___id + parent___parent___children___children + parent___parent___internal___content + parent___parent___internal___contentDigest + parent___parent___internal___description + parent___parent___internal___fieldOwners + parent___parent___internal___ignoreType + parent___parent___internal___mediaType + parent___parent___internal___owner + parent___parent___internal___type + parent___children + parent___children___id + parent___children___parent___id + parent___children___parent___children + parent___children___children + parent___children___children___id + parent___children___children___children + parent___children___internal___content + parent___children___internal___contentDigest + parent___children___internal___description + parent___children___internal___fieldOwners + parent___children___internal___ignoreType + parent___children___internal___mediaType + parent___children___internal___owner + parent___children___internal___type + parent___internal___content + parent___internal___contentDigest + parent___internal___description + parent___internal___fieldOwners + parent___internal___ignoreType + parent___internal___mediaType + parent___internal___owner + parent___internal___type + children + children___id + children___parent___id + children___parent___parent___id + children___parent___parent___children + children___parent___children + children___parent___children___id + children___parent___children___children + children___parent___internal___content + children___parent___internal___contentDigest + children___parent___internal___description + children___parent___internal___fieldOwners + children___parent___internal___ignoreType + children___parent___internal___mediaType + children___parent___internal___owner + children___parent___internal___type + children___children + children___children___id + children___children___parent___id + children___children___parent___children + children___children___children + children___children___children___id + children___children___children___children + children___children___internal___content + children___children___internal___contentDigest + children___children___internal___description + children___children___internal___fieldOwners + children___children___internal___ignoreType + children___children___internal___mediaType + children___children___internal___owner + children___children___internal___type + children___internal___content + children___internal___contentDigest + children___internal___description + children___internal___fieldOwners + children___internal___ignoreType + children___internal___mediaType + children___internal___owner + children___internal___type + internal___content + internal___contentDigest + internal___description + internal___fieldOwners + internal___ignoreType + internal___mediaType + internal___owner + internal___type + buildTime +} + +type SiteBuildMetadataGroupConnection { + totalCount: Int! + edges: [SiteBuildMetadataEdge!]! + nodes: [SiteBuildMetadata!]! + pageInfo: PageInfo! + field: String! + fieldValue: String +} + +input SiteBuildMetadataFilterInput { + id: StringQueryOperatorInput + parent: NodeFilterInput + children: NodeFilterListInput + internal: InternalFilterInput + buildTime: DateQueryOperatorInput +} + +input SiteBuildMetadataSortInput { + fields: [SiteBuildMetadataFieldsEnum] + order: [SortOrderEnum] = [ASC] +} + +type SitePluginConnection { + totalCount: Int! + edges: [SitePluginEdge!]! + nodes: [SitePlugin!]! + pageInfo: PageInfo! + distinct(field: SitePluginFieldsEnum!): [String!]! + group(skip: Int, limit: Int, field: SitePluginFieldsEnum!): [SitePluginGroupConnection!]! +} + +type SitePluginEdge { + next: SitePlugin + node: SitePlugin! + previous: SitePlugin +} + +enum SitePluginFieldsEnum { + id + parent___id + parent___parent___id + parent___parent___parent___id + parent___parent___parent___children + parent___parent___children + parent___parent___children___id + parent___parent___children___children + parent___parent___internal___content + parent___parent___internal___contentDigest + parent___parent___internal___description + parent___parent___internal___fieldOwners + parent___parent___internal___ignoreType + parent___parent___internal___mediaType + parent___parent___internal___owner + parent___parent___internal___type + parent___children + parent___children___id + parent___children___parent___id + parent___children___parent___children + parent___children___children + parent___children___children___id + parent___children___children___children + parent___children___internal___content + parent___children___internal___contentDigest + parent___children___internal___description + parent___children___internal___fieldOwners + parent___children___internal___ignoreType + parent___children___internal___mediaType + parent___children___internal___owner + parent___children___internal___type + parent___internal___content + parent___internal___contentDigest + parent___internal___description + parent___internal___fieldOwners + parent___internal___ignoreType + parent___internal___mediaType + parent___internal___owner + parent___internal___type + children + children___id + children___parent___id + children___parent___parent___id + children___parent___parent___children + children___parent___children + children___parent___children___id + children___parent___children___children + children___parent___internal___content + children___parent___internal___contentDigest + children___parent___internal___description + children___parent___internal___fieldOwners + children___parent___internal___ignoreType + children___parent___internal___mediaType + children___parent___internal___owner + children___parent___internal___type + children___children + children___children___id + children___children___parent___id + children___children___parent___children + children___children___children + children___children___children___id + children___children___children___children + children___children___internal___content + children___children___internal___contentDigest + children___children___internal___description + children___children___internal___fieldOwners + children___children___internal___ignoreType + children___children___internal___mediaType + children___children___internal___owner + children___children___internal___type + children___internal___content + children___internal___contentDigest + children___internal___description + children___internal___fieldOwners + children___internal___ignoreType + children___internal___mediaType + children___internal___owner + children___internal___type + internal___content + internal___contentDigest + internal___description + internal___fieldOwners + internal___ignoreType + internal___mediaType + internal___owner + internal___type + resolve + name + version + pluginOptions___displayName + pluginOptions___fileName + pluginOptions___minify + pluginOptions___namespace + pluginOptions___transpileTemplateLiterals + pluginOptions___pure + pluginOptions___components + pluginOptions___context + pluginOptions___hooks + pluginOptions___images + pluginOptions___layout + pluginOptions___pages + pluginOptions___styles + pluginOptions___templates + pluginOptions___theme + pluginOptions___utils + pluginOptions___component + pluginOptions___prefixes + pluginOptions___icon + pluginOptions___legacy + pluginOptions___theme_color_in_head + pluginOptions___cache_busting_mode + pluginOptions___crossOrigin + pluginOptions___include_favicon + pluginOptions___cacheDigest + pluginOptions___path + pluginOptions___pathCheck + pluginOptions___allExtensions + pluginOptions___isTSX + pluginOptions___jsxPragma + nodeAPIs + browserAPIs + ssrAPIs + pluginFilepath + packageJson___name + packageJson___description + packageJson___version + packageJson___main + packageJson___license + packageJson___dependencies + packageJson___dependencies___name + packageJson___dependencies___version + packageJson___devDependencies + packageJson___devDependencies___name + packageJson___devDependencies___version + packageJson___peerDependencies + packageJson___peerDependencies___name + packageJson___peerDependencies___version + packageJson___keywords +} + +type SitePluginGroupConnection { + totalCount: Int! + edges: [SitePluginEdge!]! + nodes: [SitePlugin!]! + pageInfo: PageInfo! + field: String! + fieldValue: String +} + +input SitePluginSortInput { + fields: [SitePluginFieldsEnum] + order: [SortOrderEnum] = [ASC] +} diff --git a/src/components/card/ArtistSummaryCard.js b/src/components/card/ArtistSummaryCard.js index d3f69bd..7033a64 100644 --- a/src/components/card/ArtistSummaryCard.js +++ b/src/components/card/ArtistSummaryCard.js @@ -1,14 +1,17 @@ import useImage from "hooks/useImage"; import { SummaryCard } from "components/card"; -export function ArtistSummaryCard({ artist }) { +export function ArtistSummaryCard({ artist, as }) { const { smallCover } = useImage(artist); const description = ( Artist {!!artist.performances && ( - {artist.performances.length} songs + {artist.performances.length} performance{artist.performances.length === 1 ? "" : "s"} + )} + {!!as && ( + As {as} )} ); diff --git a/src/components/card/SummaryCard.js b/src/components/card/SummaryCard.js index 3f2e008..71dc941 100644 --- a/src/components/card/SummaryCard.js +++ b/src/components/card/SummaryCard.js @@ -17,7 +17,7 @@ export function SummaryCard({ title, description, image, to, children, ...props - + {typeof title === "string" ? ( {title} diff --git a/src/components/card/ThemeSummaryCard.js b/src/components/card/ThemeSummaryCard.js index 0050c1e..4e1aa7a 100644 --- a/src/components/card/ThemeSummaryCard.js +++ b/src/components/card/ThemeSummaryCard.js @@ -5,7 +5,8 @@ import useImage from "hooks/useImage"; import createVideoSlug from "utils/createVideoSlug"; import { SummaryCard } from "components/card"; -export function ThemeSummaryCard({ theme }) { +// Specify an artist if you want to display this in an artist context (e.g. artist page) +export function ThemeSummaryCard({ theme, artist }) { const { smallCover } = useImage(theme.anime); if (!theme.entries.length) { @@ -34,7 +35,7 @@ export function ThemeSummaryCard({ theme }) { return ( } + title={} description={description} image={smallCover} to={to} diff --git a/src/components/image/FullWidthImage.js b/src/components/image/FullWidthImage.js index 9b1b65e..7583d7c 100644 --- a/src/components/image/FullWidthImage.js +++ b/src/components/image/FullWidthImage.js @@ -3,6 +3,8 @@ import theme from "theme"; export const FullWidthImage = styled.img` width: 100%; + height: 100%; + object-fit: cover; border-radius: 0.5rem; box-shadow: ${theme.shadows.low}; `; diff --git a/src/components/search/GlobalSearch.js b/src/components/search/GlobalSearch.js index 56b9ff1..9d76bdd 100644 --- a/src/components/search/GlobalSearch.js +++ b/src/components/search/GlobalSearch.js @@ -33,7 +33,7 @@ export function GlobalSearch({ searchQuery, searchEntity }) { } return ( - + @@ -69,11 +69,13 @@ function EntitySearch({ searchEntity, entity, title, results }) { }); return ( - + {!searchEntity && ( {title} )} - {resultCards} + + {resultCards} + {!searchEntity && totalResults > 3 && ( diff --git a/src/components/text/Text.js b/src/components/text/Text.js index 31f977c..ecacf62 100644 --- a/src/components/text/Text.js +++ b/src/components/text/Text.js @@ -37,7 +37,7 @@ export const Text = styled.span.attrs(getAttributes)` ${(props) => props.link && css` cursor: pointer; color: ${theme.colors["text-primary"]}; - font-weight: 500; + font-weight: 600; &:hover { text-decoration: underline; diff --git a/src/components/utils/SongTitleWithArtists.js b/src/components/utils/SongTitleWithArtists.js index c810549..dfc1b8d 100644 --- a/src/components/utils/SongTitleWithArtists.js +++ b/src/components/utils/SongTitleWithArtists.js @@ -2,7 +2,8 @@ import { Fragment } from "react"; import { Link } from "gatsby"; import { Text } from "components/text"; -export function SongTitleWithArtists({ song, songTitleLinkTo }) { +// Specify an artist if you want to display this in an artist context (e.g. artist page) +export function SongTitleWithArtists({ song, songTitleLinkTo, artist }) { return ( {songTitleLinkTo @@ -12,10 +13,47 @@ export function SongTitleWithArtists({ song, songTitleLinkTo }) { ) : ( - {song.title} + {song.title} ) } - {!!song.performances && !!song.performances.length && ( + {artist ? (() => { + const performedAs = song.performances.find((performance) => performance.artist.slug === artist.slug); + const performedWith = song.performances.filter((performance) => performance.artist.slug !== artist.slug); + + return ( + <> + {!!performedAs.as && ( + <> + as + + + {performedAs.as} + + + + )} + {!!performedWith.length && ( + <> + with + {performedWith.map((performance, index) => ( + + + + {performance.as || performance.artist.name} + + + {index < performedWith.length - 1 && ( + + {index === performedWith.length - 2 ? " & " : ", "} + + )} + + ))} + + )} + + ); + })() : (!!song.performances.length && ( <> by {song.performances.map((performance, index) => ( @@ -33,7 +71,7 @@ export function SongTitleWithArtists({ song, songTitleLinkTo }) { ))} - )} + ))} ); } diff --git a/src/hooks/useSearch.js b/src/hooks/useSearch.js index acf8df5..48a7f1e 100644 --- a/src/hooks/useSearch.js +++ b/src/hooks/useSearch.js @@ -74,7 +74,8 @@ const entityConfigs = { artist: { plural: "artists", includes: [ - "images" + "images", + "songs" ], fields: { artist: [ @@ -84,7 +85,9 @@ const entityConfigs = { image: [ "facet", "link" - ] + ], + // TODO: Wait till we can specify deep field property lists + // song: [] } } }; @@ -116,13 +119,19 @@ async function fetchSearchResults(url) { const res = await fetch(url); const { anime = [], themes = [], artists = [] } = (await res.json()).search; - // Map artist to performances to comply with the application schema + // Map artists and songs to performances to comply with the application schema for (const theme of themes) { theme.song.performances = theme.song.artists.map((artist) => ({ artist, as: artist.as })); } + for (const artist of artists) { + artist.performances = artist.songs.map((song) => ({ + song, + as: song.as + })); + } return { animeResults: anime, diff --git a/src/layout/index.js b/src/layout/index.js index 0345c4a..1589243 100644 --- a/src/layout/index.js +++ b/src/layout/index.js @@ -36,7 +36,7 @@ export default function Layout({ children, data, pageContext }) { - + @@ -49,7 +49,7 @@ export default function Layout({ children, data, pageContext }) { )} {!!pageContext.year && ( - + diff --git a/src/pages/index.js b/src/pages/index.js index 11f415f..f41ad6f 100644 --- a/src/pages/index.js +++ b/src/pages/index.js @@ -11,7 +11,7 @@ import theme from "theme"; const StyledAnnouncement = styled(Text)` & a { color: ${theme.colors["text-primary"]}; - font-weight: 500; + font-weight: 600; &:hover { text-decoration: underline; diff --git a/src/styles/global.js b/src/styles/global.js index 7bba6bd..b4e4052 100644 --- a/src/styles/global.js +++ b/src/styles/global.js @@ -28,7 +28,7 @@ export default createGlobalStyle` background-color: ${theme.colors["background"]}; color: ${theme.colors["text"]}; - font-family: "Roboto", sans-serif; + font-family: "Nunito", sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } diff --git a/src/templates/anime.js b/src/templates/anime.js index 32d1c2c..f2c52bd 100644 --- a/src/templates/anime.js +++ b/src/templates/anime.js @@ -37,7 +37,7 @@ export default function AnimeDetailPage({ data: { anime } }) { {anime.synonyms.map((synonym) => ( - {synonym} + {synonym.text} ))} @@ -75,7 +75,7 @@ export default function AnimeDetailPage({ data: { anime } }) { )} - + Synopsis setCollapseSynopsis(!collapseSynopsis)}> @@ -101,7 +101,9 @@ export const query = graphql` year season synopsis - synonyms + synonyms { + text + } series { slug name diff --git a/src/templates/artist.js b/src/templates/artist.js index 17e9131..f541e3a 100644 --- a/src/templates/artist.js +++ b/src/templates/artist.js @@ -20,9 +20,13 @@ const StyledList = styled.div` `; export default function ArtistDetailPage({ data: { artist } }) { - const performances = artist.performances.sort((a, b) => { - return a.song.theme.anime.name.localeCompare(b.song.theme.anime.name); - }); + const themes = artist.performances + .flatMap( + (performance) => performance.song.themes.map( + (theme) => ({ ...theme, song: performance.song }) + ) + ) + .sort((a, b) => a.anime.name.localeCompare(b.anime.name)); return ( @@ -71,11 +75,13 @@ export default function ArtistDetailPage({ data: { artist } }) { )} - + Song Perfomances - {performances.map((performance, index) => ( - - ))} + + {themes.map((theme, index) => ( + + ))} + @@ -85,6 +91,7 @@ export default function ArtistDetailPage({ data: { artist } }) { export const query = graphql` query($slug: String!) { artist(slug: { eq: $slug }) { + slug name performances { song { @@ -96,7 +103,7 @@ export const query = graphql` } as } - theme { + themes { slug anime { slug diff --git a/src/templates/season.js b/src/templates/season.js index a7af12e..498b781 100644 --- a/src/templates/season.js +++ b/src/templates/season.js @@ -12,9 +12,11 @@ export default function SeasonDetailPage({ data: { allAnime }, pageContext: { ye {`Anime from ${season} of ${year}`} - {animeList.map((anime) => ( - - ))} + + {animeList.map((anime) => ( + + ))} + ); } diff --git a/src/templates/series.js b/src/templates/series.js index 58a9302..2d06297 100644 --- a/src/templates/series.js +++ b/src/templates/series.js @@ -50,11 +50,13 @@ export default function SeriesDetailPage({ data: { series } }) { - + Anime - {series.anime.map((anime) => ( - - ))} + + {series.anime.map((anime) => ( + + ))} + diff --git a/src/templates/video.js b/src/templates/video.js index 1b5f3a4..212f11c 100644 --- a/src/templates/video.js +++ b/src/templates/video.js @@ -111,7 +111,7 @@ export default function VideoPage({ data: { video, entry } }) { {!!theme.song.performances && theme.song.performances.map((performance) => ( - + ))} diff --git a/src/templates/year.js b/src/templates/year.js index c7202fc..b4886b5 100644 --- a/src/templates/year.js +++ b/src/templates/year.js @@ -27,9 +27,11 @@ function SeasonPreview({ season, year, animeList }) { return ( <> {season} - {animeList.map((anime) => ( - - ))} + + {animeList.map((anime) => ( + + ))} +