diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 3602a15d43..06c926b94e 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -49,6 +49,9 @@ jobs: - name: Run Playwright tests run: ./node_modules/.bin/playwright test + - name: Run unit tests + run: pnpm test:unit + - uses: actions/upload-artifact@v4 if: ${{ !cancelled() }} with: diff --git a/next.config.js b/next.config.js index 8d7395ddb3..ca6c33d235 100644 --- a/next.config.js +++ b/next.config.js @@ -34,6 +34,7 @@ const ALLOWED_SVG_REGEX = new RegExp(`${sep}icons${sep}.+\\.svg$`) * @type {import('next').NextConfig} */ const config = { + output: undefined, // reactStrictMode: true, provoke duplicated codemirror editors webpack(config) { // #region MDX @@ -109,8 +110,6 @@ const config = { return config }, - // Comment this out if you're working on OG images. - output: "export", images: { loader: "custom", imageSizes: [16, 32, 48, 64, 96, 128, 256, 384], diff --git a/package.json b/package.json index 2bc6135aee..b36974b07b 100644 --- a/package.json +++ b/package.json @@ -15,7 +15,7 @@ "lint:docs": "eslint --ignore-path .gitignore src/pages/learn --format stylish", "lint:docs:ci": "eslint --ignore-path .gitignore src/pages/learn --format eslint-formatter-github", "postbuild": "next-sitemap", - "prebuild": "tsx scripts/get-github-info", + "prebuild": "tsx scripts/get-github-info && tsx scripts/sync-landing-schema/src/index.ts", "serve": "pnpx serve out", "test": "playwright test && pnpm test:unit", "test:e2e": "playwright test", @@ -90,6 +90,7 @@ }, "devDependencies": { "@graphql-eslint/eslint-plugin": "4.4.0", + "@graphql-eslint/parser": "^0.1.0", "@next/eslint-plugin-next": "^15.3.3", "@playwright/test": "^1.54.2", "@svgr/webpack": "^8.1.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ad2891b6c1..a33896e736 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -57,7 +57,7 @@ importers: version: 15.5.3 '@radix-ui/react-radio-group': specifier: ^1.2.2 - version: 1.3.8(@types/react@18.3.24)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 1.3.8(@types/react-dom@18.3.7(@types/react@18.3.24))(@types/react@18.3.24)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@sparticuz/chromium': specifier: ^138.0.2 version: 138.0.2 @@ -203,6 +203,9 @@ importers: '@graphql-eslint/eslint-plugin': specifier: 4.4.0 version: 4.4.0(@types/node@22.18.6)(eslint@8.57.1)(graphql@16.10.0)(typescript@5.9.2) + '@graphql-eslint/parser': + specifier: ^0.1.0 + version: 0.1.0(eslint@8.57.1) '@next/eslint-plugin-next': specifier: ^15.3.3 version: 15.5.3 @@ -214,7 +217,7 @@ importers: version: 8.1.0(typescript@5.9.2) '@testing-library/react': specifier: ^16.3.0 - version: 16.3.0(@testing-library/dom@10.4.1)(@types/react@18.3.24)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 16.3.0(@testing-library/dom@10.4.1)(@types/react-dom@18.3.7(@types/react@18.3.24))(@types/react@18.3.24)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@types/codemirror': specifier: 5.60.16 version: 5.60.16 @@ -292,6 +295,18 @@ importers: specifier: ^1.54.2 version: 1.55.0 + scripts/sync-landing-schema: + dependencies: + '@graphql-codegen/cli': + specifier: ^6.0.0 + version: 6.0.0(@types/node@22.18.6)(graphql@16.10.0)(typescript@5.9.2) + '@graphql-codegen/graphql-modules-preset': + specifier: ^5.0.0 + version: 5.0.0(graphql@16.10.0) + '@graphql-typed-document-node/core': + specifier: ^3.2.0 + version: 3.2.0(graphql@16.10.0) + packages: '@alloc/quick-lru@5.2.0': @@ -308,6 +323,12 @@ packages: '@antfu/utils@8.1.1': resolution: {integrity: sha512-Mex9nXf9vR6AhcXmMrlz/HVgYYZpVGJ6YlPgwl7UnaFpnshXs6EK/oa5Gpf3CzENMjkvEx2tQtntGnb7UtSTOQ==} + '@ardatan/relay-compiler@12.0.3': + resolution: {integrity: sha512-mBDFOGvAoVlWaWqs3hm1AciGHSQE1rqFc/liZTyYz/Oek9yZdT5H26pH2zAFuEiTiBVPPyMuqf5VjOFPI2DGsQ==} + hasBin: true + peerDependencies: + graphql: '*' + '@asamuzakjp/css-color@3.2.0': resolution: {integrity: sha512-K1A6z8tS3XsmCMM86xoWdn7Fkdn9m6RSVtocUrJYIwZnFVkng/PvkEoWtOWmP+Scc6saYWHWZYbndEEXxl24jw==} @@ -1174,6 +1195,91 @@ packages: resolution: {integrity: sha512-JUOtgFW6k9u4Y+xeIaEiLr3+cjoUPiAuLXoyKOJSia6Duzb7pq+A76P9ZdPDoAoxHdHzq6gE9/jKBGXlZT8FbA==} engines: {node: '>=6'} + '@graphql-codegen/add@6.0.0': + resolution: {integrity: sha512-biFdaURX0KTwEJPQ1wkT6BRgNasqgQ5KbCI1a3zwtLtO7XTo7/vKITPylmiU27K5DSOWYnY/1jfSqUAEBuhZrQ==} + engines: {node: '>=16'} + peerDependencies: + graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 + + '@graphql-codegen/cli@6.0.0': + resolution: {integrity: sha512-tvchLVCMtorDE+UwgQbrjyaQK16GCZA+QomTxZazRx64ixtgmbEiQV7GhCBy0y0Bo7/tcTJb6sy9G/TL/BgiOg==} + engines: {node: '>=16'} + hasBin: true + peerDependencies: + '@parcel/watcher': ^2.1.0 + graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 + peerDependenciesMeta: + '@parcel/watcher': + optional: true + + '@graphql-codegen/client-preset@5.0.1': + resolution: {integrity: sha512-3dXS7Sh/AkV+Ewq/HB1DSCb0tZBOIdTL8zkGQjRKWaf14x21h2f/xKl2zhRh6KlXjcCrIpX+AxHAhQxs6cXwVw==} + engines: {node: '>=16'} + peerDependencies: + graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 + graphql-sock: ^1.0.0 + peerDependenciesMeta: + graphql-sock: + optional: true + + '@graphql-codegen/core@5.0.0': + resolution: {integrity: sha512-vLTEW0m8LbE4xgRwbFwCdYxVkJ1dBlVJbQyLb9Q7bHnVFgHAP982Xo8Uv7FuPBmON+2IbTjkCqhFLHVZbqpvjQ==} + engines: {node: '>=16'} + peerDependencies: + graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 + + '@graphql-codegen/gql-tag-operations@5.0.0': + resolution: {integrity: sha512-kC2pc/tyzVc1laZtlfuQHqYxF4UqB4YXzAboFfeY1cxrxCh/+H70jHnfA1O4vhPndiRd+XZA8wxPv0hIqDXYaA==} + engines: {node: '>=16'} + peerDependencies: + graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 + + '@graphql-codegen/graphql-modules-preset@5.0.0': + resolution: {integrity: sha512-jkGMIS6pSw9e1777Kji4HSGwp/CR4Vr+Kbr20rsjPhbQ0qYHJrsx4yhIU3sQ9ojnyeffLreE2GF9/6YaD1KQrQ==} + engines: {node: '>=16'} + peerDependencies: + graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 + + '@graphql-codegen/plugin-helpers@6.0.0': + resolution: {integrity: sha512-Z7P89vViJvQakRyMbq/JF2iPLruRFOwOB6IXsuSvV/BptuuEd7fsGPuEf8bdjjDxUY0pJZnFN8oC7jIQ8p9GKA==} + engines: {node: '>=16'} + peerDependencies: + graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 + + '@graphql-codegen/schema-ast@5.0.0': + resolution: {integrity: sha512-jn7Q3PKQc0FxXjbpo9trxzlz/GSFQWxL042l0iC8iSbM/Ar+M7uyBwMtXPsev/3Razk+osQyreghIz0d2+6F7Q==} + engines: {node: '>=16'} + peerDependencies: + graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 + + '@graphql-codegen/typed-document-node@6.0.0': + resolution: {integrity: sha512-OYmbadwvjq19yCZjioy901pLI9YV6i7A0fP3MpcJlo2uQVY27RJPcN2NeLfFzXdHr6f5bm9exqB6X1iKimfA2Q==} + engines: {node: '>=16'} + peerDependencies: + graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 + + '@graphql-codegen/typescript-operations@5.0.0': + resolution: {integrity: sha512-mqgp/lp5v7w+RYj5AJ/BVquP+sgje3EAgg++62ciolOB5zzWT8en09cRdNq4UZfszCYTOtlhCG7NQAAcSae37A==} + engines: {node: '>=16'} + peerDependencies: + graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 + graphql-sock: ^1.0.0 + peerDependenciesMeta: + graphql-sock: + optional: true + + '@graphql-codegen/typescript@5.0.0': + resolution: {integrity: sha512-u90SGM6+Rdc3Je1EmVQOrGk5fl7hK1cLR4y5Q1MeUenj0aZFxKno65DCW7RcQpcfebvkPsVGA6y3oS02wPFj6Q==} + engines: {node: '>=16'} + peerDependencies: + graphql: ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 + + '@graphql-codegen/visitor-plugin-common@6.0.0': + resolution: {integrity: sha512-K05Jv2elOeFstH3i+Ah0Pi9do6NYUvrbdhEkP+UvP9fmIro1hCKwcIEP7j4VFz8mt3gAC3dB5KVJDoyaPUgi4Q==} + engines: {node: '>=16'} + peerDependencies: + graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 + '@graphql-eslint/eslint-plugin@4.4.0': resolution: {integrity: sha512-dhW6fpk3Souuaphhc38uMAGCcgKMgtCJWFygIKODw/Kns43wiQqRPVay0aNFY1JBx3aevn4KPT/BCOdm6HNncA==} engines: {node: '>=18'} @@ -1188,10 +1294,22 @@ packages: json-schema-to-ts: optional: true + '@graphql-eslint/parser@0.1.0': + resolution: {integrity: sha512-0E1YqsokbvVPKWYLpMWOVXYBFNj4cf/Lqp4NUk7TzYE5Xq3UzgRaprytD6O5dWyzcebLD4L755OxbOwx61l6CA==} + deprecated: 'Deprecated: user @graphql-eslint/eslint-plugin instead' + peerDependencies: + eslint: ^7.1.0 + '@graphql-hive/signal@1.0.0': resolution: {integrity: sha512-RiwLMc89lTjvyLEivZ/qxAC5nBHoS2CtsWFSOsN35sxG9zoo5Z+JsFHM8MlvmO9yt+MJNIyC5MLE1rsbOphlag==} engines: {node: '>=18.0.0'} + '@graphql-tools/apollo-engine-loader@8.0.22': + resolution: {integrity: sha512-ssD2wNxeOTRcUEkuGcp0KfZAGstL9YLTe/y3erTDZtOs2wL1TJESw8NVAp+3oUHPeHKBZQB4Z6RFEbPgMdT2wA==} + engines: {node: '>=16.0.0'} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + '@graphql-tools/batch-execute@9.0.19': resolution: {integrity: sha512-VGamgY4PLzSx48IHPoblRw0oTaBa7S26RpZXt0Y4NN90ytoE0LutlpB2484RbkfcTjv9wa64QD474+YP1kEgGA==} engines: {node: '>=18.0.0'} @@ -1210,6 +1328,12 @@ packages: peerDependencies: graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + '@graphql-tools/documents@1.0.1': + resolution: {integrity: sha512-aweoMH15wNJ8g7b2r4C4WRuJxZ0ca8HtNO54rkye/3duxTkW4fGBEutCx03jCIr5+a1l+4vFJNP859QnAVBVCA==} + engines: {node: '>=16.0.0'} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + '@graphql-tools/executor-common@0.0.4': resolution: {integrity: sha512-SEH/OWR+sHbknqZyROCFHcRrbZeUAyjCsgpVWCRjqjqRbiJiXq6TxNIIOmpXgkrXWW/2Ev4Wms6YSGJXjdCs6Q==} engines: {node: '>=18.0.0'} @@ -1246,6 +1370,18 @@ packages: peerDependencies: graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + '@graphql-tools/git-loader@8.0.26': + resolution: {integrity: sha512-0g+9eng8DaT4ZmZvUmPgjLTgesUa6M8xrDjNBltRldZkB055rOeUgJiKmL6u8PjzI5VxkkVsn0wtAHXhDI2UXQ==} + engines: {node: '>=16.0.0'} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + + '@graphql-tools/github-loader@8.0.22': + resolution: {integrity: sha512-uQ4JNcNPsyMkTIgzeSbsoT9hogLjYrZooLUYd173l5eUGUi49EAcsGdiBCKaKfEjanv410FE8hjaHr7fjSRkJw==} + engines: {node: '>=16.0.0'} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + '@graphql-tools/graphql-file-loader@8.0.22': resolution: {integrity: sha512-KFUbjXgWr5+w/AioOuIuULy4LwcyDuQqTRFQGe+US1d9Z4+ZopcJLwsJTqp5B+icDkCqld4paN0y0qi9MrIvbg==} engines: {node: '>=16.0.0'} @@ -1282,6 +1418,18 @@ packages: peerDependencies: graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + '@graphql-tools/optimize@2.0.0': + resolution: {integrity: sha512-nhdT+CRGDZ+bk68ic+Jw1OZ99YCDIKYA5AlVAnBHJvMawSx9YQqQAIj4refNc1/LRieGiuWvhbG3jvPVYho0Dg==} + engines: {node: '>=16.0.0'} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + + '@graphql-tools/relay-operation-optimizer@7.0.21': + resolution: {integrity: sha512-vMdU0+XfeBh9RCwPqRsr3A05hPA3MsahFn/7OAwXzMySA5EVnSH5R4poWNs3h1a0yT0tDPLhxORhK7qJdSWj2A==} + engines: {node: '>=16.0.0'} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + '@graphql-tools/schema@10.0.25': resolution: {integrity: sha512-/PqE8US8kdQ7lB9M5+jlW8AyVjRGCKU7TSktuW3WNKSKmDO0MK1wakvb5gGdyT49MjAIb4a3LWxIpwo5VygZuw==} engines: {node: '>=16.0.0'} @@ -1451,6 +1599,140 @@ packages: cpu: [x64] os: [win32] + '@inquirer/ansi@1.0.0': + resolution: {integrity: sha512-JWaTfCxI1eTmJ1BIv86vUfjVatOdxwD0DAVKYevY8SazeUUZtW+tNbsdejVO1GYE0GXJW1N1ahmiC3TFd+7wZA==} + engines: {node: '>=18'} + + '@inquirer/checkbox@4.2.4': + resolution: {integrity: sha512-2n9Vgf4HSciFq8ttKXk+qy+GsyTXPV1An6QAwe/8bkbbqvG4VW1I/ZY1pNu2rf+h9bdzMLPbRSfcNxkHBy/Ydw==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/confirm@5.1.18': + resolution: {integrity: sha512-MilmWOzHa3Ks11tzvuAmFoAd/wRuaP3SwlT1IZhyMke31FKLxPiuDWcGXhU+PKveNOpAc4axzAgrgxuIJJRmLw==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/core@10.2.2': + resolution: {integrity: sha512-yXq/4QUnk4sHMtmbd7irwiepjB8jXU0kkFRL4nr/aDBA2mDz13cMakEWdDwX3eSCTkk03kwcndD1zfRAIlELxA==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/editor@4.2.20': + resolution: {integrity: sha512-7omh5y5bK672Q+Brk4HBbnHNowOZwrb/78IFXdrEB9PfdxL3GudQyDk8O9vQ188wj3xrEebS2M9n18BjJoI83g==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/expand@4.0.20': + resolution: {integrity: sha512-Dt9S+6qUg94fEvgn54F2Syf0Z3U8xmnBI9ATq2f5h9xt09fs2IJXSCIXyyVHwvggKWFXEY/7jATRo2K6Dkn6Ow==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/external-editor@1.0.2': + resolution: {integrity: sha512-yy9cOoBnx58TlsPrIxauKIFQTiyH+0MK4e97y4sV9ERbI+zDxw7i2hxHLCIEGIE/8PPvDxGhgzIOTSOWcs6/MQ==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/figures@1.0.13': + resolution: {integrity: sha512-lGPVU3yO9ZNqA7vTYz26jny41lE7yoQansmqdMLBEfqaGsmdg7V3W9mK9Pvb5IL4EVZ9GnSDGMO/cJXud5dMaw==} + engines: {node: '>=18'} + + '@inquirer/input@4.2.4': + resolution: {integrity: sha512-cwSGpLBMwpwcZZsc6s1gThm0J+it/KIJ+1qFL2euLmSKUMGumJ5TcbMgxEjMjNHRGadouIYbiIgruKoDZk7klw==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/number@3.0.20': + resolution: {integrity: sha512-bbooay64VD1Z6uMfNehED2A2YOPHSJnQLs9/4WNiV/EK+vXczf/R988itL2XLDGTgmhMF2KkiWZo+iEZmc4jqg==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/password@4.0.20': + resolution: {integrity: sha512-nxSaPV2cPvvoOmRygQR+h0B+Av73B01cqYLcr7NXcGXhbmsYfUb8fDdw2Us1bI2YsX+VvY7I7upgFYsyf8+Nug==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/prompts@7.8.6': + resolution: {integrity: sha512-68JhkiojicX9SBUD8FE/pSKbOKtwoyaVj1kwqLfvjlVXZvOy3iaSWX4dCLsZyYx/5Ur07Fq+yuDNOen+5ce6ig==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/rawlist@4.1.8': + resolution: {integrity: sha512-CQ2VkIASbgI2PxdzlkeeieLRmniaUU1Aoi5ggEdm6BIyqopE9GuDXdDOj9XiwOqK5qm72oI2i6J+Gnjaa26ejg==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/search@3.1.3': + resolution: {integrity: sha512-D5T6ioybJJH0IiSUK/JXcoRrrm8sXwzrVMjibuPs+AgxmogKslaafy1oxFiorNI4s3ElSkeQZbhYQgLqiL8h6Q==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/select@4.3.4': + resolution: {integrity: sha512-Qp20nySRmfbuJBBsgPU7E/cL62Hf250vMZRzYDcBHty2zdD1kKCnoDFWRr0WO2ZzaXp3R7a4esaVGJUx0E6zvA==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/type@3.0.8': + resolution: {integrity: sha512-lg9Whz8onIHRthWaN1Q9EGLa/0LFJjyM8mEUbL1eTi6yMGvBf8gvyDLtxSXztQsxMvhxxNpJYrwa1YHdq+w4Jw==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + '@isaacs/cliui@8.0.2': resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} engines: {node: '>=12'} @@ -2240,6 +2522,11 @@ packages: '@types/prop-types@15.7.15': resolution: {integrity: sha512-F6bEyamV9jKGAFBEmlQnesRPGOQqS2+Uwi0Em15xenOxHaf2hv6L8YCVn3rPdPJOiJfPiCnLIRyvwVaqMY3MIw==} + '@types/react-dom@18.3.7': + resolution: {integrity: sha512-MEe3UeoENYVFXzoXEWsvcpg6ZvlrFNlOQ7EOsvhI3CfAXwzPfO8Qwuxd40nepsYKqyyVQnTdEfv68q91yLcKrQ==} + peerDependencies: + '@types/react': ^18.0.0 + '@types/react@18.3.24': resolution: {integrity: sha512-0dLEBsA1kI3OezMBF8nSsb7Nk19ZnsyE1LLhB8r27KbgU5H4pvuqZLdtE+aUkJVoXgTVuA+iLIwmZ0TuK4tx6A==} @@ -2381,6 +2668,10 @@ packages: ajv@6.12.6: resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} + ansi-escapes@7.1.1: + resolution: {integrity: sha512-Zhl0ErHcSRUaVfGUeUdDuLgpkEo8KIFjB4Y9uAc46ScOpdDiU1Dbyplh7qWJeJ/ZHpbyMSM26+X3BySgnIz40Q==} + engines: {node: '>=18'} + ansi-regex@5.0.1: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} @@ -2459,6 +2750,9 @@ packages: resolution: {integrity: sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==} engines: {node: '>=0.10.0'} + asap@2.0.6: + resolution: {integrity: sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==} + astring@1.9.0: resolution: {integrity: sha512-LElXdjswlqjWrPpJFg1Fx4wpkOCxj1TDHlSV4PlaRxHGWko024xICaa97ZkMfs6DRKlCguiAI+rbXv5GWwXIkg==} hasBin: true @@ -2467,6 +2761,10 @@ packages: resolution: {integrity: sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==} engines: {node: '>= 0.4'} + auto-bind@4.0.0: + resolution: {integrity: sha512-Hdw8qdNiqdJ8LqT0iK0sVzkFbzg6fhnQqqfWhBDxcHZvU75+B+ayzTy8x+k5Ix0Y92XOhOUlx74ps+bA6BeYMQ==} + engines: {node: '>=8'} + autoprefixer@10.4.21: resolution: {integrity: sha512-O+A6LWV5LDHSJD3LjHYoNi4VLsj/Whi7k6zG12xTYaU4cQ8oxQGckXNX8cRHK5yOZ/ppVHe0ZBXGzSV9jXdVbQ==} engines: {node: ^10 || ^12 || >=14} @@ -2562,6 +2860,9 @@ packages: engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true + bser@2.1.1: + resolution: {integrity: sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==} + buffer-from@1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} @@ -2588,6 +2889,9 @@ packages: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} engines: {node: '>=6'} + camel-case@4.1.2: + resolution: {integrity: sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==} + camelcase-css@2.0.1: resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} engines: {node: '>= 6'} @@ -2599,6 +2903,9 @@ packages: caniuse-lite@1.0.30001736: resolution: {integrity: sha512-ImpN5gLEY8gWeqfLUyEF4b7mYWcYoR2Si1VhnrbM4JizRFmfGaAQ12PhNykq6nvI4XvKLrsp8Xde74D5phJOSw==} + capital-case@1.0.4: + resolution: {integrity: sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A==} + ccount@2.0.1: resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} @@ -2610,6 +2917,12 @@ packages: resolution: {integrity: sha512-46QrSQFyVSEyYAgQ22hQ+zDa60YHA4fBstHmtSApj1Y5vKtG27fWowW03jCk5KcbXEWPZUIR894aARCA/G1kfQ==} engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} + change-case-all@1.0.15: + resolution: {integrity: sha512-3+GIFhk3sNuvFAJKU46o26OdzudQlPNBCu1ZQi3cMeMHhty1bhDxu2WrEilVNYaGvqUtR1VSigFcJOiS13dRhQ==} + + change-case@4.1.2: + resolution: {integrity: sha512-bSxY2ws9OtviILG1EiY5K7NNxkqg/JnRnFxLtKQ96JaviiIxi7djMrSd0ECT9AC+lttClmYwKw53BWpOMblo7A==} + character-entities-html4@2.1.0: resolution: {integrity: sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==} @@ -2622,6 +2935,9 @@ packages: character-reference-invalid@2.0.1: resolution: {integrity: sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==} + chardet@2.1.0: + resolution: {integrity: sha512-bNFETTG/pM5ryzQ9Ad0lJOTa6HWD/YsScAR3EnCPZRPlQh77JocYktSHOUHelyhm8IARL+o4c4F1bP5KVOjiRA==} + chevrotain-allstar@0.3.1: resolution: {integrity: sha512-b7g+y9A0v4mxCW1qUhf3BSVPg+/NvGErk/dOkrDaHA0nQIQGAtrOjlX//9OQtRlSCy+x9rfB5N8yC71lH1nvMw==} peerDependencies: @@ -2638,6 +2954,18 @@ packages: resolution: {integrity: sha512-l+2bNRMiQgcfILUi33labAZYIWlH1kWDp+ecNo5iisRKrbm0xcRyCww71/YU0Fkw0mAFpz9bJayXPjey6vkmaQ==} engines: {node: '>=8'} + cli-cursor@5.0.0: + resolution: {integrity: sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==} + engines: {node: '>=18'} + + cli-truncate@5.1.0: + resolution: {integrity: sha512-7JDGG+4Zp0CsknDCedl0DYdaeOhc46QNpXi3NLQblkZpXXgA6LncLDUUyvrjSvZeF3VRQa+KiMGomazQrC1V8g==} + engines: {node: '>=20'} + + cli-width@4.1.0: + resolution: {integrity: sha512-ouuZd4/dm2Sw5Gmqy6bGyNNNe1qt9RpmxveLSO7KcgsTnU7RXfsw+/bukWGo1abgBiMAic068rclZsO4IWmmxQ==} + engines: {node: '>= 12'} + client-only@0.0.1: resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==} @@ -2645,6 +2973,10 @@ packages: resolution: {integrity: sha512-5mOlNS0mhX0707P2I0aZ2V/cmHUEO/fL7VFLqszkhUsxt7RwnmrInf/eEQKlf5GzvYeHIjT+Ov1HRfNmymlG0w==} engines: {node: '>=18'} + cliui@8.0.1: + resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} + engines: {node: '>=12'} + clone-deep@4.0.1: resolution: {integrity: sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==} engines: {node: '>=6'} @@ -2685,6 +3017,9 @@ packages: resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==} engines: {node: '>=12.5.0'} + colorette@2.0.20: + resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} + comma-separated-tokens@2.0.3: resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==} @@ -2704,6 +3039,10 @@ packages: resolution: {integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==} engines: {node: '>= 12'} + common-tags@1.8.2: + resolution: {integrity: sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==} + engines: {node: '>=4.0.0'} + compute-scroll-into-view@3.1.1: resolution: {integrity: sha512-VRhuHOLoKYOy4UbilLbUzbYg93XLjv2PncJC50EuTWPA3gaja1UjBsUP/D/9/juV3vQFr6XBEzn9KCAHdUvOHw==} @@ -2747,9 +3086,21 @@ packages: typescript: optional: true + cosmiconfig@9.0.0: + resolution: {integrity: sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==} + engines: {node: '>=14'} + peerDependencies: + typescript: '>=4.9.5' + peerDependenciesMeta: + typescript: + optional: true + crelt@1.0.6: resolution: {integrity: sha512-VQ2MBenTq1fWZUH9DJNGti7kKv6EeAuYr3cLwxUWhIu1baTaXh4Ib5W2CqHVqib4/MqbYGJqiL3Zb8GJZr3l4g==} + cross-fetch@3.2.0: + resolution: {integrity: sha512-Q+xVJLoGOeIMXZmbUK4HYk+69cQH6LudR0Vu/pRm2YlU/hDV9CiS0gKUMaWY5f2NeUH9C1nV3bsTlCo0FsTV1Q==} + cross-inspect@1.0.1: resolution: {integrity: sha512-Pcw1JTvZLSJH83iiGWt6fRcT+BjZlCDRVwYLbUcHzv/CRpB7r0MlSrGbIyQvVSNyGnbt7G4AXuyCiDR3POvZ1A==} engines: {node: '>=16.0.0'} @@ -2981,6 +3332,10 @@ packages: debounce@1.2.1: resolution: {integrity: sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==} + debounce@2.2.0: + resolution: {integrity: sha512-Xks6RUDLZFdz8LIdR6q0MTH44k7FikOmnh5xkSjMig6ch45afc8sjTjRQf3P6ax8dMgcQrYO/AR2RGWURrruqw==} + engines: {node: '>=18'} + debug@4.4.1: resolution: {integrity: sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==} engines: {node: '>=6.0'} @@ -3014,10 +3369,18 @@ packages: delaunator@5.0.1: resolution: {integrity: sha512-8nvh+XBe96aCESrGOqMp/84b13H9cdKbG5P2ejQCh4d4sK9RL4371qou9drQjMhvnPmhWl5hnmqbEE0fXr9Xnw==} + dependency-graph@1.0.0: + resolution: {integrity: sha512-cW3gggJ28HZ/LExwxP2B++aiKxhJXMSIt9K48FOXQkm+vuG5gyatXnLsONRJdzO/7VfjDIiaOOa/bs4l464Lwg==} + engines: {node: '>=4'} + dequal@2.0.3: resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} engines: {node: '>=6'} + detect-indent@6.1.0: + resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==} + engines: {node: '>=8'} + detect-libc@2.0.4: resolution: {integrity: sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==} engines: {node: '>=8'} @@ -3109,6 +3472,14 @@ packages: resolution: {integrity: sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==} engines: {node: '>=0.12'} + env-paths@2.2.1: + resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==} + engines: {node: '>=6'} + + environment@1.1.0: + resolution: {integrity: sha512-xUtoPkMggbz0MPyPiIWr1Kp4aeWJjDZ6SMvURhimjdZgsRuDplF5/s9hcgGhyXMhs+6vpnuoiZ2kFiu3FMnS8Q==} + engines: {node: '>=18'} + err-code@2.0.3: resolution: {integrity: sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==} @@ -3292,6 +3663,9 @@ packages: resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} engines: {node: '>=0.10.0'} + eventemitter3@5.0.1: + resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==} + execa@8.0.1: resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} engines: {node: '>=16.17'} @@ -3332,6 +3706,15 @@ packages: fault@2.0.1: resolution: {integrity: sha512-WtySTkS4OKev5JtpHXnib4Gxiurzh5NCGvWrFaZ34m6JehfTUhKZvn9njTfw48t6JumVQOmrKqpmGcdwxnhqBQ==} + fb-watchman@2.0.2: + resolution: {integrity: sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==} + + fbjs-css-vars@1.0.2: + resolution: {integrity: sha512-b2XGFAFdWZWg0phtAWLHCk836A1Xann+I+Dgd3Gk64MHKZO44FfoD1KxyvbSh0qZsIoXQGGlVztIY+oitJPpRQ==} + + fbjs@3.0.5: + resolution: {integrity: sha512-ztsSx77JBtkuMrEypfhgc3cI0+0h+svqeie7xHbh1k/IKdcydnvadp/mUaGgjAOXQmQSxsqgaRhS3q9fy+1kxg==} + fetch-blob@3.2.0: resolution: {integrity: sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==} engines: {node: ^12.20 || >= 14.13} @@ -3435,6 +3818,14 @@ packages: resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} engines: {node: '>=6.9.0'} + get-caller-file@2.0.5: + resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} + engines: {node: 6.* || 8.* || >= 10.*} + + get-east-asian-width@1.4.0: + resolution: {integrity: sha512-QZjmEOC+IT1uk6Rx0sX22V6uHWVwbdbxf1faPqJ1QhLdGgsRGCZoyaQBm/piRdJy/D2um6hM1UP7ZEeQ4EkP+Q==} + engines: {node: '>=18'} + get-intrinsic@1.3.0: resolution: {integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==} engines: {node: '>= 0.4'} @@ -3521,6 +3912,12 @@ packages: peerDependencies: graphql: ^15.5.0 || ^16.0.0 || ^17.0.0 + graphql-tag@2.12.6: + resolution: {integrity: sha512-FdSNcu2QQcWnM2VNvSCCDCVS5PpPqpzgFT8+GXzqJuoDd0CBncxCY278u4mhRO7tMgo2JjgJA5aZ+nWSQ/Z+xg==} + engines: {node: '>=10'} + peerDependencies: + graphql: ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 + graphql-ws@6.0.6: resolution: {integrity: sha512-zgfER9s+ftkGKUZgc0xbx8T7/HMO4AV5/YuYiFc+AtgcO5T0v8AxYYNQ+ltzuzDZgNkYJaFspm5MMYLjQzrkmw==} engines: {node: '>=20'} @@ -3540,6 +3937,10 @@ packages: ws: optional: true + graphql@15.10.1: + resolution: {integrity: sha512-BL/Xd/T9baO6NFzoMpiMD7YUZ62R6viR5tp/MULVEnbYJXZA//kRNW7J0j1w/wXArgL0sCxhDfK5dczSKn3+cg==} + engines: {node: '>= 10.x'} + graphql@16.10.0: resolution: {integrity: sha512-AjqGKbDGUFRKIRCP9tCKiIGHyriz2oHEbPIbEtcSLSs4YjReZOIPQQWek4+6hjw62H9QShXHyaGivGiYVLeYFQ==} engines: {node: ^12.22.0 || ^14.16.0 || ^16.0.0 || >=17.0.0} @@ -3631,6 +4032,9 @@ packages: hastscript@9.0.1: resolution: {integrity: sha512-g7df9rMFX/SPi34tyGCyUBREQoKkapwdY/T04Qn9TDWfHhAYt4/I0gMVirzK5wEzeUqIjEB+LXC/ypb7Aqno5w==} + header-case@2.0.4: + resolution: {integrity: sha512-H/vuk5TEEVZwrR0lp2zed9OCo1uAILMlx0JEMgC26rzyJJ3N1v6XkwHHXJQdR2doSjcGPM6OKPYoJgf0plJ11Q==} + hosted-git-info@7.0.2: resolution: {integrity: sha512-puUZAUKT5m8Zzvs72XWy3HtvVbTWljRE66cP60bxJzAqf2DgICo7lYTY2IHUmLnNpjYvw5bvmoHvPc0QO2a62w==} engines: {node: ^16.14.0 || >=18.0.0} @@ -3664,6 +4068,10 @@ packages: resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==} engines: {node: '>=0.10.0'} + iconv-lite@0.7.0: + resolution: {integrity: sha512-cf6L2Ds3h57VVmkZe+Pn+5APsT7FpqJtEhhieDCvrE2MK5Qk9MyffgQyuxQTm6BChfeZNtcOLHp9IcWRVcIcBQ==} + engines: {node: '>=0.10.0'} + iframe-resizer-react@1.1.1: resolution: {integrity: sha512-s0EUUekv58FGbuWBanSCVsEKmmyBdWmdwQ8qx8g04jlNlCR7pNuDz7fw7zo5T5sdssl6yRMDl97NBdwD1gfDyQ==} engines: {node: '>=16', npm: '>=5'} @@ -3689,10 +4097,18 @@ packages: engines: {node: '>=0.10.0'} hasBin: true + immutable@3.7.6: + resolution: {integrity: sha512-AizQPcaofEtO11RZhPPHBOJRdo/20MKQF9mBLnVkBoyHi1/zXK8fzVdnEpSV9gxqtnh6Qomfp3F0xT5qP/vThw==} + engines: {node: '>=0.8.0'} + import-fresh@3.3.1: resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} engines: {node: '>=6'} + import-from@4.0.0: + resolution: {integrity: sha512-P9J71vT5nLlDeV8FHs5nNxaLbrpfAV5cF5srvbZfpwpcJoM/xZR3hiv+q+SAnuSmuGbXMWud063iIMx/V/EWZQ==} + engines: {node: '>=12.2'} + import-meta-resolve@4.1.0: resolution: {integrity: sha512-I6fiaX09Xivtk+THaMfAwnA3MVA5Big1WHF1Dfx9hFuvNIWpXnorlkzhcQf6ehrqQiiZECRt1poOAkPmer3ruw==} @@ -3725,6 +4141,13 @@ packages: resolution: {integrity: sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==} engines: {node: '>=12'} + invariant@2.2.4: + resolution: {integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==} + + is-absolute@1.0.0: + resolution: {integrity: sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==} + engines: {node: '>=0.10.0'} + is-alphabetical@2.0.1: resolution: {integrity: sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==} @@ -3815,6 +4238,10 @@ packages: resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} engines: {node: '>=8'} + is-fullwidth-code-point@5.1.0: + resolution: {integrity: sha512-5XHYaSyiqADb4RnZ1Bdad6cPp8Toise4TzEjcOYDHZkTCbKgiUl7WTUCpNWHuxmDt91wnsZBc9xinNzopv3JMQ==} + engines: {node: '>=18'} + is-generator-function@1.1.0: resolution: {integrity: sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==} engines: {node: '>= 0.4'} @@ -3831,6 +4258,9 @@ packages: engines: {node: '>=14.16'} hasBin: true + is-lower-case@2.0.2: + resolution: {integrity: sha512-bVcMJy4X5Og6VZfdOZstSexlEy20Sr0k/p/b2IlQJlfdKAQuMpiv5w2Ccxb8sKdRUNAG1PnHVHjFSdRDVS6NlQ==} + is-map@2.0.3: resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==} engines: {node: '>= 0.4'} @@ -3870,6 +4300,10 @@ packages: resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==} engines: {node: '>= 0.4'} + is-relative@1.0.0: + resolution: {integrity: sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==} + engines: {node: '>=0.10.0'} + is-set@2.0.3: resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==} engines: {node: '>= 0.4'} @@ -3894,6 +4328,17 @@ packages: resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==} engines: {node: '>= 0.4'} + is-unc-path@1.0.0: + resolution: {integrity: sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==} + engines: {node: '>=0.10.0'} + + is-unicode-supported@0.1.0: + resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==} + engines: {node: '>=10'} + + is-upper-case@2.0.2: + resolution: {integrity: sha512-44pxmxAvnnAOwBg4tHPnkfvgjPwbc5QIsSstNU+YcJ1ovxVzCWpSGosPJOZh/a1tdl81fbgnLc9LLv+x2ywbPQ==} + is-weakmap@2.0.2: resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} engines: {node: '>= 0.4'} @@ -3913,6 +4358,10 @@ packages: resolution: {integrity: sha512-RydPhl4S6JwAyj0JJjshWJEFG6hNye3pZFBRZaTUfZFwGHxzppNaNOVgQuS/E/SlhrApuMXrpnK1EEIXfdo3Dg==} engines: {node: '>=0.10.0'} + is-windows@1.0.2: + resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==} + engines: {node: '>=0.10.0'} + is-wsl@3.1.0: resolution: {integrity: sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==} engines: {node: '>=16'} @@ -4001,6 +4450,10 @@ packages: json-stable-stringify-without-jsonify@1.0.1: resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} + json-to-pretty-yaml@1.2.2: + resolution: {integrity: sha512-rvm6hunfCcqegwYaG5T4yKJWxc9FXFgBVrcTZ4XfSVRwa5HA/Xs+vB/Eo9treYYHCeNM0nrSUr82V/M31Urc7A==} + engines: {node: '>= 0.2.0'} + json5@2.2.3: resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} engines: {node: '>=6'} @@ -4089,6 +4542,10 @@ packages: resolution: {integrity: sha512-wM1+Z03eypVAVUCE7QdSqpVIvelbOakn1M0bPDoA4SGWPx3sNDVUiMo3L6To6WWGClB7VyXnhQ4Sn7gxiJbE6A==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + listr2@9.0.4: + resolution: {integrity: sha512-1wd/kpAdKRLwv7/3OKC8zZ5U8e/fajCfWMxacUvB79S5nLrYGPtUI/8chMQhn3LQjsRVErTb9i1ECAwW0ZIHnQ==} + engines: {node: '>=20.0.0'} + load-plugin@6.0.3: resolution: {integrity: sha512-kc0X2FEUZr145odl68frm+lMJuQ23+rTXYmR6TImqPtbpmXC4vVXbWKDQ9IzndA0HfyQamWfKLhzsqGSTxE63w==} @@ -4115,6 +4572,17 @@ packages: lodash.sortby@4.7.0: resolution: {integrity: sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==} + lodash@4.17.21: + resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + + log-symbols@4.1.0: + resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} + engines: {node: '>=10'} + + log-update@6.1.0: + resolution: {integrity: sha512-9ie8ItPR6tjY5uYJh8K/Zrv/RMZ5VOlOWvtZdEHYSTFKZfIBPQa9tOAEeAWhd+AnIneLJ22w5fjOYtoutpWq5w==} + engines: {node: '>=18'} + longest-streak@3.1.0: resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==} @@ -4122,6 +4590,9 @@ packages: resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} hasBin: true + lower-case-first@2.0.2: + resolution: {integrity: sha512-EVm/rR94FJTZi3zefZ82fLWab+GX14LJN4HrWBcuo6Evmsl9hEfnqxgcHCKb9q+mNf6EVdsjx/qucYFIIB84pg==} + lower-case@2.0.2: resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==} @@ -4144,6 +4615,10 @@ packages: resolution: {integrity: sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==} engines: {node: '>=6'} + map-cache@0.2.2: + resolution: {integrity: sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==} + engines: {node: '>=0.10.0'} + markdown-extensions@2.0.0: resolution: {integrity: sha512-o5vL7aDWatOTX8LzaS1WMoaoxIiLRQJuIKKe2wAw6IeULDHaqbiqiggmx+pKvZDb1Sj+pE46Sn1T7lCqfFtg1Q==} engines: {node: '>=16'} @@ -4391,6 +4866,10 @@ packages: resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} engines: {node: '>=12'} + mimic-function@5.0.1: + resolution: {integrity: sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==} + engines: {node: '>=18'} + mini-svg-data-uri@1.4.4: resolution: {integrity: sha512-r9deDe9p5FJUPZAk3A59wGH7Ii9YrjjWw0jmw/liSbHl2CHiyXj6FcDXDu2K3TjVAXqiJdaw3xxwlZZr9E6nHg==} hasBin: true @@ -4450,6 +4929,10 @@ packages: ms@2.1.3: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + mute-stream@2.0.0: + resolution: {integrity: sha512-WWdIxpyjEn+FhQJQQv9aQAYlHoNVdzIzUySNV1gHUPDSdZJ3yZn7pAAbQcV7B56Mvu881q9FZV+0Vx2xC44VWA==} + engines: {node: ^18.17.0 || >=20.5.0} + mz@2.7.0: resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} @@ -4550,10 +5033,22 @@ packages: engines: {node: '>=10.5.0'} deprecated: Use your platform's native DOMException instead + node-fetch@2.7.0: + resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} + engines: {node: 4.x || >=6.0.0} + peerDependencies: + encoding: ^0.1.0 + peerDependenciesMeta: + encoding: + optional: true + node-fetch@3.3.2: resolution: {integrity: sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + node-int64@0.4.0: + resolution: {integrity: sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==} + node-releases@2.0.19: resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==} @@ -4653,7 +5148,11 @@ packages: resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} engines: {node: '>=12'} - oniguruma-to-es@2.3.0: + onetime@7.0.0: + resolution: {integrity: sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==} + engines: {node: '>=18'} + + oniguruma-to-es@2.3.0: resolution: {integrity: sha512-bwALDxriqfKGfUufKGGepCzu9x7nJQuoRoAFp4AnwehhC2crqrDIAP/uN2qdlsAvSMpeRC3+Yzhqc7hLmle5+g==} opener@1.5.2: @@ -4690,6 +5189,9 @@ packages: package-manager-detector@1.3.0: resolution: {integrity: sha512-ZsEbbZORsyHuO00lY1kV3/t72yp6Ysay6Pd17ZAlNGuGwmWDLCJxFpRs0IzfXfj1o4icJOkUEioexFHzyPurSQ==} + param-case@3.0.4: + resolution: {integrity: sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==} + parent-module@1.0.1: resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} engines: {node: '>=6'} @@ -4697,6 +5199,10 @@ packages: parse-entities@4.0.2: resolution: {integrity: sha512-GG2AQYWoLgL877gQIKeRPGO1xF9+eG1ujIb5soS5gPvLQ1y2o8FL90w2QWNdf9I361Mpp7726c+lj3U0qK1uGw==} + parse-filepath@1.0.2: + resolution: {integrity: sha512-FwdRXKCohSVeXqwtYonZTXtbGJKrn+HNyWDYVcp5yuJlesTwNH4rsmRZ+GrKAPJ5bLpRxESMeS+Rl0VCHRvB2Q==} + engines: {node: '>=0.8'} + parse-json@5.2.0: resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} engines: {node: '>=8'} @@ -4722,6 +5228,12 @@ packages: resolution: {integrity: sha512-eqtUnI5+COkf1CQOYo8FmykN5Zs+5Yr60f/7GcPgQDZEEjdE/VZ4WMaMo9g37foof8h64t/TH2Uvk2Sq0fDy/g==} engines: {node: '>=0.10.0'} + pascal-case@3.1.2: + resolution: {integrity: sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==} + + path-case@3.0.4: + resolution: {integrity: sha512-qO4qCFjXqVTrcbPt/hQfhTQ+VhFsqNKOPtytgNKkKxSoEp3XPUQ8ObFuePylOIok5gjn69ry8XiULxCwot3Wfg==} + path-data-parser@0.1.0: resolution: {integrity: sha512-NOnmBpt5Y2RWbuv0LMzsayp3lVylAHLPUTut412ZA3l+C4uw4ZVkQbjShYCQ8TCpUMdPapr4YjUqLYD6v68j+w==} @@ -4744,6 +5256,14 @@ packages: path-parse@1.0.7: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} + path-root-regex@0.1.2: + resolution: {integrity: sha512-4GlJ6rZDhQZFE0DPVKh0e9jmZ5egZfxTkp7bcRDuPlJXbAwhxcl2dINPUAsjLdejqaLsCeg8axcLjIbvBjN4pQ==} + engines: {node: '>=0.10.0'} + + path-root@0.1.1: + resolution: {integrity: sha512-QLcPegTHF11axjfojBIoDygmS2E3Lf+8+jI6wOVmNVenrKSo3mFdSGiIgdSHenczw3wPtlVMQaFVwGmM7BJdtg==} + engines: {node: '>=0.10.0'} + path-scurry@1.11.1: resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} engines: {node: '>=16 || 14 >=14.18'} @@ -4957,6 +5477,9 @@ packages: resolution: {integrity: sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==} engines: {node: '>=10'} + promise@7.3.1: + resolution: {integrity: sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==} + prop-types@15.8.1: resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} @@ -5121,6 +5644,9 @@ packages: rehype-recma@1.0.0: resolution: {integrity: sha512-lqA4rGUf1JmacCNWWZx0Wv1dHqMwxzsDWYMTowuplHF3xH0N/MmrZ/G3BDZnzAkRmxDadujCjaKM2hqYdCBOGw==} + relay-runtime@12.0.0: + resolution: {integrity: sha512-QU6JKr1tMsry22DXNy9Whsq5rmvwr3LSZiiWV/9+DFpuTWvp+WFhobWMc8TC4OjKFfNhEZy7mOiqUAn5atQtug==} + remark-frontmatter@5.0.0: resolution: {integrity: sha512-XTFYvNASMe5iPN0719nPrdItC9aU0ssC4v14mH1BCi1u0n1gAocqcujWUrByftZTbLhRtiKRyjYTSIOcr69UVQ==} @@ -5155,9 +5681,19 @@ packages: remark-stringify@11.0.0: resolution: {integrity: sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==} + remedial@1.0.8: + resolution: {integrity: sha512-/62tYiOe6DzS5BqVsNpH/nkGlX45C/Sp6V+NtiN6JQNS1Viay7cWkazmRkrQrdFj2eshDe96SIQNIoMxqhzBOg==} + remove-trailing-separator@1.1.0: resolution: {integrity: sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==} + remove-trailing-spaces@1.0.9: + resolution: {integrity: sha512-xzG7w5IRijvIkHIjDk65URsJJ7k4J95wmcArY5PRcmjldIOl7oTvG8+X2Ag690R7SfwiOcHrWZKVc1Pp5WIOzA==} + + require-directory@2.1.1: + resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} + engines: {node: '>=0.10.0'} + resolve-from@4.0.0: resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} engines: {node: '>=4'} @@ -5178,6 +5714,10 @@ packages: resolution: {integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==} hasBin: true + restore-cursor@5.1.0: + resolution: {integrity: sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==} + engines: {node: '>=18'} + retext-latin@4.0.0: resolution: {integrity: sha512-hv9woG7Fy0M9IlRQloq/N6atV82NxLGveq+3H2WOi79dtIYWN8OaxogDm77f8YnVXJL2VD3bbqowu5E3EMhBYA==} @@ -5276,6 +5816,9 @@ packages: engines: {node: '>=10'} hasBin: true + sentence-case@3.0.4: + resolution: {integrity: sha512-8LS0JInaQMCRoQ7YUytAo/xUu5W2XnQxV2HI/6uM6U7CITS1RqPElr30V6uIqyMKM9lJGRVFy5/4CuzcixNYSg==} + serialize-query-params@2.0.2: resolution: {integrity: sha512-1chMo1dST4pFA9RDXAtF0Rbjaut4is7bzFbI1Z26IuMub68pNCILku85aYmeFhvnY//BXUPUhoRMjYcsT93J/Q==} @@ -5298,6 +5841,9 @@ packages: resolution: {integrity: sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==} engines: {node: '>= 0.4'} + setimmediate@1.0.5: + resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==} + shallow-clone@3.0.1: resolution: {integrity: sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==} engines: {node: '>=8'} @@ -5314,6 +5860,10 @@ packages: resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} engines: {node: '>=8'} + shell-quote@1.8.3: + resolution: {integrity: sha512-ObmnIF4hXNg1BqhnHmgbDETF8dLPCggZWBjkQfhZpbszZnYur5DUljTcCHii5LC3J5E0yeO/1LIMyH+UvHQgyw==} + engines: {node: '>= 0.4'} + shiki@1.29.2: resolution: {integrity: sha512-njXuliz/cP+67jU2hukkxCNuH1yUi4QfdZZY+sMr5PPrIyXSu5iTb/qYC4BiWWB0vZ+7TbdvYUCeL23zpwCfbg==} @@ -5337,6 +5887,9 @@ packages: resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} engines: {node: '>=14'} + signedsource@1.0.0: + resolution: {integrity: sha512-6+eerH9fEnNmi/hyM1DXcRK3pWdoMQtlkQ+ns0ntzunjKqp5i3sKCc80ym8Fib3iaYhdJUOPdhlJWj1tvge2Ww==} + simple-swizzle@0.2.2: resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} @@ -5352,6 +5905,10 @@ packages: resolution: {integrity: sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==} engines: {node: '>=14.16'} + slice-ansi@7.1.2: + resolution: {integrity: sha512-iOBWFgUX7caIZiuutICxVgX1SdxwAVFFKwt1EvMYYec/NWO5meOJ6K5uQxhrYBdQJne4KxiqZc+KptFOWFSI9w==} + engines: {node: '>=18'} + snake-case@3.0.4: resolution: {integrity: sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==} @@ -5386,6 +5943,9 @@ packages: resolution: {integrity: sha512-S6ji+flMEga+1QU79NDbwZ8Ivf0S/MpupQQiIC0rTpU/ZTKgcajijJJb1OcByBQDjrXCN1/DJtGz4ZJeBMPGJw==} hasBin: true + sponge-case@1.0.1: + resolution: {integrity: sha512-dblb9Et4DAtiZ5YSUZHLl4XhH4uK80GhAZrVXdN4O2P4gQ40Wa5UIOPUHlA/nFd2PLblBZWUioLMMAVrgpoYcA==} + sprintf-js@1.0.3: resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} @@ -5435,6 +5995,14 @@ packages: resolution: {integrity: sha512-k01swCJAgQmuADB0YIc+7TuatfNvTBVOoaUWJjTB9R4VJzR5vNWzf5t42ESVZFPS8xTySF7CAdV4t/aaIm3UnQ==} engines: {node: '>=16'} + string-width@7.2.0: + resolution: {integrity: sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==} + engines: {node: '>=18'} + + string-width@8.1.0: + resolution: {integrity: sha512-Kxl3KJGb/gxkaUMOjRsQ8IrXiGW75O4E3RPjFIINOVH8AMl2SQ/yWdTzWwF3FevIX9LcMAjJW+GRwAlAbTSXdg==} + engines: {node: '>=20'} + string.prototype.matchall@4.0.12: resolution: {integrity: sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==} engines: {node: '>= 0.4'} @@ -5530,6 +6098,9 @@ packages: engines: {node: '>=14.0.0'} hasBin: true + swap-case@2.0.2: + resolution: {integrity: sha512-kc6S2YS/2yXbtkSMunBtKdah4VFETZ8Oh6ONSmSd9bRxhqTrtARUCBUiWXH3xVPpvR7tz2CSnkuXVE42EcGnMw==} + symbol-tree@3.2.4: resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==} @@ -5585,6 +6156,9 @@ packages: tinyexec@1.0.1: resolution: {integrity: sha512-5uC6DDlmeqiOwCPmK9jMSdOuZTh8bU39Ys6yidB+UTt5hfZUPGAypSgFRiEp+jbi9qH40BLDvy85jIU88wKSqw==} + title-case@3.0.3: + resolution: {integrity: sha512-e1zGYRvbffpcHIrnuqT0Dh+gEJtDaxDSoG4JAIpq4oDFyooziLBIiYQv0GBT4FUAnUop5uZ1hiIAj7oAF6sOCA==} + title@4.0.1: resolution: {integrity: sha512-xRnPkJx9nvE5MF6LkB5e8QJjE2FW8269wTu/LQdf7zZqBgPly0QJPf/CWAo7srj5so4yXfoLEdCFgurlpi47zg==} hasBin: true @@ -5612,6 +6186,9 @@ packages: resolution: {integrity: sha512-FVDYdxtnj0G6Qm/DhNPSb8Ju59ULcup3tuJxkFb5K8Bv2pUXILbf0xZWU8PX8Ov19OXljbUyveOFwRMwkXzO+A==} engines: {node: '>=16'} + tr46@0.0.3: + resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} + tr46@5.1.1: resolution: {integrity: sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==} engines: {node: '>=18'} @@ -5639,6 +6216,12 @@ packages: ts-interface-checker@0.1.13: resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} + ts-log@2.2.7: + resolution: {integrity: sha512-320x5Ggei84AxzlXp91QkIGSw5wgaLT6GeAH0KsqDmRZdVWW2OiSeVvElVoatk3f7nicwXlElXsoFkARiGE2yg==} + + tslib@2.6.3: + resolution: {integrity: sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==} + tslib@2.8.1: resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} @@ -5691,6 +6274,10 @@ packages: engines: {node: '>=14.17'} hasBin: true + ua-parser-js@1.0.41: + resolution: {integrity: sha512-LbBDqdIC5s8iROCUjMbW1f5dJQTEFB1+KO9ogbvlb3nm9n4YHa5p4KTvFPWvh2Hs8gZMBuiB1/8+pdfe/tDPug==} + hasBin: true + ufo@1.6.1: resolution: {integrity: sha512-9a4/uxlTWJ4+a5i0ooc1rU7C7YOw3wT+UGqdeNNHWnOF9qcMBgLRS+4IYUqbczewFx4mLEig6gawh7X6mFlEkA==} @@ -5698,6 +6285,10 @@ packages: resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==} engines: {node: '>= 0.4'} + unc-path-regex@0.1.2: + resolution: {integrity: sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg==} + engines: {node: '>=0.10.0'} + undici-types@6.21.0: resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} @@ -5796,6 +6387,9 @@ packages: peerDependencies: browserslist: '>= 4.21.0' + upper-case-first@2.0.2: + resolution: {integrity: sha512-514ppYHBaKwfJRK/pNC6c/OxfGa0obSnAl106u97Ed0I625Nin96KAjttZF6ZL3e1XLtphxnqrOi9iWgm+u+bg==} + upper-case@2.0.2: resolution: {integrity: sha512-KgdgDGJt2TpuwBUIjgG6lzw2GWFRCW9Qkfkiv0DxqHHLYJHmtmdUIKcZd8rHgFSjopVTlw6ggzCm1b8MFQwikg==} @@ -5906,6 +6500,9 @@ packages: resolution: {integrity: sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==} engines: {node: '>= 8'} + webidl-conversions@3.0.1: + resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} + webidl-conversions@7.0.0: resolution: {integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==} engines: {node: '>=12'} @@ -5927,6 +6524,9 @@ packages: resolution: {integrity: sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==} engines: {node: '>=18'} + whatwg-url@5.0.0: + resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} + which-boxed-primitive@1.1.1: resolution: {integrity: sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==} engines: {node: '>= 0.4'} @@ -5960,6 +6560,10 @@ packages: resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} engines: {node: '>=0.10.0'} + wrap-ansi@6.2.0: + resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} + engines: {node: '>=8'} + wrap-ansi@7.0.0: resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} engines: {node: '>=10'} @@ -5968,6 +6572,10 @@ packages: resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} engines: {node: '>=12'} + wrap-ansi@9.0.2: + resolution: {integrity: sha512-42AtmgqjV+X1VpdOfyTGOYRi0/zsoLqtXQckTmqTeybT+BDIbM/Guxo7x3pE2vtpr1ok6xRqM9OpBe+Jyoqyww==} + engines: {node: '>=18'} + wrappy@1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} @@ -6005,6 +6613,10 @@ packages: xmlchars@2.2.0: resolution: {integrity: sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==} + y18n@5.0.8: + resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} + engines: {node: '>=10'} + yallist@3.1.1: resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} @@ -6013,6 +6625,14 @@ packages: engines: {node: '>= 14.6'} hasBin: true + yargs-parser@21.1.1: + resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} + engines: {node: '>=12'} + + yargs@17.7.2: + resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} + engines: {node: '>=12'} + yocto-queue@0.1.0: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} @@ -6021,6 +6641,10 @@ packages: resolution: {integrity: sha512-AyeEbWOu/TAXdxlV9wmGcR0+yh2j3vYPGOECcIj2S7MkrLyC7ne+oye2BKTItt0ii2PHk4cDy+95+LshzbXnGg==} engines: {node: '>=12.20'} + yoctocolors-cjs@2.1.3: + resolution: {integrity: sha512-U/PBtDf35ff0D8X8D0jfdzHYEPFxAI7jJlxZXwCSez5M3190m+QobIfh+sWDWSHMCWWJN2AWamkegn6vr6YBTw==} + engines: {node: '>=18'} + zod-validation-error@3.5.3: resolution: {integrity: sha512-OT5Y8lbUadqVZCsnyFaTQ4/O2mys4tj7PqhdbBCp7McPwvIEKfPtdA6QfPeFQK2/Rz5LgwmAXRJTugBNBi0btw==} engines: {node: '>=18.0.0'} @@ -6049,6 +6673,22 @@ snapshots: '@antfu/utils@8.1.1': {} + '@ardatan/relay-compiler@12.0.3(graphql@16.10.0)': + dependencies: + '@babel/generator': 7.28.3 + '@babel/parser': 7.28.3 + '@babel/runtime': 7.28.4 + chalk: 4.1.2 + fb-watchman: 2.0.2 + graphql: 16.10.0 + immutable: 3.7.6 + invariant: 2.2.4 + nullthrows: 1.1.1 + relay-runtime: 12.0.0 + signedsource: 1.0.0 + transitivePeerDependencies: + - encoding + '@asamuzakjp/css-color@3.2.0': dependencies: '@csstools/css-calc': 2.1.4(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4) @@ -7045,6 +7685,178 @@ snapshots: '@fortawesome/fontawesome-free@6.7.2': {} + '@graphql-codegen/add@6.0.0(graphql@16.10.0)': + dependencies: + '@graphql-codegen/plugin-helpers': 6.0.0(graphql@16.10.0) + graphql: 16.10.0 + tslib: 2.6.3 + + '@graphql-codegen/cli@6.0.0(@types/node@22.18.6)(graphql@16.10.0)(typescript@5.9.2)': + dependencies: + '@babel/generator': 7.28.3 + '@babel/template': 7.27.2 + '@babel/types': 7.28.2 + '@graphql-codegen/client-preset': 5.0.1(graphql@16.10.0) + '@graphql-codegen/core': 5.0.0(graphql@16.10.0) + '@graphql-codegen/plugin-helpers': 6.0.0(graphql@16.10.0) + '@graphql-tools/apollo-engine-loader': 8.0.22(graphql@16.10.0) + '@graphql-tools/code-file-loader': 8.1.22(graphql@16.10.0) + '@graphql-tools/git-loader': 8.0.26(graphql@16.10.0) + '@graphql-tools/github-loader': 8.0.22(@types/node@22.18.6)(graphql@16.10.0) + '@graphql-tools/graphql-file-loader': 8.0.22(graphql@16.10.0) + '@graphql-tools/json-file-loader': 8.0.20(graphql@16.10.0) + '@graphql-tools/load': 8.1.2(graphql@16.10.0) + '@graphql-tools/url-loader': 8.0.33(@types/node@22.18.6)(graphql@16.10.0) + '@graphql-tools/utils': 10.9.1(graphql@16.10.0) + '@inquirer/prompts': 7.8.6(@types/node@22.18.6) + '@whatwg-node/fetch': 0.10.10 + chalk: 4.1.2 + cosmiconfig: 9.0.0(typescript@5.9.2) + debounce: 2.2.0 + detect-indent: 6.1.0 + graphql: 16.10.0 + graphql-config: 5.1.5(@types/node@22.18.6)(graphql@16.10.0)(typescript@5.9.2) + is-glob: 4.0.3 + jiti: 2.5.1 + json-to-pretty-yaml: 1.2.2 + listr2: 9.0.4 + log-symbols: 4.1.0 + micromatch: 4.0.8 + shell-quote: 1.8.3 + string-env-interpolation: 1.0.1 + ts-log: 2.2.7 + tslib: 2.8.1 + yaml: 2.8.1 + yargs: 17.7.2 + transitivePeerDependencies: + - '@fastify/websocket' + - '@types/node' + - bufferutil + - cosmiconfig-toml-loader + - crossws + - encoding + - graphql-sock + - supports-color + - typescript + - uWebSockets.js + - utf-8-validate + + '@graphql-codegen/client-preset@5.0.1(graphql@16.10.0)': + dependencies: + '@babel/helper-plugin-utils': 7.27.1 + '@babel/template': 7.27.2 + '@graphql-codegen/add': 6.0.0(graphql@16.10.0) + '@graphql-codegen/gql-tag-operations': 5.0.0(graphql@16.10.0) + '@graphql-codegen/plugin-helpers': 6.0.0(graphql@16.10.0) + '@graphql-codegen/typed-document-node': 6.0.0(graphql@16.10.0) + '@graphql-codegen/typescript': 5.0.0(graphql@16.10.0) + '@graphql-codegen/typescript-operations': 5.0.0(graphql@16.10.0) + '@graphql-codegen/visitor-plugin-common': 6.0.0(graphql@16.10.0) + '@graphql-tools/documents': 1.0.1(graphql@16.10.0) + '@graphql-tools/utils': 10.9.1(graphql@16.10.0) + '@graphql-typed-document-node/core': 3.2.0(graphql@16.10.0) + graphql: 16.10.0 + tslib: 2.6.3 + transitivePeerDependencies: + - encoding + + '@graphql-codegen/core@5.0.0(graphql@16.10.0)': + dependencies: + '@graphql-codegen/plugin-helpers': 6.0.0(graphql@16.10.0) + '@graphql-tools/schema': 10.0.25(graphql@16.10.0) + '@graphql-tools/utils': 10.9.1(graphql@16.10.0) + graphql: 16.10.0 + tslib: 2.6.3 + + '@graphql-codegen/gql-tag-operations@5.0.0(graphql@16.10.0)': + dependencies: + '@graphql-codegen/plugin-helpers': 6.0.0(graphql@16.10.0) + '@graphql-codegen/visitor-plugin-common': 6.0.0(graphql@16.10.0) + '@graphql-tools/utils': 10.9.1(graphql@16.10.0) + auto-bind: 4.0.0 + graphql: 16.10.0 + tslib: 2.6.3 + transitivePeerDependencies: + - encoding + + '@graphql-codegen/graphql-modules-preset@5.0.0(graphql@16.10.0)': + dependencies: + '@graphql-codegen/plugin-helpers': 6.0.0(graphql@16.10.0) + '@graphql-codegen/visitor-plugin-common': 6.0.0(graphql@16.10.0) + '@graphql-tools/utils': 10.9.1(graphql@16.10.0) + change-case-all: 1.0.15 + graphql: 16.10.0 + parse-filepath: 1.0.2 + tslib: 2.6.3 + transitivePeerDependencies: + - encoding + + '@graphql-codegen/plugin-helpers@6.0.0(graphql@16.10.0)': + dependencies: + '@graphql-tools/utils': 10.9.1(graphql@16.10.0) + change-case-all: 1.0.15 + common-tags: 1.8.2 + graphql: 16.10.0 + import-from: 4.0.0 + lodash: 4.17.21 + tslib: 2.6.3 + + '@graphql-codegen/schema-ast@5.0.0(graphql@16.10.0)': + dependencies: + '@graphql-codegen/plugin-helpers': 6.0.0(graphql@16.10.0) + '@graphql-tools/utils': 10.9.1(graphql@16.10.0) + graphql: 16.10.0 + tslib: 2.6.3 + + '@graphql-codegen/typed-document-node@6.0.0(graphql@16.10.0)': + dependencies: + '@graphql-codegen/plugin-helpers': 6.0.0(graphql@16.10.0) + '@graphql-codegen/visitor-plugin-common': 6.0.0(graphql@16.10.0) + auto-bind: 4.0.0 + change-case-all: 1.0.15 + graphql: 16.10.0 + tslib: 2.6.3 + transitivePeerDependencies: + - encoding + + '@graphql-codegen/typescript-operations@5.0.0(graphql@16.10.0)': + dependencies: + '@graphql-codegen/plugin-helpers': 6.0.0(graphql@16.10.0) + '@graphql-codegen/typescript': 5.0.0(graphql@16.10.0) + '@graphql-codegen/visitor-plugin-common': 6.0.0(graphql@16.10.0) + auto-bind: 4.0.0 + graphql: 16.10.0 + tslib: 2.6.3 + transitivePeerDependencies: + - encoding + + '@graphql-codegen/typescript@5.0.0(graphql@16.10.0)': + dependencies: + '@graphql-codegen/plugin-helpers': 6.0.0(graphql@16.10.0) + '@graphql-codegen/schema-ast': 5.0.0(graphql@16.10.0) + '@graphql-codegen/visitor-plugin-common': 6.0.0(graphql@16.10.0) + auto-bind: 4.0.0 + graphql: 16.10.0 + tslib: 2.6.3 + transitivePeerDependencies: + - encoding + + '@graphql-codegen/visitor-plugin-common@6.0.0(graphql@16.10.0)': + dependencies: + '@graphql-codegen/plugin-helpers': 6.0.0(graphql@16.10.0) + '@graphql-tools/optimize': 2.0.0(graphql@16.10.0) + '@graphql-tools/relay-operation-optimizer': 7.0.21(graphql@16.10.0) + '@graphql-tools/utils': 10.9.1(graphql@16.10.0) + auto-bind: 4.0.0 + change-case-all: 1.0.15 + dependency-graph: 1.0.0 + graphql: 16.10.0 + graphql-tag: 2.12.6(graphql@16.10.0) + parse-filepath: 1.0.2 + tslib: 2.6.3 + transitivePeerDependencies: + - encoding + '@graphql-eslint/eslint-plugin@4.4.0(@types/node@22.18.6)(eslint@8.57.1)(graphql@16.10.0)(typescript@5.9.2)': dependencies: '@graphql-tools/code-file-loader': 8.1.22(graphql@16.10.0) @@ -7068,8 +7880,21 @@ snapshots: - uWebSockets.js - utf-8-validate + '@graphql-eslint/parser@0.1.0(eslint@8.57.1)': + dependencies: + eslint: 8.57.1 + graphql: 15.10.1 + '@graphql-hive/signal@1.0.0': {} + '@graphql-tools/apollo-engine-loader@8.0.22(graphql@16.10.0)': + dependencies: + '@graphql-tools/utils': 10.9.1(graphql@16.10.0) + '@whatwg-node/fetch': 0.10.10 + graphql: 16.10.0 + sync-fetch: 0.6.0-2 + tslib: 2.8.1 + '@graphql-tools/batch-execute@9.0.19(graphql@16.10.0)': dependencies: '@graphql-tools/utils': 10.9.1(graphql@16.10.0) @@ -7102,6 +7927,12 @@ snapshots: graphql: 16.10.0 tslib: 2.8.1 + '@graphql-tools/documents@1.0.1(graphql@16.10.0)': + dependencies: + graphql: 16.10.0 + lodash.sortby: 4.7.0 + tslib: 2.8.1 + '@graphql-tools/executor-common@0.0.4(graphql@16.10.0)': dependencies: '@envelop/core': 5.3.0 @@ -7168,6 +7999,32 @@ snapshots: graphql: 16.10.0 tslib: 2.8.1 + '@graphql-tools/git-loader@8.0.26(graphql@16.10.0)': + dependencies: + '@graphql-tools/graphql-tag-pluck': 8.3.21(graphql@16.10.0) + '@graphql-tools/utils': 10.9.1(graphql@16.10.0) + graphql: 16.10.0 + is-glob: 4.0.3 + micromatch: 4.0.8 + tslib: 2.8.1 + unixify: 1.0.0 + transitivePeerDependencies: + - supports-color + + '@graphql-tools/github-loader@8.0.22(@types/node@22.18.6)(graphql@16.10.0)': + dependencies: + '@graphql-tools/executor-http': 1.3.3(@types/node@22.18.6)(graphql@16.10.0) + '@graphql-tools/graphql-tag-pluck': 8.3.21(graphql@16.10.0) + '@graphql-tools/utils': 10.9.1(graphql@16.10.0) + '@whatwg-node/fetch': 0.10.10 + '@whatwg-node/promise-helpers': 1.3.2 + graphql: 16.10.0 + sync-fetch: 0.6.0-2 + tslib: 2.8.1 + transitivePeerDependencies: + - '@types/node' + - supports-color + '@graphql-tools/graphql-file-loader@8.0.22(graphql@16.10.0)': dependencies: '@graphql-tools/import': 7.0.21(graphql@16.10.0) @@ -7224,6 +8081,20 @@ snapshots: graphql: 16.10.0 tslib: 2.8.1 + '@graphql-tools/optimize@2.0.0(graphql@16.10.0)': + dependencies: + graphql: 16.10.0 + tslib: 2.8.1 + + '@graphql-tools/relay-operation-optimizer@7.0.21(graphql@16.10.0)': + dependencies: + '@ardatan/relay-compiler': 12.0.3(graphql@16.10.0) + '@graphql-tools/utils': 10.9.1(graphql@16.10.0) + graphql: 16.10.0 + tslib: 2.8.1 + transitivePeerDependencies: + - encoding + '@graphql-tools/schema@10.0.25(graphql@16.10.0)': dependencies: '@graphql-tools/merge': 9.1.1(graphql@16.10.0) @@ -7348,55 +8219,180 @@ snapshots: '@img/sharp-libvips-linux-s390x@1.0.4': optional: true - '@img/sharp-libvips-linux-x64@1.0.4': - optional: true + '@img/sharp-libvips-linux-x64@1.0.4': + optional: true + + '@img/sharp-libvips-linuxmusl-arm64@1.0.4': + optional: true + + '@img/sharp-libvips-linuxmusl-x64@1.0.4': + optional: true + + '@img/sharp-linux-arm64@0.33.5': + optionalDependencies: + '@img/sharp-libvips-linux-arm64': 1.0.4 + optional: true + + '@img/sharp-linux-arm@0.33.5': + optionalDependencies: + '@img/sharp-libvips-linux-arm': 1.0.5 + optional: true + + '@img/sharp-linux-s390x@0.33.5': + optionalDependencies: + '@img/sharp-libvips-linux-s390x': 1.0.4 + optional: true + + '@img/sharp-linux-x64@0.33.5': + optionalDependencies: + '@img/sharp-libvips-linux-x64': 1.0.4 + optional: true + + '@img/sharp-linuxmusl-arm64@0.33.5': + optionalDependencies: + '@img/sharp-libvips-linuxmusl-arm64': 1.0.4 + optional: true + + '@img/sharp-linuxmusl-x64@0.33.5': + optionalDependencies: + '@img/sharp-libvips-linuxmusl-x64': 1.0.4 + optional: true + + '@img/sharp-wasm32@0.33.5': + dependencies: + '@emnapi/runtime': 1.4.5 + optional: true + + '@img/sharp-win32-ia32@0.33.5': + optional: true + + '@img/sharp-win32-x64@0.33.5': + optional: true + + '@inquirer/ansi@1.0.0': {} + + '@inquirer/checkbox@4.2.4(@types/node@22.18.6)': + dependencies: + '@inquirer/ansi': 1.0.0 + '@inquirer/core': 10.2.2(@types/node@22.18.6) + '@inquirer/figures': 1.0.13 + '@inquirer/type': 3.0.8(@types/node@22.18.6) + yoctocolors-cjs: 2.1.3 + optionalDependencies: + '@types/node': 22.18.6 + + '@inquirer/confirm@5.1.18(@types/node@22.18.6)': + dependencies: + '@inquirer/core': 10.2.2(@types/node@22.18.6) + '@inquirer/type': 3.0.8(@types/node@22.18.6) + optionalDependencies: + '@types/node': 22.18.6 + + '@inquirer/core@10.2.2(@types/node@22.18.6)': + dependencies: + '@inquirer/ansi': 1.0.0 + '@inquirer/figures': 1.0.13 + '@inquirer/type': 3.0.8(@types/node@22.18.6) + cli-width: 4.1.0 + mute-stream: 2.0.0 + signal-exit: 4.1.0 + wrap-ansi: 6.2.0 + yoctocolors-cjs: 2.1.3 + optionalDependencies: + '@types/node': 22.18.6 + + '@inquirer/editor@4.2.20(@types/node@22.18.6)': + dependencies: + '@inquirer/core': 10.2.2(@types/node@22.18.6) + '@inquirer/external-editor': 1.0.2(@types/node@22.18.6) + '@inquirer/type': 3.0.8(@types/node@22.18.6) + optionalDependencies: + '@types/node': 22.18.6 + + '@inquirer/expand@4.0.20(@types/node@22.18.6)': + dependencies: + '@inquirer/core': 10.2.2(@types/node@22.18.6) + '@inquirer/type': 3.0.8(@types/node@22.18.6) + yoctocolors-cjs: 2.1.3 + optionalDependencies: + '@types/node': 22.18.6 - '@img/sharp-libvips-linuxmusl-arm64@1.0.4': - optional: true + '@inquirer/external-editor@1.0.2(@types/node@22.18.6)': + dependencies: + chardet: 2.1.0 + iconv-lite: 0.7.0 + optionalDependencies: + '@types/node': 22.18.6 - '@img/sharp-libvips-linuxmusl-x64@1.0.4': - optional: true + '@inquirer/figures@1.0.13': {} - '@img/sharp-linux-arm64@0.33.5': + '@inquirer/input@4.2.4(@types/node@22.18.6)': + dependencies: + '@inquirer/core': 10.2.2(@types/node@22.18.6) + '@inquirer/type': 3.0.8(@types/node@22.18.6) optionalDependencies: - '@img/sharp-libvips-linux-arm64': 1.0.4 - optional: true + '@types/node': 22.18.6 - '@img/sharp-linux-arm@0.33.5': + '@inquirer/number@3.0.20(@types/node@22.18.6)': + dependencies: + '@inquirer/core': 10.2.2(@types/node@22.18.6) + '@inquirer/type': 3.0.8(@types/node@22.18.6) optionalDependencies: - '@img/sharp-libvips-linux-arm': 1.0.5 - optional: true + '@types/node': 22.18.6 - '@img/sharp-linux-s390x@0.33.5': + '@inquirer/password@4.0.20(@types/node@22.18.6)': + dependencies: + '@inquirer/ansi': 1.0.0 + '@inquirer/core': 10.2.2(@types/node@22.18.6) + '@inquirer/type': 3.0.8(@types/node@22.18.6) optionalDependencies: - '@img/sharp-libvips-linux-s390x': 1.0.4 - optional: true + '@types/node': 22.18.6 - '@img/sharp-linux-x64@0.33.5': + '@inquirer/prompts@7.8.6(@types/node@22.18.6)': + dependencies: + '@inquirer/checkbox': 4.2.4(@types/node@22.18.6) + '@inquirer/confirm': 5.1.18(@types/node@22.18.6) + '@inquirer/editor': 4.2.20(@types/node@22.18.6) + '@inquirer/expand': 4.0.20(@types/node@22.18.6) + '@inquirer/input': 4.2.4(@types/node@22.18.6) + '@inquirer/number': 3.0.20(@types/node@22.18.6) + '@inquirer/password': 4.0.20(@types/node@22.18.6) + '@inquirer/rawlist': 4.1.8(@types/node@22.18.6) + '@inquirer/search': 3.1.3(@types/node@22.18.6) + '@inquirer/select': 4.3.4(@types/node@22.18.6) optionalDependencies: - '@img/sharp-libvips-linux-x64': 1.0.4 - optional: true + '@types/node': 22.18.6 - '@img/sharp-linuxmusl-arm64@0.33.5': + '@inquirer/rawlist@4.1.8(@types/node@22.18.6)': + dependencies: + '@inquirer/core': 10.2.2(@types/node@22.18.6) + '@inquirer/type': 3.0.8(@types/node@22.18.6) + yoctocolors-cjs: 2.1.3 optionalDependencies: - '@img/sharp-libvips-linuxmusl-arm64': 1.0.4 - optional: true + '@types/node': 22.18.6 - '@img/sharp-linuxmusl-x64@0.33.5': + '@inquirer/search@3.1.3(@types/node@22.18.6)': + dependencies: + '@inquirer/core': 10.2.2(@types/node@22.18.6) + '@inquirer/figures': 1.0.13 + '@inquirer/type': 3.0.8(@types/node@22.18.6) + yoctocolors-cjs: 2.1.3 optionalDependencies: - '@img/sharp-libvips-linuxmusl-x64': 1.0.4 - optional: true + '@types/node': 22.18.6 - '@img/sharp-wasm32@0.33.5': + '@inquirer/select@4.3.4(@types/node@22.18.6)': dependencies: - '@emnapi/runtime': 1.4.5 - optional: true - - '@img/sharp-win32-ia32@0.33.5': - optional: true + '@inquirer/ansi': 1.0.0 + '@inquirer/core': 10.2.2(@types/node@22.18.6) + '@inquirer/figures': 1.0.13 + '@inquirer/type': 3.0.8(@types/node@22.18.6) + yoctocolors-cjs: 2.1.3 + optionalDependencies: + '@types/node': 22.18.6 - '@img/sharp-win32-x64@0.33.5': - optional: true + '@inquirer/type@3.0.8(@types/node@22.18.6)': + optionalDependencies: + '@types/node': 22.18.6 '@isaacs/cliui@8.0.2': dependencies: @@ -7655,16 +8651,17 @@ snapshots: '@radix-ui/primitive@1.1.3': {} - '@radix-ui/react-collection@1.1.7(@types/react@18.3.24)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-collection@1.1.7(@types/react-dom@18.3.7(@types/react@18.3.24))(@types/react@18.3.24)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.24)(react@18.3.1) '@radix-ui/react-context': 1.1.2(@types/react@18.3.24)(react@18.3.1) - '@radix-ui/react-primitive': 2.1.3(@types/react@18.3.24)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.24))(@types/react@18.3.24)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@radix-ui/react-slot': 1.2.3(@types/react@18.3.24)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.24 + '@types/react-dom': 18.3.7(@types/react@18.3.24) '@radix-ui/react-compose-refs@1.1.2(@types/react@18.3.24)(react@18.3.1)': dependencies: @@ -7691,7 +8688,7 @@ snapshots: optionalDependencies: '@types/react': 18.3.24 - '@radix-ui/react-presence@1.1.5(@types/react@18.3.24)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-presence@1.1.5(@types/react-dom@18.3.7(@types/react@18.3.24))(@types/react@18.3.24)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.24)(react@18.3.1) '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.24)(react@18.3.1) @@ -7699,24 +8696,26 @@ snapshots: react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.24 + '@types/react-dom': 18.3.7(@types/react@18.3.24) - '@radix-ui/react-primitive@2.1.3(@types/react@18.3.24)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-primitive@2.1.3(@types/react-dom@18.3.7(@types/react@18.3.24))(@types/react@18.3.24)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@radix-ui/react-slot': 1.2.3(@types/react@18.3.24)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.24 + '@types/react-dom': 18.3.7(@types/react@18.3.24) - '@radix-ui/react-radio-group@1.3.8(@types/react@18.3.24)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-radio-group@1.3.8(@types/react-dom@18.3.7(@types/react@18.3.24))(@types/react@18.3.24)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@radix-ui/primitive': 1.1.3 '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.24)(react@18.3.1) '@radix-ui/react-context': 1.1.2(@types/react@18.3.24)(react@18.3.1) '@radix-ui/react-direction': 1.1.1(@types/react@18.3.24)(react@18.3.1) - '@radix-ui/react-presence': 1.1.5(@types/react@18.3.24)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-primitive': 2.1.3(@types/react@18.3.24)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-roving-focus': 1.1.11(@types/react@18.3.24)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@18.3.7(@types/react@18.3.24))(@types/react@18.3.24)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.24))(@types/react@18.3.24)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-roving-focus': 1.1.11(@types/react-dom@18.3.7(@types/react@18.3.24))(@types/react@18.3.24)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.3.24)(react@18.3.1) '@radix-ui/react-use-previous': 1.1.1(@types/react@18.3.24)(react@18.3.1) '@radix-ui/react-use-size': 1.1.1(@types/react@18.3.24)(react@18.3.1) @@ -7724,22 +8723,24 @@ snapshots: react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.24 + '@types/react-dom': 18.3.7(@types/react@18.3.24) - '@radix-ui/react-roving-focus@1.1.11(@types/react@18.3.24)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-roving-focus@1.1.11(@types/react-dom@18.3.7(@types/react@18.3.24))(@types/react@18.3.24)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-collection': 1.1.7(@types/react@18.3.24)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-collection': 1.1.7(@types/react-dom@18.3.7(@types/react@18.3.24))(@types/react@18.3.24)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.24)(react@18.3.1) '@radix-ui/react-context': 1.1.2(@types/react@18.3.24)(react@18.3.1) '@radix-ui/react-direction': 1.1.1(@types/react@18.3.24)(react@18.3.1) '@radix-ui/react-id': 1.1.1(@types/react@18.3.24)(react@18.3.1) - '@radix-ui/react-primitive': 2.1.3(@types/react@18.3.24)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.24))(@types/react@18.3.24)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.24)(react@18.3.1) '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.3.24)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.24 + '@types/react-dom': 18.3.7(@types/react@18.3.24) '@radix-ui/react-slot@1.2.3(@types/react@18.3.24)(react@18.3.1)': dependencies: @@ -8028,7 +9029,7 @@ snapshots: picocolors: 1.1.1 pretty-format: 27.5.1 - '@testing-library/react@16.3.0(@testing-library/dom@10.4.1)(@types/react@18.3.24)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@testing-library/react@16.3.0(@testing-library/dom@10.4.1)(@types/react-dom@18.3.7(@types/react@18.3.24))(@types/react@18.3.24)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.28.3 '@testing-library/dom': 10.4.1 @@ -8036,6 +9037,7 @@ snapshots: react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.24 + '@types/react-dom': 18.3.7(@types/react@18.3.24) '@theguild/federation-composition@0.19.1(graphql@16.10.0)': dependencies: @@ -8243,6 +9245,11 @@ snapshots: '@types/prop-types@15.7.15': {} + '@types/react-dom@18.3.7(@types/react@18.3.24)': + dependencies: + '@types/react': 18.3.24 + optional: true + '@types/react@18.3.24': dependencies: '@types/prop-types': 15.7.15 @@ -8405,6 +9412,10 @@ snapshots: json-schema-traverse: 0.4.1 uri-js: 4.4.1 + ansi-escapes@7.1.1: + dependencies: + environment: 1.1.0 + ansi-regex@5.0.1: {} ansi-regex@6.2.0: {} @@ -8499,10 +9510,14 @@ snapshots: arrify@1.0.1: {} + asap@2.0.6: {} + astring@1.9.0: {} async-function@1.0.0: {} + auto-bind@4.0.0: {} + autoprefixer@10.4.21(postcss@8.5.6): dependencies: browserslist: 4.25.3 @@ -8603,6 +9618,10 @@ snapshots: node-releases: 2.0.19 update-browserslist-db: 1.1.3(browserslist@4.25.3) + bser@2.1.1: + dependencies: + node-int64: 0.4.0 + buffer-from@1.1.2: {} busboy@1.6.0: @@ -8632,12 +9651,23 @@ snapshots: callsites@3.1.0: {} + camel-case@4.1.2: + dependencies: + pascal-case: 3.1.2 + tslib: 2.8.1 + camelcase-css@2.0.1: {} camelcase@6.3.0: {} caniuse-lite@1.0.30001736: {} + capital-case@1.0.4: + dependencies: + no-case: 3.0.4 + tslib: 2.8.1 + upper-case-first: 2.0.2 + ccount@2.0.1: {} chalk@4.1.2: @@ -8647,6 +9677,34 @@ snapshots: chalk@5.6.0: {} + change-case-all@1.0.15: + dependencies: + change-case: 4.1.2 + is-lower-case: 2.0.2 + is-upper-case: 2.0.2 + lower-case: 2.0.2 + lower-case-first: 2.0.2 + sponge-case: 1.0.1 + swap-case: 2.0.2 + title-case: 3.0.3 + upper-case: 2.0.2 + upper-case-first: 2.0.2 + + change-case@4.1.2: + dependencies: + camel-case: 4.1.2 + capital-case: 1.0.4 + constant-case: 3.0.4 + dot-case: 3.0.4 + header-case: 2.0.4 + no-case: 3.0.4 + param-case: 3.0.4 + pascal-case: 3.1.2 + path-case: 3.0.4 + sentence-case: 3.0.4 + snake-case: 3.0.4 + tslib: 2.8.1 + character-entities-html4@2.1.0: {} character-entities-legacy@3.0.0: {} @@ -8655,6 +9713,8 @@ snapshots: character-reference-invalid@2.0.1: {} + chardet@2.1.0: {} + chevrotain-allstar@0.3.1(chevrotain@11.0.3): dependencies: chevrotain: 11.0.3 @@ -8683,6 +9743,17 @@ snapshots: ci-info@4.3.0: {} + cli-cursor@5.0.0: + dependencies: + restore-cursor: 5.1.0 + + cli-truncate@5.1.0: + dependencies: + slice-ansi: 7.1.2 + string-width: 8.1.0 + + cli-width@4.1.0: {} + client-only@0.0.1: {} clipboardy@4.0.0: @@ -8691,6 +9762,12 @@ snapshots: is-wsl: 3.1.0 is64bit: 2.0.0 + cliui@8.0.1: + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 7.0.0 + clone-deep@4.0.1: dependencies: is-plain-object: 2.0.4 @@ -8732,6 +9809,8 @@ snapshots: color-convert: 2.0.1 color-string: 1.9.1 + colorette@2.0.20: {} + comma-separated-tokens@2.0.3: {} commander@13.1.0: {} @@ -8742,6 +9821,8 @@ snapshots: commander@8.3.0: {} + common-tags@1.8.2: {} + compute-scroll-into-view@3.1.1: {} concat-map@0.0.1: {} @@ -8790,8 +9871,23 @@ snapshots: optionalDependencies: typescript: 5.9.2 + cosmiconfig@9.0.0(typescript@5.9.2): + dependencies: + env-paths: 2.2.1 + import-fresh: 3.3.1 + js-yaml: 4.1.0 + parse-json: 5.2.0 + optionalDependencies: + typescript: 5.9.2 + crelt@1.0.6: {} + cross-fetch@3.2.0: + dependencies: + node-fetch: 2.7.0 + transitivePeerDependencies: + - encoding + cross-inspect@1.0.1: dependencies: tslib: 2.8.1 @@ -9056,6 +10152,8 @@ snapshots: debounce@1.2.1: {} + debounce@2.2.0: {} + debug@4.4.1: dependencies: ms: 2.1.3 @@ -9086,8 +10184,12 @@ snapshots: dependencies: robust-predicates: 3.0.2 + dependency-graph@1.0.0: {} + dequal@2.0.3: {} + detect-indent@6.1.0: {} + detect-libc@2.0.4: {} devlop@1.1.0: @@ -9171,6 +10273,10 @@ snapshots: entities@6.0.1: {} + env-paths@2.2.1: {} + + environment@1.1.0: {} + err-code@2.0.3: {} errno@0.1.8: @@ -9525,6 +10631,8 @@ snapshots: esutils@2.0.3: {} + eventemitter3@5.0.1: {} + execa@8.0.1: dependencies: cross-spawn: 7.0.6 @@ -9577,6 +10685,24 @@ snapshots: dependencies: format: 0.2.2 + fb-watchman@2.0.2: + dependencies: + bser: 2.1.1 + + fbjs-css-vars@1.0.2: {} + + fbjs@3.0.5: + dependencies: + cross-fetch: 3.2.0 + fbjs-css-vars: 1.0.2 + loose-envify: 1.4.0 + object-assign: 4.1.1 + promise: 7.3.1 + setimmediate: 1.0.5 + ua-parser-js: 1.0.41 + transitivePeerDependencies: + - encoding + fetch-blob@3.2.0: dependencies: node-domexception: 1.0.0 @@ -9663,6 +10789,10 @@ snapshots: gensync@1.0.0-beta.2: {} + get-caller-file@2.0.5: {} + + get-east-asian-width@1.4.0: {} + get-intrinsic@1.3.0: dependencies: call-bind-apply-helpers: 1.0.2 @@ -9783,12 +10913,19 @@ snapshots: nullthrows: 1.1.1 vscode-languageserver-types: 3.17.5 + graphql-tag@2.12.6(graphql@16.10.0): + dependencies: + graphql: 16.10.0 + tslib: 2.8.1 + graphql-ws@6.0.6(graphql@16.10.0)(ws@8.18.3): dependencies: graphql: 16.10.0 optionalDependencies: ws: 8.18.3 + graphql@15.10.1: {} + graphql@16.10.0: {} gray-matter@3.1.1: @@ -9978,6 +11115,11 @@ snapshots: property-information: 7.1.0 space-separated-tokens: 2.0.2 + header-case@2.0.4: + dependencies: + capital-case: 1.0.4 + tslib: 2.8.1 + hosted-git-info@7.0.2: dependencies: lru-cache: 10.4.3 @@ -10012,6 +11154,10 @@ snapshots: dependencies: safer-buffer: 2.1.2 + iconv-lite@0.7.0: + dependencies: + safer-buffer: 2.1.2 + iframe-resizer-react@1.1.1(@babel/core@7.28.3)(prop-types@15.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: '@babel/plugin-proposal-private-property-in-object': 7.21.11(@babel/core@7.28.3) @@ -10033,11 +11179,15 @@ snapshots: image-size@0.5.5: optional: true + immutable@3.7.6: {} + import-fresh@3.3.1: dependencies: parent-module: 1.0.1 resolve-from: 4.0.0 + import-from@4.0.0: {} + import-meta-resolve@4.1.0: {} imurmurhash@0.1.4: {} @@ -10063,6 +11213,15 @@ snapshots: internmap@2.0.3: {} + invariant@2.2.4: + dependencies: + loose-envify: 1.4.0 + + is-absolute@1.0.0: + dependencies: + is-relative: 1.0.0 + is-windows: 1.0.2 + is-alphabetical@2.0.1: {} is-alphanumerical@2.0.1: @@ -10146,6 +11305,10 @@ snapshots: is-fullwidth-code-point@3.0.0: {} + is-fullwidth-code-point@5.1.0: + dependencies: + get-east-asian-width: 1.4.0 + is-generator-function@1.1.0: dependencies: call-bound: 1.0.4 @@ -10163,6 +11326,10 @@ snapshots: dependencies: is-docker: 3.0.0 + is-lower-case@2.0.2: + dependencies: + tslib: 2.8.1 + is-map@2.0.3: {} is-negative-zero@2.0.3: {} @@ -10193,6 +11360,10 @@ snapshots: has-tostringtag: 1.0.2 hasown: 2.0.2 + is-relative@1.0.0: + dependencies: + is-unc-path: 1.0.0 + is-set@2.0.3: {} is-shared-array-buffer@1.0.4: @@ -10216,6 +11387,16 @@ snapshots: dependencies: which-typed-array: 1.1.19 + is-unc-path@1.0.0: + dependencies: + unc-path-regex: 0.1.2 + + is-unicode-supported@0.1.0: {} + + is-upper-case@2.0.2: + dependencies: + tslib: 2.8.1 + is-weakmap@2.0.2: {} is-weakref@1.1.1: @@ -10231,6 +11412,8 @@ snapshots: is-whitespace@0.3.0: {} + is-windows@1.0.2: {} + is-wsl@3.1.0: dependencies: is-inside-container: 1.0.0 @@ -10322,6 +11505,11 @@ snapshots: json-stable-stringify-without-jsonify@1.0.1: {} + json-to-pretty-yaml@1.2.2: + dependencies: + remedial: 1.0.8 + remove-trailing-spaces: 1.0.9 + json5@2.2.3: {} jsx-ast-utils@3.3.5: @@ -10400,6 +11588,15 @@ snapshots: lines-and-columns@2.0.4: {} + listr2@9.0.4: + dependencies: + cli-truncate: 5.1.0 + colorette: 2.0.20 + eventemitter3: 5.0.1 + log-update: 6.1.0 + rfdc: 1.4.1 + wrap-ansi: 9.0.2 + load-plugin@6.0.3: dependencies: '@npmcli/config': 8.3.4 @@ -10427,12 +11624,31 @@ snapshots: lodash.sortby@4.7.0: {} + lodash@4.17.21: {} + + log-symbols@4.1.0: + dependencies: + chalk: 4.1.2 + is-unicode-supported: 0.1.0 + + log-update@6.1.0: + dependencies: + ansi-escapes: 7.1.1 + cli-cursor: 5.0.0 + slice-ansi: 7.1.2 + strip-ansi: 7.1.0 + wrap-ansi: 9.0.2 + longest-streak@3.1.0: {} loose-envify@1.4.0: dependencies: js-tokens: 4.0.0 + lower-case-first@2.0.2: + dependencies: + tslib: 2.8.1 + lower-case@2.0.2: dependencies: tslib: 2.8.1 @@ -10455,6 +11671,8 @@ snapshots: semver: 5.7.2 optional: true + map-cache@0.2.2: {} + markdown-extensions@2.0.0: {} markdown-table@3.0.4: {} @@ -11005,6 +12223,8 @@ snapshots: mimic-fn@4.0.0: {} + mimic-function@5.0.1: {} + mini-svg-data-uri@1.4.4: {} minimatch@3.1.2: @@ -11053,6 +12273,8 @@ snapshots: ms@2.1.3: {} + mute-stream@2.0.0: {} + mz@2.7.0: dependencies: any-promise: 1.3.0 @@ -11206,12 +12428,18 @@ snapshots: node-domexception@1.0.0: {} + node-fetch@2.7.0: + dependencies: + whatwg-url: 5.0.0 + node-fetch@3.3.2: dependencies: data-uri-to-buffer: 4.0.1 fetch-blob: 3.2.0 formdata-polyfill: 4.0.10 + node-int64@0.4.0: {} + node-releases@2.0.19: {} nopt@7.2.1: @@ -11316,6 +12544,10 @@ snapshots: dependencies: mimic-fn: 4.0.0 + onetime@7.0.0: + dependencies: + mimic-function: 5.0.1 + oniguruma-to-es@2.3.0: dependencies: emoji-regex-xs: 1.0.0 @@ -11359,6 +12591,11 @@ snapshots: package-manager-detector@1.3.0: {} + param-case@3.0.4: + dependencies: + dot-case: 3.0.4 + tslib: 2.8.1 + parent-module@1.0.1: dependencies: callsites: 3.1.0 @@ -11373,6 +12610,12 @@ snapshots: is-decimal: 2.0.1 is-hexadecimal: 2.0.1 + parse-filepath@1.0.2: + dependencies: + is-absolute: 1.0.0 + map-cache: 0.2.2 + path-root: 0.1.1 + parse-json@5.2.0: dependencies: '@babel/code-frame': 7.27.1 @@ -11415,6 +12658,16 @@ snapshots: mixin-deep: 1.3.2 trim-leading-lines: 0.1.1 + pascal-case@3.1.2: + dependencies: + no-case: 3.0.4 + tslib: 2.8.1 + + path-case@3.0.4: + dependencies: + dot-case: 3.0.4 + tslib: 2.8.1 + path-data-parser@0.1.0: {} path-exists@4.0.0: {} @@ -11427,6 +12680,12 @@ snapshots: path-parse@1.0.7: {} + path-root-regex@0.1.2: {} + + path-root@0.1.1: + dependencies: + path-root-regex: 0.1.2 + path-scurry@1.11.1: dependencies: lru-cache: 10.4.3 @@ -11563,6 +12822,10 @@ snapshots: err-code: 2.0.3 retry: 0.12.0 + promise@7.3.1: + dependencies: + asap: 2.0.6 + prop-types@15.8.1: dependencies: loose-envify: 1.4.0 @@ -11789,6 +13052,14 @@ snapshots: transitivePeerDependencies: - supports-color + relay-runtime@12.0.0: + dependencies: + '@babel/runtime': 7.28.4 + fbjs: 3.0.5 + invariant: 2.2.4 + transitivePeerDependencies: + - encoding + remark-frontmatter@5.0.0: dependencies: '@types/mdast': 4.0.4 @@ -11878,8 +13149,14 @@ snapshots: mdast-util-to-markdown: 2.1.2 unified: 11.0.5 + remedial@1.0.8: {} + remove-trailing-separator@1.1.0: {} + remove-trailing-spaces@1.0.9: {} + + require-directory@2.1.1: {} + resolve-from@4.0.0: {} resolve-from@5.0.0: {} @@ -11898,6 +13175,11 @@ snapshots: path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 + restore-cursor@5.1.0: + dependencies: + onetime: 7.0.0 + signal-exit: 4.1.0 + retext-latin@4.0.0: dependencies: '@types/nlcst': 2.0.3 @@ -12009,6 +13291,12 @@ snapshots: semver@7.7.2: {} + sentence-case@3.0.4: + dependencies: + no-case: 3.0.4 + tslib: 2.8.1 + upper-case-first: 2.0.2 + serialize-query-params@2.0.2: {} server-only@0.0.1: {} @@ -12039,6 +13327,8 @@ snapshots: es-errors: 1.3.0 es-object-atoms: 1.1.1 + setimmediate@1.0.5: {} + shallow-clone@3.0.1: dependencies: kind-of: 6.0.3 @@ -12075,6 +13365,8 @@ snapshots: shebang-regex@3.0.0: {} + shell-quote@1.8.3: {} + shiki@1.29.2: dependencies: '@shikijs/core': 1.29.2 @@ -12116,6 +13408,8 @@ snapshots: signal-exit@4.1.0: {} + signedsource@1.0.0: {} + simple-swizzle@0.2.2: dependencies: is-arrayish: 0.3.2 @@ -12130,6 +13424,11 @@ snapshots: slash@5.1.0: {} + slice-ansi@7.1.2: + dependencies: + ansi-styles: 6.2.1 + is-fullwidth-code-point: 5.1.0 + snake-case@3.0.4: dependencies: dot-case: 3.0.4 @@ -12164,6 +13463,10 @@ snapshots: commander: 13.1.0 wicked-good-xpath: 1.3.0 + sponge-case@1.0.1: + dependencies: + tslib: 2.8.1 + sprintf-js@1.0.3: {} stop-iteration-iterator@1.1.0: @@ -12221,6 +13524,17 @@ snapshots: emoji-regex: 10.4.0 strip-ansi: 7.1.0 + string-width@7.2.0: + dependencies: + emoji-regex: 10.4.0 + get-east-asian-width: 1.4.0 + strip-ansi: 7.1.0 + + string-width@8.1.0: + dependencies: + get-east-asian-width: 1.4.0 + strip-ansi: 7.1.0 + string.prototype.matchall@4.0.12: dependencies: call-bind: 1.0.8 @@ -12337,6 +13651,10 @@ snapshots: csso: 5.0.5 picocolors: 1.1.1 + swap-case@2.0.2: + dependencies: + tslib: 2.8.1 + symbol-tree@3.2.4: {} sync-fetch@0.6.0-2: @@ -12418,6 +13736,10 @@ snapshots: tinyexec@1.0.1: {} + title-case@3.0.3: + dependencies: + tslib: 2.8.1 + title@4.0.1: dependencies: arg: 5.0.2 @@ -12444,6 +13766,8 @@ snapshots: dependencies: tldts: 6.1.86 + tr46@0.0.3: {} + tr46@5.1.1: dependencies: punycode: 2.3.1 @@ -12464,6 +13788,10 @@ snapshots: ts-interface-checker@0.1.13: {} + ts-log@2.2.7: {} + + tslib@2.6.3: {} + tslib@2.8.1: {} tsx@4.20.5: @@ -12528,6 +13856,8 @@ snapshots: typescript@5.9.2: {} + ua-parser-js@1.0.41: {} + ufo@1.6.1: {} unbox-primitive@1.1.0: @@ -12537,6 +13867,8 @@ snapshots: has-symbols: 1.1.0 which-boxed-primitive: 1.1.1 + unc-path-regex@0.1.2: {} + undici-types@6.21.0: {} unicode-canonical-property-names-ecmascript@2.0.1: {} @@ -12702,6 +14034,10 @@ snapshots: escalade: 3.2.0 picocolors: 1.1.1 + upper-case-first@2.0.2: + dependencies: + tslib: 2.8.1 + upper-case@2.0.2: dependencies: tslib: 2.8.1 @@ -12821,6 +14157,8 @@ snapshots: web-streams-polyfill@3.3.3: {} + webidl-conversions@3.0.1: {} + webidl-conversions@7.0.0: {} webpack-bundle-analyzer@4.10.1: @@ -12853,6 +14191,11 @@ snapshots: tr46: 5.1.1 webidl-conversions: 7.0.0 + whatwg-url@5.0.0: + dependencies: + tr46: 0.0.3 + webidl-conversions: 3.0.1 + which-boxed-primitive@1.1.1: dependencies: is-bigint: 1.1.0 @@ -12906,6 +14249,12 @@ snapshots: word-wrap@1.2.5: {} + wrap-ansi@6.2.0: + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi@7.0.0: dependencies: ansi-styles: 4.3.0 @@ -12918,6 +14267,12 @@ snapshots: string-width: 5.1.2 strip-ansi: 7.1.0 + wrap-ansi@9.0.2: + dependencies: + ansi-styles: 6.2.1 + string-width: 7.2.0 + strip-ansi: 7.1.0 + wrappy@1.0.2: {} ws@7.5.10: {} @@ -12930,14 +14285,30 @@ snapshots: xmlchars@2.2.0: {} + y18n@5.0.8: {} + yallist@3.1.1: {} yaml@2.8.1: {} + yargs-parser@21.1.1: {} + + yargs@17.7.2: + dependencies: + cliui: 8.0.1 + escalade: 3.2.0 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + string-width: 4.2.3 + y18n: 5.0.8 + yargs-parser: 21.1.1 + yocto-queue@0.1.0: {} yocto-queue@1.2.1: {} + yoctocolors-cjs@2.1.3: {} + zod-validation-error@3.5.3(zod@3.25.76): dependencies: zod: 3.25.76 diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml new file mode 100644 index 0000000000..4745f21d75 --- /dev/null +++ b/pnpm-workspace.yaml @@ -0,0 +1,3 @@ +packages: + - "." + - "scripts/sync-landing-schema" diff --git a/public/images/next-image-export-optimizer-hashes.json b/public/images/next-image-export-optimizer-hashes.json index 0a24a53bb1..00848bd8dc 100644 --- a/public/images/next-image-export-optimizer-hashes.json +++ b/public/images/next-image-export-optimizer-hashes.json @@ -60,12 +60,14 @@ "/blur-blob.806d2505.webp": "BInXgg69BRLrWxxX-vMwO09WhUgC8umt6F17w9-4lP0=", "/blur.701b3d8a.webp": "WzjpcF01ReIsRBgeKAs0KyCfB8h6tZk2lzY89i9xlKk=", "/business_layer.68bf746f.png": "DwCtOs-q1Y-DgBxEj6NqyVaOAiq5zCB8xPF-rZ5Qe1U=", + "/custom-rules-example.bef2e348.png": "PisYkER55XvsniNZZXLPpjkVyikRlDi-6kN99OLZMnA=", "/dataloader-query.9c90539e.png": "2xPPUoCjbgMKsH3EPLBAImfsNb-MYPb-Qf6gXg8QCn4=", "/fernando.8a674f38.webp": "VLcChFQr-iiIKTZ2OftoAAWS8cjUYAaBV0C-U9vcKS4=", "/frances.033cc832.webp": "WDYuYaN-sUoPKcZWY6udTedmfrgDg80CQW2Jr4LF8ng=", "/graphql-cover-1_53228256677_o.f1214f00.jpg": "OVKx+JK+SA2wdzmUs3VN+eHR7Fk2CXhTLYdNIyNbehg=", "/graphql-cover-2_53228256672_o.80b12e74.jpg": "eRqA89yK+I9hdGfjSlv7sIpExOhByCXKn7xY86Lt2yA=", "/graphql-cover-3_53228256612_o.a5360272.jpg": "MDj38ijAhAyJTMvi0vNE7JVj+uXRXNLUhdSXtZvEMT4=", + "/graphql-logo-stripes.ce1751be.png": "82owDHF2zOfFBFy44u5TnKNE95tLfwMRr6MlKaB8hLQ=", "/graphql-org-v0.8990439d.gif": "UuHxSMb-yt4-+HxYB-VRMfNYIa1UaNWQeGwA3Nd+GfI=", "/graphql-org-v1-learn-page.44ccd7df.png": "GsV1iA47a64oNe+IgjoFKEtcbBKTCqtm1+ZkoARjt+I=", "/graphql-org-v1.599caf32.gif": "Tp9NHPBhI8WQy7qOonZH5OqlRqtNlAIKnUMi0KefaOE=", @@ -165,6 +167,9 @@ "/graphqlconf-202395_53229430163_o.83d6ce30.jpg": "wGPGuLNhdPy1AKSdem7dB2U3hCnLNt0m7A697OKpMLA=", "/graphqlconf-202396_53229628185_o.e02e8158.jpg": "CwcPIFPl3qMN77xrq3PNo3IDu2xdE5t-XAmqMN7vvrA=", "/graphqlconf-2023graphqlconf-2023_53228255062_o.29b776c3.jpg": "iXr9Z8xwKZhM1pUZPRRTFEHbvwYlw81k6ZIqW5zh3x4=", + "/group1.af9bb15c.png": "9RptZ8CT6KenCuvrIaUjDPov5Bc1nekosHbd2WYotCE=", + "/group2.c21b6cf5.png": "A9ilc92Tx9-JcRitvdGpaH5L7PpWnHBpA5kPPBDpEVM=", + "/group3.7c230a60.png": "nD-uWJjSDMX8QHM0XVUFb1WpCU24MQQ++egZtGw7jnU=", "/hero-photo.19f66b71.jpeg": "+1M5NcPmN+FvAM3dalHY2LN1vv+LNURKJEVZUw-yEZo=", "/hero1.2c973c2e.jpg": "jY1RePeWthuOOa5c59Yl4TQD4J731poNxeaqzKDFmfg=", "/hero2.fa425ea9.jpg": "siZR-Q3HPEB5l2gU0DAbheWVVUOCsrOuOv-Ch0xCR7M=", @@ -179,6 +184,7 @@ "/marcandre.b8692933.jpg": "mUbreFySTVojHKZTl0VKcMQ9gHdSVCL47mSBnUYITBI=", "/marker-icon.d577052a.png": "L15ETF3vWj9pjeLgXar+ibZOYNJYXoQal5lJmpTWTbA=", "/mask.d8b3d3a1.webp": "ooHSo7veWXOjMT0Db6aLQN+zHXY7gzxQlsdLnBLk2es=", + "/matteo-collina.6d00c895.webp": "Z2GXMHdWblGtGMPMarpL1-cX-TzPzV6k+8evmNEjQmg=", "/pathological-query.2de43465.png": "Xoi58Mnu6FqfvNp4+gXgt-IyMDdMpdbqPUyNzlH5YJQ=", "/playground-transition-banner.2458871d.png": "ffm4o7utOWkmwaWC2KVVHPOz9zsaD6fG2P269pHT8uQ=", "/rest-api-people.c2b56e20.png": "KDbPJA1rAhVT43LeGLckdesx+bISV+6g0q9fJQNl5Tg=", diff --git a/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-10.WEBP b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-10.WEBP new file mode 100644 index 0000000000..d43cb2c0c6 Binary files /dev/null and b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-10.WEBP differ diff --git a/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-1080.WEBP b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-1080.WEBP new file mode 100644 index 0000000000..6d824ab453 Binary files /dev/null and b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-1080.WEBP differ diff --git a/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-1200.WEBP b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-1200.WEBP new file mode 100644 index 0000000000..f1e865c974 Binary files /dev/null and b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-1200.WEBP differ diff --git a/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-128.WEBP b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-128.WEBP new file mode 100644 index 0000000000..cee07d8f2d Binary files /dev/null and b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-128.WEBP differ diff --git a/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-16.WEBP b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-16.WEBP new file mode 100644 index 0000000000..bc8025bd83 Binary files /dev/null and b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-16.WEBP differ diff --git a/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-1920.WEBP b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-1920.WEBP new file mode 100644 index 0000000000..2e4f92fbd8 Binary files /dev/null and b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-1920.WEBP differ diff --git a/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-2048.WEBP b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-2048.WEBP new file mode 100644 index 0000000000..1cb3dcb8fa Binary files /dev/null and b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-2048.WEBP differ diff --git a/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-256.WEBP b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-256.WEBP new file mode 100644 index 0000000000..9b6d454016 Binary files /dev/null and b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-256.WEBP differ diff --git a/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-32.WEBP b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-32.WEBP new file mode 100644 index 0000000000..8eba9e20ad Binary files /dev/null and b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-32.WEBP differ diff --git a/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-384.WEBP b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-384.WEBP new file mode 100644 index 0000000000..a031f24def Binary files /dev/null and b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-384.WEBP differ diff --git a/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-3840.WEBP b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-3840.WEBP new file mode 100644 index 0000000000..1ca5f9d63b Binary files /dev/null and b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-3840.WEBP differ diff --git a/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-48.WEBP b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-48.WEBP new file mode 100644 index 0000000000..edca68c139 Binary files /dev/null and b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-48.WEBP differ diff --git a/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-64.WEBP b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-64.WEBP new file mode 100644 index 0000000000..bf23501389 Binary files /dev/null and b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-64.WEBP differ diff --git a/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-640.WEBP b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-640.WEBP new file mode 100644 index 0000000000..1803bd5b68 Binary files /dev/null and b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-640.WEBP differ diff --git a/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-750.WEBP b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-750.WEBP new file mode 100644 index 0000000000..3c2507dce7 Binary files /dev/null and b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-750.WEBP differ diff --git a/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-828.WEBP b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-828.WEBP new file mode 100644 index 0000000000..cd64555f44 Binary files /dev/null and b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-828.WEBP differ diff --git a/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-96.WEBP b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-96.WEBP new file mode 100644 index 0000000000..21bbb34373 Binary files /dev/null and b/public/nextImageExportOptimizer/custom-rules-example.bef2e348-opt-96.WEBP differ diff --git a/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-10.WEBP b/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-10.WEBP new file mode 100644 index 0000000000..b4e459c416 Binary files /dev/null and b/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-10.WEBP differ diff --git a/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-128.WEBP b/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-128.WEBP new file mode 100644 index 0000000000..6721f5242e Binary files /dev/null and b/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-128.WEBP differ diff --git a/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-16.WEBP b/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-16.WEBP new file mode 100644 index 0000000000..129e1d420c Binary files /dev/null and b/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-16.WEBP differ diff --git a/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-256.WEBP b/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-256.WEBP new file mode 100644 index 0000000000..2d788391b3 Binary files /dev/null and b/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-256.WEBP differ diff --git a/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-32.WEBP b/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-32.WEBP new file mode 100644 index 0000000000..b081516b65 Binary files /dev/null and b/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-32.WEBP differ diff --git a/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-384.WEBP b/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-384.WEBP new file mode 100644 index 0000000000..9a4b92ae30 Binary files /dev/null and b/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-384.WEBP differ diff --git a/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-48.WEBP b/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-48.WEBP new file mode 100644 index 0000000000..d7bd9dd698 Binary files /dev/null and b/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-48.WEBP differ diff --git a/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-64.WEBP b/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-64.WEBP new file mode 100644 index 0000000000..7b1f32cc71 Binary files /dev/null and b/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-64.WEBP differ diff --git a/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-640.WEBP b/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-640.WEBP new file mode 100644 index 0000000000..ee0c8c01bb Binary files /dev/null and b/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-640.WEBP differ diff --git a/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-750.WEBP b/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-750.WEBP new file mode 100644 index 0000000000..c56e6e8924 Binary files /dev/null and b/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-750.WEBP differ diff --git a/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-96.WEBP b/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-96.WEBP new file mode 100644 index 0000000000..36a644f6e4 Binary files /dev/null and b/public/nextImageExportOptimizer/graphql-logo-stripes.ce1751be-opt-96.WEBP differ diff --git a/public/nextImageExportOptimizer/group1.af9bb15c-opt-10.WEBP b/public/nextImageExportOptimizer/group1.af9bb15c-opt-10.WEBP new file mode 100644 index 0000000000..3227631558 Binary files /dev/null and b/public/nextImageExportOptimizer/group1.af9bb15c-opt-10.WEBP differ diff --git a/public/nextImageExportOptimizer/group1.af9bb15c-opt-1080.WEBP b/public/nextImageExportOptimizer/group1.af9bb15c-opt-1080.WEBP new file mode 100644 index 0000000000..ebf0c0a17f Binary files /dev/null and b/public/nextImageExportOptimizer/group1.af9bb15c-opt-1080.WEBP differ diff --git a/public/nextImageExportOptimizer/group1.af9bb15c-opt-1200.WEBP b/public/nextImageExportOptimizer/group1.af9bb15c-opt-1200.WEBP new file mode 100644 index 0000000000..b1e82e55c9 Binary files /dev/null and b/public/nextImageExportOptimizer/group1.af9bb15c-opt-1200.WEBP differ diff --git a/public/nextImageExportOptimizer/group1.af9bb15c-opt-128.WEBP b/public/nextImageExportOptimizer/group1.af9bb15c-opt-128.WEBP new file mode 100644 index 0000000000..60061fee29 Binary files /dev/null and b/public/nextImageExportOptimizer/group1.af9bb15c-opt-128.WEBP differ diff --git a/public/nextImageExportOptimizer/group1.af9bb15c-opt-16.WEBP b/public/nextImageExportOptimizer/group1.af9bb15c-opt-16.WEBP new file mode 100644 index 0000000000..f5d167fa5d Binary files /dev/null and b/public/nextImageExportOptimizer/group1.af9bb15c-opt-16.WEBP differ diff --git a/public/nextImageExportOptimizer/group1.af9bb15c-opt-1920.WEBP b/public/nextImageExportOptimizer/group1.af9bb15c-opt-1920.WEBP new file mode 100644 index 0000000000..67fa496e79 Binary files /dev/null and b/public/nextImageExportOptimizer/group1.af9bb15c-opt-1920.WEBP differ diff --git a/public/nextImageExportOptimizer/group1.af9bb15c-opt-2048.WEBP b/public/nextImageExportOptimizer/group1.af9bb15c-opt-2048.WEBP new file mode 100644 index 0000000000..22a99a68fa Binary files /dev/null and b/public/nextImageExportOptimizer/group1.af9bb15c-opt-2048.WEBP differ diff --git a/public/nextImageExportOptimizer/group1.af9bb15c-opt-256.WEBP b/public/nextImageExportOptimizer/group1.af9bb15c-opt-256.WEBP new file mode 100644 index 0000000000..8850e04c07 Binary files /dev/null and b/public/nextImageExportOptimizer/group1.af9bb15c-opt-256.WEBP differ diff --git a/public/nextImageExportOptimizer/group1.af9bb15c-opt-32.WEBP b/public/nextImageExportOptimizer/group1.af9bb15c-opt-32.WEBP new file mode 100644 index 0000000000..6803a5bead Binary files /dev/null and b/public/nextImageExportOptimizer/group1.af9bb15c-opt-32.WEBP differ diff --git a/public/nextImageExportOptimizer/group1.af9bb15c-opt-384.WEBP b/public/nextImageExportOptimizer/group1.af9bb15c-opt-384.WEBP new file mode 100644 index 0000000000..16d178df45 Binary files /dev/null and b/public/nextImageExportOptimizer/group1.af9bb15c-opt-384.WEBP differ diff --git a/public/nextImageExportOptimizer/group1.af9bb15c-opt-48.WEBP b/public/nextImageExportOptimizer/group1.af9bb15c-opt-48.WEBP new file mode 100644 index 0000000000..8e450cc998 Binary files /dev/null and b/public/nextImageExportOptimizer/group1.af9bb15c-opt-48.WEBP differ diff --git a/public/nextImageExportOptimizer/group1.af9bb15c-opt-64.WEBP b/public/nextImageExportOptimizer/group1.af9bb15c-opt-64.WEBP new file mode 100644 index 0000000000..5475dfcc0e Binary files /dev/null and b/public/nextImageExportOptimizer/group1.af9bb15c-opt-64.WEBP differ diff --git a/public/nextImageExportOptimizer/group1.af9bb15c-opt-640.WEBP b/public/nextImageExportOptimizer/group1.af9bb15c-opt-640.WEBP new file mode 100644 index 0000000000..f45022e42a Binary files /dev/null and b/public/nextImageExportOptimizer/group1.af9bb15c-opt-640.WEBP differ diff --git a/public/nextImageExportOptimizer/group1.af9bb15c-opt-750.WEBP b/public/nextImageExportOptimizer/group1.af9bb15c-opt-750.WEBP new file mode 100644 index 0000000000..e4b448a1d9 Binary files /dev/null and b/public/nextImageExportOptimizer/group1.af9bb15c-opt-750.WEBP differ diff --git a/public/nextImageExportOptimizer/group1.af9bb15c-opt-828.WEBP b/public/nextImageExportOptimizer/group1.af9bb15c-opt-828.WEBP new file mode 100644 index 0000000000..d4ee6e688a Binary files /dev/null and b/public/nextImageExportOptimizer/group1.af9bb15c-opt-828.WEBP differ diff --git a/public/nextImageExportOptimizer/group1.af9bb15c-opt-96.WEBP b/public/nextImageExportOptimizer/group1.af9bb15c-opt-96.WEBP new file mode 100644 index 0000000000..d931107078 Binary files /dev/null and b/public/nextImageExportOptimizer/group1.af9bb15c-opt-96.WEBP differ diff --git a/public/nextImageExportOptimizer/group2.c21b6cf5-opt-10.WEBP b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-10.WEBP new file mode 100644 index 0000000000..a72274e18b Binary files /dev/null and b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-10.WEBP differ diff --git a/public/nextImageExportOptimizer/group2.c21b6cf5-opt-1080.WEBP b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-1080.WEBP new file mode 100644 index 0000000000..9d8214382b Binary files /dev/null and b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-1080.WEBP differ diff --git a/public/nextImageExportOptimizer/group2.c21b6cf5-opt-1200.WEBP b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-1200.WEBP new file mode 100644 index 0000000000..bc04c2657a Binary files /dev/null and b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-1200.WEBP differ diff --git a/public/nextImageExportOptimizer/group2.c21b6cf5-opt-128.WEBP b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-128.WEBP new file mode 100644 index 0000000000..3f268e1cd0 Binary files /dev/null and b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-128.WEBP differ diff --git a/public/nextImageExportOptimizer/group2.c21b6cf5-opt-16.WEBP b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-16.WEBP new file mode 100644 index 0000000000..213e480470 Binary files /dev/null and b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-16.WEBP differ diff --git a/public/nextImageExportOptimizer/group2.c21b6cf5-opt-1920.WEBP b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-1920.WEBP new file mode 100644 index 0000000000..1f6a89467c Binary files /dev/null and b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-1920.WEBP differ diff --git a/public/nextImageExportOptimizer/group2.c21b6cf5-opt-2048.WEBP b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-2048.WEBP new file mode 100644 index 0000000000..9da859bd53 Binary files /dev/null and b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-2048.WEBP differ diff --git a/public/nextImageExportOptimizer/group2.c21b6cf5-opt-256.WEBP b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-256.WEBP new file mode 100644 index 0000000000..8a00ad2b46 Binary files /dev/null and b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-256.WEBP differ diff --git a/public/nextImageExportOptimizer/group2.c21b6cf5-opt-32.WEBP b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-32.WEBP new file mode 100644 index 0000000000..2e943c095c Binary files /dev/null and b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-32.WEBP differ diff --git a/public/nextImageExportOptimizer/group2.c21b6cf5-opt-384.WEBP b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-384.WEBP new file mode 100644 index 0000000000..ac20f4dcee Binary files /dev/null and b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-384.WEBP differ diff --git a/public/nextImageExportOptimizer/group2.c21b6cf5-opt-48.WEBP b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-48.WEBP new file mode 100644 index 0000000000..52e58dc0b9 Binary files /dev/null and b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-48.WEBP differ diff --git a/public/nextImageExportOptimizer/group2.c21b6cf5-opt-64.WEBP b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-64.WEBP new file mode 100644 index 0000000000..651d89c522 Binary files /dev/null and b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-64.WEBP differ diff --git a/public/nextImageExportOptimizer/group2.c21b6cf5-opt-640.WEBP b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-640.WEBP new file mode 100644 index 0000000000..a562feb435 Binary files /dev/null and b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-640.WEBP differ diff --git a/public/nextImageExportOptimizer/group2.c21b6cf5-opt-750.WEBP b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-750.WEBP new file mode 100644 index 0000000000..8e0c2fd458 Binary files /dev/null and b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-750.WEBP differ diff --git a/public/nextImageExportOptimizer/group2.c21b6cf5-opt-828.WEBP b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-828.WEBP new file mode 100644 index 0000000000..77c66a9978 Binary files /dev/null and b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-828.WEBP differ diff --git a/public/nextImageExportOptimizer/group2.c21b6cf5-opt-96.WEBP b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-96.WEBP new file mode 100644 index 0000000000..7ba3848f03 Binary files /dev/null and b/public/nextImageExportOptimizer/group2.c21b6cf5-opt-96.WEBP differ diff --git a/public/nextImageExportOptimizer/group3.7c230a60-opt-10.WEBP b/public/nextImageExportOptimizer/group3.7c230a60-opt-10.WEBP new file mode 100644 index 0000000000..42665ccca5 Binary files /dev/null and b/public/nextImageExportOptimizer/group3.7c230a60-opt-10.WEBP differ diff --git a/public/nextImageExportOptimizer/group3.7c230a60-opt-1080.WEBP b/public/nextImageExportOptimizer/group3.7c230a60-opt-1080.WEBP new file mode 100644 index 0000000000..95a5f6d21d Binary files /dev/null and b/public/nextImageExportOptimizer/group3.7c230a60-opt-1080.WEBP differ diff --git a/public/nextImageExportOptimizer/group3.7c230a60-opt-1200.WEBP b/public/nextImageExportOptimizer/group3.7c230a60-opt-1200.WEBP new file mode 100644 index 0000000000..1ccbd213b7 Binary files /dev/null and b/public/nextImageExportOptimizer/group3.7c230a60-opt-1200.WEBP differ diff --git a/public/nextImageExportOptimizer/group3.7c230a60-opt-128.WEBP b/public/nextImageExportOptimizer/group3.7c230a60-opt-128.WEBP new file mode 100644 index 0000000000..c88f767c20 Binary files /dev/null and b/public/nextImageExportOptimizer/group3.7c230a60-opt-128.WEBP differ diff --git a/public/nextImageExportOptimizer/group3.7c230a60-opt-16.WEBP b/public/nextImageExportOptimizer/group3.7c230a60-opt-16.WEBP new file mode 100644 index 0000000000..ce0d3f6499 Binary files /dev/null and b/public/nextImageExportOptimizer/group3.7c230a60-opt-16.WEBP differ diff --git a/public/nextImageExportOptimizer/group3.7c230a60-opt-1920.WEBP b/public/nextImageExportOptimizer/group3.7c230a60-opt-1920.WEBP new file mode 100644 index 0000000000..521c73521e Binary files /dev/null and b/public/nextImageExportOptimizer/group3.7c230a60-opt-1920.WEBP differ diff --git a/public/nextImageExportOptimizer/group3.7c230a60-opt-2048.WEBP b/public/nextImageExportOptimizer/group3.7c230a60-opt-2048.WEBP new file mode 100644 index 0000000000..94668b8eb7 Binary files /dev/null and b/public/nextImageExportOptimizer/group3.7c230a60-opt-2048.WEBP differ diff --git a/public/nextImageExportOptimizer/group3.7c230a60-opt-256.WEBP b/public/nextImageExportOptimizer/group3.7c230a60-opt-256.WEBP new file mode 100644 index 0000000000..0fe6cd8b25 Binary files /dev/null and b/public/nextImageExportOptimizer/group3.7c230a60-opt-256.WEBP differ diff --git a/public/nextImageExportOptimizer/group3.7c230a60-opt-32.WEBP b/public/nextImageExportOptimizer/group3.7c230a60-opt-32.WEBP new file mode 100644 index 0000000000..c6a38fd32c Binary files /dev/null and b/public/nextImageExportOptimizer/group3.7c230a60-opt-32.WEBP differ diff --git a/public/nextImageExportOptimizer/group3.7c230a60-opt-384.WEBP b/public/nextImageExportOptimizer/group3.7c230a60-opt-384.WEBP new file mode 100644 index 0000000000..2b02ae9c96 Binary files /dev/null and b/public/nextImageExportOptimizer/group3.7c230a60-opt-384.WEBP differ diff --git a/public/nextImageExportOptimizer/group3.7c230a60-opt-48.WEBP b/public/nextImageExportOptimizer/group3.7c230a60-opt-48.WEBP new file mode 100644 index 0000000000..316301729a Binary files /dev/null and b/public/nextImageExportOptimizer/group3.7c230a60-opt-48.WEBP differ diff --git a/public/nextImageExportOptimizer/group3.7c230a60-opt-64.WEBP b/public/nextImageExportOptimizer/group3.7c230a60-opt-64.WEBP new file mode 100644 index 0000000000..394cfe47c6 Binary files /dev/null and b/public/nextImageExportOptimizer/group3.7c230a60-opt-64.WEBP differ diff --git a/public/nextImageExportOptimizer/group3.7c230a60-opt-640.WEBP b/public/nextImageExportOptimizer/group3.7c230a60-opt-640.WEBP new file mode 100644 index 0000000000..c04ebf294d Binary files /dev/null and b/public/nextImageExportOptimizer/group3.7c230a60-opt-640.WEBP differ diff --git a/public/nextImageExportOptimizer/group3.7c230a60-opt-750.WEBP b/public/nextImageExportOptimizer/group3.7c230a60-opt-750.WEBP new file mode 100644 index 0000000000..2276c6445f Binary files /dev/null and b/public/nextImageExportOptimizer/group3.7c230a60-opt-750.WEBP differ diff --git a/public/nextImageExportOptimizer/group3.7c230a60-opt-828.WEBP b/public/nextImageExportOptimizer/group3.7c230a60-opt-828.WEBP new file mode 100644 index 0000000000..8ee057618e Binary files /dev/null and b/public/nextImageExportOptimizer/group3.7c230a60-opt-828.WEBP differ diff --git a/public/nextImageExportOptimizer/group3.7c230a60-opt-96.WEBP b/public/nextImageExportOptimizer/group3.7c230a60-opt-96.WEBP new file mode 100644 index 0000000000..2f7acee028 Binary files /dev/null and b/public/nextImageExportOptimizer/group3.7c230a60-opt-96.WEBP differ diff --git a/public/nextImageExportOptimizer/matteo-collina.6d00c895-opt-10.WEBP b/public/nextImageExportOptimizer/matteo-collina.6d00c895-opt-10.WEBP new file mode 100644 index 0000000000..06b20d9392 Binary files /dev/null and b/public/nextImageExportOptimizer/matteo-collina.6d00c895-opt-10.WEBP differ diff --git a/public/nextImageExportOptimizer/matteo-collina.6d00c895-opt-128.WEBP b/public/nextImageExportOptimizer/matteo-collina.6d00c895-opt-128.WEBP new file mode 100644 index 0000000000..b4f708f1d0 Binary files /dev/null and b/public/nextImageExportOptimizer/matteo-collina.6d00c895-opt-128.WEBP differ diff --git a/public/nextImageExportOptimizer/matteo-collina.6d00c895-opt-16.WEBP b/public/nextImageExportOptimizer/matteo-collina.6d00c895-opt-16.WEBP new file mode 100644 index 0000000000..8e2959aa4b Binary files /dev/null and b/public/nextImageExportOptimizer/matteo-collina.6d00c895-opt-16.WEBP differ diff --git a/public/nextImageExportOptimizer/matteo-collina.6d00c895-opt-256.WEBP b/public/nextImageExportOptimizer/matteo-collina.6d00c895-opt-256.WEBP new file mode 100644 index 0000000000..94b0179a6d Binary files /dev/null and b/public/nextImageExportOptimizer/matteo-collina.6d00c895-opt-256.WEBP differ diff --git a/public/nextImageExportOptimizer/matteo-collina.6d00c895-opt-32.WEBP b/public/nextImageExportOptimizer/matteo-collina.6d00c895-opt-32.WEBP new file mode 100644 index 0000000000..d23a0f1db6 Binary files /dev/null and b/public/nextImageExportOptimizer/matteo-collina.6d00c895-opt-32.WEBP differ diff --git a/public/nextImageExportOptimizer/matteo-collina.6d00c895-opt-384.WEBP b/public/nextImageExportOptimizer/matteo-collina.6d00c895-opt-384.WEBP new file mode 100644 index 0000000000..02edb016c9 Binary files /dev/null and b/public/nextImageExportOptimizer/matteo-collina.6d00c895-opt-384.WEBP differ diff --git a/public/nextImageExportOptimizer/matteo-collina.6d00c895-opt-48.WEBP b/public/nextImageExportOptimizer/matteo-collina.6d00c895-opt-48.WEBP new file mode 100644 index 0000000000..89ead6b6b5 Binary files /dev/null and b/public/nextImageExportOptimizer/matteo-collina.6d00c895-opt-48.WEBP differ diff --git a/public/nextImageExportOptimizer/matteo-collina.6d00c895-opt-64.WEBP b/public/nextImageExportOptimizer/matteo-collina.6d00c895-opt-64.WEBP new file mode 100644 index 0000000000..809eac8220 Binary files /dev/null and b/public/nextImageExportOptimizer/matteo-collina.6d00c895-opt-64.WEBP differ diff --git a/public/nextImageExportOptimizer/matteo-collina.6d00c895-opt-640.WEBP b/public/nextImageExportOptimizer/matteo-collina.6d00c895-opt-640.WEBP new file mode 100644 index 0000000000..ba9c0622b8 Binary files /dev/null and b/public/nextImageExportOptimizer/matteo-collina.6d00c895-opt-640.WEBP differ diff --git a/public/nextImageExportOptimizer/matteo-collina.6d00c895-opt-96.WEBP b/public/nextImageExportOptimizer/matteo-collina.6d00c895-opt-96.WEBP new file mode 100644 index 0000000000..576894a3e0 Binary files /dev/null and b/public/nextImageExportOptimizer/matteo-collina.6d00c895-opt-96.WEBP differ diff --git a/scripts/get-github-info/github-stats.json b/scripts/get-github-info/github-stats.json index c5cd5a9e33..4804695c39 100644 --- a/scripts/get-github-info/github-stats.json +++ b/scripts/get-github-info/github-stats.json @@ -1,7 +1,7 @@ { "altair-graphql/altair": { "hasCommitsInLast3Months": false, - "stars": 5331, + "stars": 5333, "formattedStars": "5k", "license": "MIT License", "lastRelease": "2025-05-29T16:34:43Z", @@ -9,7 +9,7 @@ }, "apache/apisix": { "hasCommitsInLast3Months": false, - "stars": 15597, + "stars": 15652, "formattedStars": "16k", "license": "Apache License 2.0", "lastRelease": "2025-06-27T07:28:29Z", @@ -25,27 +25,27 @@ }, "ChilliCream/hotchocolate": { "hasCommitsInLast3Months": false, - "stars": 5593, + "stars": 5600, "formattedStars": "6k", "license": "MIT License", - "lastRelease": "2025-09-09T09:29:52Z", - "formattedLastRelease": "1 day ago" + "lastRelease": "2025-09-22T20:41:26Z", + "formattedLastRelease": "18 hours ago" }, "dgraph-io/dgraph": { "hasCommitsInLast3Months": false, - "stars": 21216, + "stars": 21254, "formattedStars": "21k", "license": "Apache License 2.0", "lastRelease": "2025-08-18T17:32:20Z", - "formattedLastRelease": "3 weeks ago" + "formattedLastRelease": "1 month ago" }, "yahoo/elide": { "hasCommitsInLast3Months": false, - "stars": 1018, + "stars": 1017, "formattedStars": "1k", "license": "Other", "lastRelease": "2025-09-01T03:57:54Z", - "formattedLastRelease": "1 week ago" + "formattedLastRelease": "3 weeks ago" }, "graphapi-io/resources": { "hasCommitsInLast3Months": false, @@ -57,31 +57,31 @@ }, "hasura/graphql-engine": { "hasCommitsInLast3Months": false, - "stars": 31692, + "stars": 31711, "formattedStars": "32k", "license": "Apache License 2.0", - "lastRelease": "2025-08-19T12:12:37Z", - "formattedLastRelease": "3 weeks ago" + "lastRelease": "2025-09-11T08:30:08Z", + "formattedLastRelease": "1 week ago" }, "graphql-hive/platform": { "hasCommitsInLast3Months": false, "stars": 458, "formattedStars": "458", "license": "MIT License", - "lastRelease": "2025-08-28T18:03:32Z", - "formattedLastRelease": "1 week ago" + "lastRelease": "2025-09-22T11:17:49Z", + "formattedLastRelease": "1 day ago" }, "Kong/insomnia": { "hasCommitsInLast3Months": false, - "stars": 37122, + "stars": 37215, "formattedStars": "37k", "license": "Apache License 2.0", - "lastRelease": "2025-09-05T08:10:58Z", + "lastRelease": "2025-09-18T07:30:33Z", "formattedLastRelease": "5 days ago" }, "postmanlabs/postman-app-support": { "hasCommitsInLast3Months": false, - "stars": 5951, + "stars": 5953, "formattedStars": "6k", "license": "Unknown", "lastRelease": "", @@ -97,7 +97,7 @@ }, "TykTechnologies/tyk": { "hasCommitsInLast3Months": false, - "stars": 10362, + "stars": 10380, "formattedStars": "10k", "license": "Other", "lastRelease": "2025-08-07T14:37:50Z", @@ -113,11 +113,11 @@ }, "webiny/webiny-js": { "hasCommitsInLast3Months": false, - "stars": 7832, + "stars": 7843, "formattedStars": "8k", "license": "Other", - "lastRelease": "2025-09-05T07:39:55Z", - "formattedLastRelease": "5 days ago" + "lastRelease": "2025-09-16T08:29:00Z", + "formattedLastRelease": "1 week ago" }, "ballerina-platform/module-ballerina-graphql": { "hasCommitsInLast3Months": false, @@ -127,73 +127,105 @@ "lastRelease": "2025-04-11T01:29:10Z", "formattedLastRelease": "5 months ago" }, + "oliyh/re-graph": { + "hasCommitsInLast3Months": false, + "stars": 466, + "formattedStars": "466", + "license": "Unknown", + "lastRelease": "2022-07-20T09:24:02Z", + "formattedLastRelease": "3 years ago" + }, + "burner/graphqld": { + "hasCommitsInLast3Months": false, + "stars": 35, + "formattedStars": "35", + "license": "GNU Lesser General Public License v3.0", + "lastRelease": "2024-05-14T13:42:29Z", + "formattedLastRelease": "1 year ago" + }, "graphql/libgraphqlparser": { "hasCommitsInLast3Months": false, - "stars": 1099, + "stars": 1100, "formattedStars": "1k", "license": "MIT License", "lastRelease": "2017-10-16T21:47:42Z", "formattedLastRelease": "7 years ago" }, - "graphql-dotnet/graphql-client": { + "annkissam/common_graphql_client": { "hasCommitsInLast3Months": false, - "stars": 639, - "formattedStars": "1k", + "stars": 42, + "formattedStars": "42", "license": "MIT License", - "lastRelease": "2024-05-21T07:06:30Z", - "formattedLastRelease": "1 year ago" + "lastRelease": "2020-05-05T16:48:50Z", + "formattedLastRelease": "5 years ago" }, - "bkniffler/graphql-net-client": { + "uesteibar/neuron": { "hasCommitsInLast3Months": false, - "stars": 94, - "formattedStars": "94", - "license": "MIT License", + "stars": 332, + "formattedStars": "332", + "license": "Other", "lastRelease": "", "formattedLastRelease": "" }, - "linq2graphql/linq2graphql.client": { + "alumbra/alumbra": { "hasCommitsInLast3Months": false, - "stars": 8, - "formattedStars": "8", + "stars": 148, + "formattedStars": "148", "license": "MIT License", - "lastRelease": "2025-08-25T10:04:54Z", - "formattedLastRelease": "2 weeks ago" + "lastRelease": "2017-06-12T12:14:25Z", + "formattedLastRelease": "8 years ago" }, - "sahb1239/SAHB.GraphQLClient": { + "tendant/graphql-clj": { "hasCommitsInLast3Months": false, - "stars": 44, - "formattedStars": "44", - "license": "MIT License", - "lastRelease": "2020-05-17T10:50:58Z", - "formattedLastRelease": "5 years ago" + "stars": 285, + "formattedStars": "285", + "license": "Eclipse Public License 1.0", + "lastRelease": "", + "formattedLastRelease": "" }, - "byme8/ZeroQL": { + "walmartlabs/lacinia": { "hasCommitsInLast3Months": false, - "stars": 310, - "formattedStars": "310", - "license": "MIT License", - "lastRelease": "2025-06-17T12:39:08Z", - "formattedLastRelease": "2 months ago" + "stars": 1840, + "formattedStars": "2k", + "license": "Other", + "lastRelease": "", + "formattedLastRelease": "" + }, + "absinthe-graphql/absinthe": { + "hasCommitsInLast3Months": false, + "stars": 4356, + "formattedStars": "4k", + "license": "Other", + "lastRelease": "2025-06-09T16:38:08Z", + "formattedLastRelease": "3 months ago" + }, + "graphql-elixir/graphql": { + "hasCommitsInLast3Months": false, + "stars": 857, + "formattedStars": "1k", + "license": "Other", + "lastRelease": "2016-09-09T04:49:46Z", + "formattedLastRelease": "9 years ago" }, "EntityGraphQL/EntityGraphQL": { "hasCommitsInLast3Months": false, - "stars": 447, - "formattedStars": "447", + "stars": 446, + "formattedStars": "446", "license": "MIT License", - "lastRelease": "2025-08-12T06:40:41Z", - "formattedLastRelease": "4 weeks ago" + "lastRelease": "2025-09-16T00:35:14Z", + "formattedLastRelease": "1 week ago" }, "graphql-dotnet/graphql-dotnet": { "hasCommitsInLast3Months": false, - "stars": 5959, + "stars": 5960, "formattedStars": "6k", "license": "MIT License", - "lastRelease": "2025-04-13T20:07:34Z", - "formattedLastRelease": "4 months ago" + "lastRelease": "2025-09-21T17:57:29Z", + "formattedLastRelease": "1 day ago" }, "chkimes/graphql-net": { "hasCommitsInLast3Months": false, - "stars": 889, + "stars": 888, "formattedStars": "1k", "license": "MIT License", "lastRelease": "", @@ -201,71 +233,63 @@ }, "rivantsov/ngraphql": { "hasCommitsInLast3Months": false, - "stars": 46, - "formattedStars": "46", + "stars": 45, + "formattedStars": "45", "license": "MIT License", "lastRelease": "", "formattedLastRelease": "" }, - "oliyh/re-graph": { - "hasCommitsInLast3Months": false, - "stars": 466, - "formattedStars": "466", - "license": "Unknown", - "lastRelease": "2022-07-20T09:24:02Z", - "formattedLastRelease": "3 years ago" - }, - "annkissam/common_graphql_client": { + "graphql-dotnet/graphql-client": { "hasCommitsInLast3Months": false, - "stars": 42, - "formattedStars": "42", + "stars": 640, + "formattedStars": "1k", "license": "MIT License", - "lastRelease": "2020-05-05T16:48:50Z", - "formattedLastRelease": "5 years ago" + "lastRelease": "2024-05-21T07:06:30Z", + "formattedLastRelease": "1 year ago" }, - "uesteibar/neuron": { + "bkniffler/graphql-net-client": { "hasCommitsInLast3Months": false, - "stars": 332, - "formattedStars": "332", - "license": "Other", + "stars": 94, + "formattedStars": "94", + "license": "MIT License", "lastRelease": "", "formattedLastRelease": "" }, - "absinthe-graphql/absinthe": { + "linq2graphql/linq2graphql.client": { "hasCommitsInLast3Months": false, - "stars": 4353, - "formattedStars": "4k", - "license": "Other", - "lastRelease": "2025-06-09T16:38:08Z", - "formattedLastRelease": "3 months ago" + "stars": 8, + "formattedStars": "8", + "license": "MIT License", + "lastRelease": "2025-08-25T10:04:54Z", + "formattedLastRelease": "4 weeks ago" }, - "graphql-elixir/graphql": { + "sahb1239/SAHB.GraphQLClient": { "hasCommitsInLast3Months": false, - "stars": 857, - "formattedStars": "1k", - "license": "Other", - "lastRelease": "2016-09-09T04:49:46Z", - "formattedLastRelease": "9 years ago" + "stars": 44, + "formattedStars": "44", + "license": "MIT License", + "lastRelease": "2020-05-17T10:50:58Z", + "formattedLastRelease": "5 years ago" }, - "burner/graphqld": { + "byme8/ZeroQL": { "hasCommitsInLast3Months": false, - "stars": 35, - "formattedStars": "35", - "license": "GNU Lesser General Public License v3.0", - "lastRelease": "2024-05-14T13:42:29Z", - "formattedLastRelease": "1 year ago" + "stars": 311, + "formattedStars": "311", + "license": "MIT License", + "lastRelease": "2025-06-17T12:39:08Z", + "formattedLastRelease": "3 months ago" }, - "dillonkearns/elm-graphql": { + "jlouis/graphql-erlang": { "hasCommitsInLast3Months": false, - "stars": 782, - "formattedStars": "1k", - "license": "BSD 3-Clause \"New\" or \"Revised\" License", - "lastRelease": "", - "formattedLastRelease": "" + "stars": 314, + "formattedStars": "314", + "license": "Other", + "lastRelease": "2018-06-22T12:35:43Z", + "formattedLastRelease": "7 years ago" }, "gql-dart/ferry": { "hasCommitsInLast3Months": false, - "stars": 625, + "stars": 627, "formattedStars": "1k", "license": "MIT License", "lastRelease": "", @@ -273,19 +297,19 @@ }, "zino-app/graphql-flutter": { "hasCommitsInLast3Months": false, - "stars": 3267, + "stars": 3266, "formattedStars": "3k", "license": "MIT License", "lastRelease": "2025-09-07T10:05:12Z", - "formattedLastRelease": "3 days ago" + "formattedLastRelease": "2 weeks ago" }, "Khan/genqlient": { "hasCommitsInLast3Months": false, - "stars": 1242, + "stars": 1249, "formattedStars": "1k", "license": "MIT License", "lastRelease": "2025-05-18T19:09:08Z", - "formattedLastRelease": "3 months ago" + "formattedLastRelease": "4 months ago" }, "hasura/go-graphql-client": { "hasCommitsInLast3Months": false, @@ -293,7 +317,7 @@ "formattedStars": "448", "license": "MIT License", "lastRelease": "2025-06-20T03:17:26Z", - "formattedLastRelease": "2 months ago" + "formattedLastRelease": "3 months ago" }, "shurcooL/graphql": { "hasCommitsInLast3Months": false, @@ -305,7 +329,7 @@ }, "machinebox/graphql": { "hasCommitsInLast3Months": false, - "stars": 960, + "stars": 961, "formattedStars": "1k", "license": "Apache License 2.0", "lastRelease": "2018-05-31T14:28:32Z", @@ -313,11 +337,11 @@ }, "99designs/gqlgen": { "hasCommitsInLast3Months": false, - "stars": 10470, - "formattedStars": "10k", + "stars": 10503, + "formattedStars": "11k", "license": "MIT License", - "lastRelease": "2025-07-27T23:09:18Z", - "formattedLastRelease": "1 month ago" + "lastRelease": "2025-09-17T16:13:26Z", + "formattedLastRelease": "5 days ago" }, "andrewwphillips/eggql": { "hasCommitsInLast3Months": false, @@ -337,15 +361,15 @@ }, "graph-gophers/graphql-go": { "hasCommitsInLast3Months": false, - "stars": 4720, + "stars": 4725, "formattedStars": "5k", "license": "BSD 2-Clause \"Simplified\" License", "lastRelease": "2025-09-09T11:37:07Z", - "formattedLastRelease": "1 day ago" + "formattedLastRelease": "2 weeks ago" }, "graphql-go/graphql": { "hasCommitsInLast3Months": false, - "stars": 10099, + "stars": 10102, "formattedStars": "10k", "license": "MIT License", "lastRelease": "2023-04-10T18:20:23Z", @@ -369,91 +393,163 @@ }, "wundergraph/graphql-go-tools": { "hasCommitsInLast3Months": false, - "stars": 777, + "stars": 783, "formattedStars": "1k", "license": "MIT License", - "lastRelease": "2025-09-09T14:14:55Z", - "formattedLastRelease": "1 day ago" + "lastRelease": "2025-09-23T12:56:08Z", + "formattedLastRelease": "2 hours ago" }, - "jlouis/graphql-erlang": { + "dillonkearns/elm-graphql": { "hasCommitsInLast3Months": false, - "stars": 314, - "formattedStars": "314", - "license": "Other", - "lastRelease": "2018-06-22T12:35:43Z", - "formattedLastRelease": "7 years ago" + "stars": 782, + "formattedStars": "1k", + "license": "BSD 3-Clause \"New\" or \"Revised\" License", + "lastRelease": "", + "formattedLastRelease": "" }, "dosco/graphjin": { "hasCommitsInLast3Months": false, - "stars": 2993, + "stars": 2995, "formattedStars": "3k", "license": "Apache License 2.0", - "lastRelease": "2025-06-22T17:03:58Z", - "formattedLastRelease": "2 months ago" + "lastRelease": "2025-09-18T06:22:50Z", + "formattedLastRelease": "5 days ago" }, - "grails/gorm-graphql": { + "apollographql/apollo-client": { "hasCommitsInLast3Months": false, - "stars": 81, - "formattedStars": "81", - "license": "Unknown", - "lastRelease": "2023-12-08T10:48:05Z", - "formattedLastRelease": "1 year ago" + "stars": 19635, + "formattedStars": "20k", + "license": "MIT License", + "lastRelease": "2025-09-17T21:21:59Z", + "formattedLastRelease": "5 days ago" }, - "grooviter/gql": { + "aws-amplify/amplify-js": { "hasCommitsInLast3Months": false, - "stars": 49, - "formattedStars": "49", + "stars": 9552, + "formattedStars": "10k", "license": "Apache License 2.0", - "lastRelease": "2024-11-05T10:13:23Z", - "formattedLastRelease": "10 months ago" - }, - "alumbra/alumbra": { - "hasCommitsInLast3Months": false, - "stars": 148, - "formattedStars": "148", - "license": "MIT License", - "lastRelease": "2017-06-12T12:14:25Z", - "formattedLastRelease": "8 years ago" + "lastRelease": "2025-09-11T15:05:44Z", + "formattedLastRelease": "1 week ago" }, - "tendant/graphql-clj": { + "Houfeng/gq-loader": { "hasCommitsInLast3Months": false, - "stars": 285, - "formattedStars": "285", - "license": "Eclipse Public License 1.0", + "stars": 59, + "formattedStars": "59", + "license": "Unknown", "lastRelease": "", "formattedLastRelease": "" }, - "walmartlabs/lacinia": { + "gqty-dev/gqty": { "hasCommitsInLast3Months": false, - "stars": 1839, - "formattedStars": "2k", - "license": "Other", - "lastRelease": "", - "formattedLastRelease": "" + "stars": 1025, + "formattedStars": "1k", + "license": "MIT License", + "lastRelease": "2025-09-13T14:46:45Z", + "formattedLastRelease": "1 week ago" }, - "morpheusgraphql/morpheus-graphql": { + "grafoojs/grafoo": { "hasCommitsInLast3Months": false, - "stars": 417, - "formattedStars": "417", + "stars": 274, + "formattedStars": "274", "license": "MIT License", - "lastRelease": "2024-06-10T08:34:35Z", - "formattedLastRelease": "1 year ago" + "lastRelease": "2018-06-20T15:21:00Z", + "formattedLastRelease": "7 years ago" }, - "jasonsychau/graphql-w-persistent": { + "badbatch/graphql-box": { "hasCommitsInLast3Months": false, - "stars": 10, - "formattedStars": "10", - "license": "Unknown", + "stars": 27, + "formattedStars": "27", + "license": "MIT License", "lastRelease": "", "formattedLastRelease": "" }, - "higherkindness/mu-haskell": { + "nearform/graphql-hooks": { "hasCommitsInLast3Months": false, - "stars": 334, - "formattedStars": "334", + "stars": 1889, + "formattedStars": "2k", + "license": "Other", + "lastRelease": "2025-01-08T18:45:52Z", + "formattedLastRelease": "8 months ago" + }, + "graphql/graphql-http": { + "hasCommitsInLast3Months": false, + "stars": 351, + "formattedStars": "351", + "license": "MIT License", + "lastRelease": "2025-01-17T14:16:52Z", + "formattedLastRelease": "8 months ago" + }, + "jasonkuhrt/graphql-request": { + "hasCommitsInLast3Months": false, + "stars": 6043, + "formattedStars": "6k", + "license": "MIT License", + "lastRelease": "2020-05-29T13:00:56Z", + "formattedLastRelease": "5 years ago" + }, + "enisdenjo/graphql-sse": { + "hasCommitsInLast3Months": false, + "stars": 430, + "formattedStars": "430", + "license": "MIT License", + "lastRelease": "2025-01-10T11:57:20Z", + "formattedLastRelease": "8 months ago" + }, + "babyfish-ct/graphql-ts-client": { + "hasCommitsInLast3Months": false, + "stars": 149, + "formattedStars": "149", + "license": "MIT License", + "lastRelease": "2023-12-14T03:06:21Z", + "formattedLastRelease": "1 year ago" + }, + "enisdenjo/graphql-ws": { + "hasCommitsInLast3Months": false, + "stars": 1833, + "formattedStars": "2k", + "license": "MIT License", + "lastRelease": "2025-07-14T12:15:37Z", + "formattedLastRelease": "2 months ago" + }, + "hasura/graphqurl": { + "hasCommitsInLast3Months": false, + "stars": 3370, + "formattedStars": "3k", "license": "Apache License 2.0", - "lastRelease": "2021-01-11T11:19:38Z", - "formattedLastRelease": "4 years ago" + "lastRelease": "", + "formattedLastRelease": "" + }, + "kadirahq/lokka": { + "hasCommitsInLast3Months": false, + "stars": 1529, + "formattedStars": "2k", + "license": "MIT License", + "lastRelease": "", + "formattedLastRelease": "" + }, + "choojs/nanographql": { + "hasCommitsInLast3Months": false, + "stars": 420, + "formattedStars": "420", + "license": "MIT License", + "lastRelease": "", + "formattedLastRelease": "" + }, + "facebook/relay": { + "hasCommitsInLast3Months": false, + "stars": 18854, + "formattedStars": "19k", + "license": "MIT License", + "lastRelease": "2025-08-06T23:45:00Z", + "formattedLastRelease": "1 month ago" + }, + "FormidableLabs/urql": { + "hasCommitsInLast3Months": false, + "stars": 8853, + "formattedStars": "9k", + "license": "MIT License", + "lastRelease": "2025-08-29T08:06:41Z", + "formattedLastRelease": "3 weeks ago" }, "apollographql/apollo-kotlin": { "hasCommitsInLast3Months": false, @@ -461,15 +557,15 @@ "formattedStars": "4k", "license": "MIT License", "lastRelease": "2025-08-21T15:31:08Z", - "formattedLastRelease": "2 weeks ago" + "formattedLastRelease": "1 month ago" }, "ExpediaGroup/graphql-kotlin": { "hasCommitsInLast3Months": false, - "stars": 1778, + "stars": 1779, "formattedStars": "2k", "license": "Apache License 2.0", "lastRelease": "2025-06-16T17:02:18Z", - "formattedLastRelease": "2 months ago" + "formattedLastRelease": "3 months ago" }, "americanexpress/nodes": { "hasCommitsInLast3Months": false, @@ -497,19 +593,19 @@ }, "graphql-java/graphql-java": { "hasCommitsInLast3Months": false, - "stars": 6196, + "stars": 6202, "formattedStars": "6k", "license": "MIT License", - "lastRelease": "2025-08-01T00:17:34Z", - "formattedLastRelease": "1 month ago" + "lastRelease": "2025-09-23T06:13:12Z", + "formattedLastRelease": "9 hours ago" }, "babyfish-ct/jimmer": { "hasCommitsInLast3Months": false, - "stars": 1473, + "stars": 1486, "formattedStars": "1k", "license": "Apache License 2.0", - "lastRelease": "2025-09-10T11:59:29Z", - "formattedLastRelease": "2 hours ago" + "lastRelease": "2025-09-15T15:13:48Z", + "formattedLastRelease": "1 week ago" }, "aPureBase/KGraphQL": { "hasCommitsInLast3Months": false, @@ -529,19 +625,19 @@ }, "netflix/dgs-framework": { "hasCommitsInLast3Months": false, - "stars": 3256, + "stars": 3257, "formattedStars": "3k", "license": "Apache License 2.0", - "lastRelease": "2025-08-27T00:04:38Z", - "formattedLastRelease": "2 weeks ago" + "lastRelease": "2025-09-15T20:09:48Z", + "formattedLastRelease": "1 week ago" }, "spring-projects/spring-graphql": { "hasCommitsInLast3Months": false, - "stars": 1569, + "stars": 1572, "formattedStars": "2k", "license": "Apache License 2.0", - "lastRelease": "2025-08-19T12:50:32Z", - "formattedLastRelease": "3 weeks ago" + "lastRelease": "2025-09-16T15:48:43Z", + "formattedLastRelease": "6 days ago" }, "graphql-java-generator/graphql-gradle-plugin-project": { "hasCommitsInLast3Months": false, @@ -551,165 +647,101 @@ "lastRelease": "", "formattedLastRelease": "" }, - "apollographql/apollo-client": { - "hasCommitsInLast3Months": false, - "stars": 19626, - "formattedStars": "20k", - "license": "MIT License", - "lastRelease": "2025-09-02T16:52:29Z", - "formattedLastRelease": "1 week ago" - }, - "aws-amplify/amplify-js": { - "hasCommitsInLast3Months": false, - "stars": 9548, - "formattedStars": "10k", - "license": "Apache License 2.0", - "lastRelease": "2025-08-06T12:33:16Z", - "formattedLastRelease": "1 month ago" - }, - "Houfeng/gq-loader": { + "grails/gorm-graphql": { "hasCommitsInLast3Months": false, - "stars": 59, - "formattedStars": "59", + "stars": 81, + "formattedStars": "81", "license": "Unknown", - "lastRelease": "", - "formattedLastRelease": "" + "lastRelease": "2023-12-08T10:48:05Z", + "formattedLastRelease": "1 year ago" }, - "gqty-dev/gqty": { + "grooviter/gql": { "hasCommitsInLast3Months": false, - "stars": 1022, - "formattedStars": "1k", - "license": "MIT License", - "lastRelease": "2025-07-17T11:50:27Z", - "formattedLastRelease": "1 month ago" + "stars": 49, + "formattedStars": "49", + "license": "Apache License 2.0", + "lastRelease": "2024-11-05T10:13:23Z", + "formattedLastRelease": "10 months ago" }, - "grafoojs/grafoo": { + "morpheusgraphql/morpheus-graphql": { "hasCommitsInLast3Months": false, - "stars": 274, - "formattedStars": "274", + "stars": 416, + "formattedStars": "416", "license": "MIT License", - "lastRelease": "2018-06-20T15:21:00Z", - "formattedLastRelease": "7 years ago" + "lastRelease": "2024-06-10T08:34:35Z", + "formattedLastRelease": "1 year ago" }, - "badbatch/graphql-box": { + "jasonsychau/graphql-w-persistent": { "hasCommitsInLast3Months": false, - "stars": 27, - "formattedStars": "27", - "license": "MIT License", + "stars": 10, + "formattedStars": "10", + "license": "Unknown", "lastRelease": "", "formattedLastRelease": "" }, - "nearform/graphql-hooks": { - "hasCommitsInLast3Months": false, - "stars": 1889, - "formattedStars": "2k", - "license": "Other", - "lastRelease": "2025-01-08T18:45:52Z", - "formattedLastRelease": "8 months ago" - }, - "graphql/graphql-http": { - "hasCommitsInLast3Months": false, - "stars": 350, - "formattedStars": "350", - "license": "MIT License", - "lastRelease": "2025-01-17T14:16:52Z", - "formattedLastRelease": "7 months ago" - }, - "jasonkuhrt/graphql-request": { - "hasCommitsInLast3Months": false, - "stars": 6039, - "formattedStars": "6k", - "license": "MIT License", - "lastRelease": "2020-05-29T13:00:56Z", - "formattedLastRelease": "5 years ago" - }, - "enisdenjo/graphql-sse": { - "hasCommitsInLast3Months": false, - "stars": 428, - "formattedStars": "428", - "license": "MIT License", - "lastRelease": "2025-01-10T11:57:20Z", - "formattedLastRelease": "7 months ago" - }, - "babyfish-ct/graphql-ts-client": { - "hasCommitsInLast3Months": false, - "stars": 148, - "formattedStars": "148", - "license": "MIT License", - "lastRelease": "2023-12-14T03:06:21Z", - "formattedLastRelease": "1 year ago" - }, - "enisdenjo/graphql-ws": { - "hasCommitsInLast3Months": false, - "stars": 1832, - "formattedStars": "2k", - "license": "MIT License", - "lastRelease": "2025-07-14T12:15:37Z", - "formattedLastRelease": "1 month ago" - }, - "hasura/graphqurl": { + "higherkindness/mu-haskell": { "hasCommitsInLast3Months": false, - "stars": 3369, - "formattedStars": "3k", + "stars": 334, + "formattedStars": "334", "license": "Apache License 2.0", - "lastRelease": "", - "formattedLastRelease": "" + "lastRelease": "2021-01-11T11:19:38Z", + "formattedLastRelease": "4 years ago" }, - "kadirahq/lokka": { + "neomatrixcode/Diana.jl": { "hasCommitsInLast3Months": false, - "stars": 1529, - "formattedStars": "2k", + "stars": 117, + "formattedStars": "117", "license": "MIT License", - "lastRelease": "", - "formattedLastRelease": "" + "lastRelease": "2022-08-16T03:22:22Z", + "formattedLastRelease": "3 years ago" }, - "choojs/nanographql": { + "DeloitteDigitalAPAC/GraphQLClient.jl": { "hasCommitsInLast3Months": false, - "stars": 420, - "formattedStars": "420", - "license": "MIT License", - "lastRelease": "", - "formattedLastRelease": "" + "stars": 47, + "formattedStars": "47", + "license": "Other", + "lastRelease": "2022-10-26T16:48:16Z", + "formattedLastRelease": "2 years ago" }, - "facebook/relay": { + "apollographql/apollo-server": { "hasCommitsInLast3Months": false, - "stars": 18853, - "formattedStars": "19k", + "stars": 13915, + "formattedStars": "14k", "license": "MIT License", - "lastRelease": "2025-08-06T23:45:00Z", - "formattedLastRelease": "1 month ago" + "lastRelease": "2025-07-17T16:58:26Z", + "formattedLastRelease": "2 months ago" }, - "FormidableLabs/urql": { + "graphql/graphql-js": { "hasCommitsInLast3Months": false, - "stars": 8848, - "formattedStars": "9k", + "stars": 20240, + "formattedStars": "20k", "license": "MIT License", - "lastRelease": "2025-08-29T08:06:41Z", - "formattedLastRelease": "1 week ago" + "lastRelease": "2025-06-11T16:37:17Z", + "formattedLastRelease": "3 months ago" }, - "andreas/ocaml-graphql-server": { + "dotansimha/graphql-yoga": { "hasCommitsInLast3Months": false, - "stars": 622, - "formattedStars": "1k", + "stars": 8438, + "formattedStars": "8k", "license": "MIT License", - "lastRelease": "2022-07-08T16:26:45Z", - "formattedLastRelease": "3 years ago" + "lastRelease": "2025-09-19T16:33:06Z", + "formattedLastRelease": "3 days ago" }, - "neomatrixcode/Diana.jl": { + "mercurius-js/mercurius": { "hasCommitsInLast3Months": false, - "stars": 116, - "formattedStars": "116", + "stars": 2443, + "formattedStars": "2k", "license": "MIT License", - "lastRelease": "2022-08-16T03:22:22Z", - "formattedLastRelease": "3 years ago" + "lastRelease": "2025-06-19T08:04:40Z", + "formattedLastRelease": "3 months ago" }, - "DeloitteDigitalAPAC/GraphQLClient.jl": { + "getcronit/pylon": { "hasCommitsInLast3Months": false, - "stars": 47, - "formattedStars": "47", - "license": "Other", - "lastRelease": "2022-10-26T16:48:16Z", - "formattedLastRelease": "2 years ago" + "stars": 333, + "formattedStars": "333", + "license": "Apache License 2.0", + "lastRelease": "2025-05-14T09:11:09Z", + "formattedLastRelease": "4 months ago" }, "networkimprov/brangr": { "hasCommitsInLast3Months": false, @@ -721,23 +753,23 @@ }, "hayes/giraphql": { "hasCommitsInLast3Months": false, - "stars": 2521, + "stars": 2527, "formattedStars": "3k", "license": "ISC License", - "lastRelease": "2025-09-07T21:17:51Z", - "formattedLastRelease": "2 days ago" + "lastRelease": "2025-09-19T17:43:30Z", + "formattedLastRelease": "3 days ago" }, "graphql/graphiql": { "hasCommitsInLast3Months": false, - "stars": 16625, + "stars": 16643, "formattedStars": "17k", "license": "MIT License", "lastRelease": "2025-07-19T17:43:48Z", - "formattedLastRelease": "1 month ago" + "formattedLastRelease": "2 months ago" }, "Urigo/graphql-cli": { "hasCommitsInLast3Months": false, - "stars": 2018, + "stars": 2017, "formattedStars": "2k", "license": "MIT License", "lastRelease": "2020-10-07T12:54:45Z", @@ -745,15 +777,15 @@ }, "dotansimha/graphql-code-generator": { "hasCommitsInLast3Months": false, - "stars": 11139, + "stars": 11149, "formattedStars": "11k", "license": "MIT License", - "lastRelease": "2025-09-07T17:01:52Z", - "formattedLastRelease": "2 days ago" + "lastRelease": "2025-09-15T14:34:44Z", + "formattedLastRelease": "1 week ago" }, "kamilkisiela/graphql-config": { "hasCommitsInLast3Months": false, - "stars": 1191, + "stars": 1192, "formattedStars": "1k", "license": "MIT License", "lastRelease": "2025-04-28T15:15:29Z", @@ -761,7 +793,7 @@ }, "dimaMachina/graphql-eslint/": { "hasCommitsInLast3Months": false, - "stars": 830, + "stars": 832, "formattedStars": "1k", "license": "MIT License", "lastRelease": "2025-03-26T14:11:23Z", @@ -769,7 +801,7 @@ }, "kamilkisiela/graphql-inspector": { "hasCommitsInLast3Months": false, - "stars": 1718, + "stars": 1723, "formattedStars": "2k", "license": "MIT License", "lastRelease": "2024-12-09T13:34:14Z", @@ -793,10 +825,10 @@ }, "Urigo/graphql-mesh": { "hasCommitsInLast3Months": false, - "stars": 3425, + "stars": 3430, "formattedStars": "3k", "license": "MIT License", - "lastRelease": "2025-09-06T12:58:22Z", + "lastRelease": "2025-09-19T08:42:00Z", "formattedLastRelease": "4 days ago" }, "maticzav/graphql-middleware": { @@ -813,7 +845,7 @@ "formattedStars": "1k", "license": "MIT License", "lastRelease": "2025-02-19T10:43:37Z", - "formattedLastRelease": "6 months ago" + "formattedLastRelease": "7 months ago" }, "Urigo/graphql-scalars": { "hasCommitsInLast3Months": false, @@ -821,11 +853,11 @@ "formattedStars": "2k", "license": "MIT License", "lastRelease": "2025-03-19T11:10:44Z", - "formattedLastRelease": "5 months ago" + "formattedLastRelease": "6 months ago" }, "maticzav/graphql-shield": { "hasCommitsInLast3Months": false, - "stars": 3566, + "stars": 3565, "formattedStars": "4k", "license": "MIT License", "lastRelease": "2022-11-22T19:08:37Z", @@ -833,11 +865,11 @@ }, "ardatan/graphql-tools": { "hasCommitsInLast3Months": false, - "stars": 5412, + "stars": 5409, "formattedStars": "5k", "license": "MIT License", - "lastRelease": "2025-09-05T16:16:42Z", - "formattedLastRelease": "4 days ago" + "lastRelease": "2025-09-22T19:23:14Z", + "formattedLastRelease": "20 hours ago" }, "anvilco/graphql-introspection-tools": { "hasCommitsInLast3Months": false, @@ -849,7 +881,7 @@ }, "graphile/postgraphile": { "hasCommitsInLast3Months": false, - "stars": 12799, + "stars": 12801, "formattedStars": "13k", "license": "Other", "lastRelease": "2023-10-05T16:27:00Z", @@ -857,15 +889,15 @@ }, "Urigo/SOFA": { "hasCommitsInLast3Months": false, - "stars": 1109, + "stars": 1107, "formattedStars": "1k", "license": "MIT License", "lastRelease": "2024-12-16T10:06:41Z", - "formattedLastRelease": "8 months ago" + "formattedLastRelease": "9 months ago" }, "anvilco/spectaql": { "hasCommitsInLast3Months": false, - "stars": 1174, + "stars": 1176, "formattedStars": "1k", "license": "MIT License", "lastRelease": "", @@ -873,15 +905,23 @@ }, "graphql-perl/graphql-perl": { "hasCommitsInLast3Months": false, - "stars": 72, - "formattedStars": "72", + "stars": 73, + "formattedStars": "73", "license": "Unknown", "lastRelease": "", "formattedLastRelease": "" }, + "andreas/ocaml-graphql-server": { + "hasCommitsInLast3Months": false, + "stars": 622, + "formattedStars": "1k", + "license": "MIT License", + "lastRelease": "2022-07-08T16:26:45Z", + "formattedLastRelease": "3 years ago" + }, "api-platform/api-platform": { "hasCommitsInLast3Months": false, - "stars": 8984, + "stars": 9012, "formattedStars": "9k", "license": "MIT License", "lastRelease": "2025-03-11T16:15:41Z", @@ -892,13 +932,13 @@ "stars": 374, "formattedStars": "374", "license": "GNU General Public License v2.0", - "lastRelease": "2025-09-09T13:18:27Z", - "formattedLastRelease": "1 day ago" + "lastRelease": "2025-09-23T13:35:04Z", + "formattedLastRelease": "1 hour ago" }, "infinityloop-dev/graphpinator": { "hasCommitsInLast3Months": false, - "stars": 44, - "formattedStars": "44", + "stars": 45, + "formattedStars": "45", "license": "MIT License", "lastRelease": "2025-06-26T12:08:01Z", "formattedLastRelease": "2 months ago" @@ -909,15 +949,15 @@ "formattedStars": "16", "license": "MIT License", "lastRelease": "2025-09-03T17:08:46Z", - "formattedLastRelease": "6 days ago" + "formattedLastRelease": "2 weeks ago" }, "webonyx/graphql-php": { "hasCommitsInLast3Months": false, - "stars": 4680, + "stars": 4682, "formattedStars": "5k", "license": "MIT License", "lastRelease": "2025-08-20T10:10:24Z", - "formattedLastRelease": "3 weeks ago" + "formattedLastRelease": "1 month ago" }, "ivome/graphql-relay-php": { "hasCommitsInLast3Months": false, @@ -933,28 +973,28 @@ "formattedStars": "1k", "license": "MIT License", "lastRelease": "2024-12-19T15:48:59Z", - "formattedLastRelease": "8 months ago" + "formattedLastRelease": "9 months ago" }, "thecodingmachine/graphqlite": { "hasCommitsInLast3Months": false, - "stars": 562, + "stars": 563, "formattedStars": "1k", "license": "MIT License", "lastRelease": "2025-09-04T16:39:26Z", - "formattedLastRelease": "5 days ago" + "formattedLastRelease": "2 weeks ago" }, "nuwave/lighthouse": { "hasCommitsInLast3Months": false, - "stars": 3444, + "stars": 3450, "formattedStars": "3k", "license": "MIT License", - "lastRelease": "2025-09-10T12:40:07Z", - "formattedLastRelease": "2 hours ago" + "lastRelease": "2025-09-11T08:07:50Z", + "formattedLastRelease": "1 week ago" }, "railt/railt": { "hasCommitsInLast3Months": false, - "stars": 361, - "formattedStars": "361", + "stars": 360, + "formattedStars": "360", "license": "MIT License", "lastRelease": "2019-03-01T15:20:44Z", "formattedLastRelease": "6 years ago" @@ -977,115 +1017,11 @@ }, "wp-graphql/wp-graphql": { "hasCommitsInLast3Months": false, - "stars": 3738, + "stars": 3742, "formattedStars": "4k", "license": "GNU General Public License v3.0", "lastRelease": "2025-09-08T20:08:08Z", - "formattedLastRelease": "1 day ago" - }, - "mirumee/ariadne-codegen": { - "hasCommitsInLast3Months": false, - "stars": 343, - "formattedStars": "343", - "license": "BSD 3-Clause \"New\" or \"Revised\" License", - "lastRelease": "2025-08-28T07:34:01Z", - "formattedLastRelease": "1 week ago" - }, - "graphql-python/gql": { - "hasCommitsInLast3Months": false, - "stars": 1631, - "formattedStars": "2k", - "license": "MIT License", - "lastRelease": "2025-09-05T14:22:54Z", - "formattedLastRelease": "5 days ago" - }, - "denisart/graphql-query": { - "hasCommitsInLast3Months": false, - "stars": 66, - "formattedStars": "66", - "license": "MIT License", - "lastRelease": "2024-07-31T10:54:53Z", - "formattedLastRelease": "1 year ago" - }, - "prisma-labs/python-graphql-client": { - "hasCommitsInLast3Months": false, - "stars": 156, - "formattedStars": "156", - "license": "MIT License", - "lastRelease": "", - "formattedLastRelease": "" - }, - "dsal3389/ql": { - "hasCommitsInLast3Months": false, - "stars": 8, - "formattedStars": "8", - "license": "Unknown", - "lastRelease": "2025-02-04T17:36:51Z", - "formattedLastRelease": "7 months ago" - }, - "qlient-org/python-qlient": { - "hasCommitsInLast3Months": false, - "stars": 46, - "formattedStars": "46", - "license": "MIT License", - "lastRelease": "2022-07-29T16:10:08Z", - "formattedLastRelease": "3 years ago" - }, - "profusion/sgqlc": { - "hasCommitsInLast3Months": false, - "stars": 539, - "formattedStars": "1k", - "license": "ISC License", - "lastRelease": "", - "formattedLastRelease": "" - }, - "mirumee/ariadne": { - "hasCommitsInLast3Months": false, - "stars": 2292, - "formattedStars": "2k", - "license": "BSD 3-Clause \"New\" or \"Revised\" License", - "lastRelease": "2025-04-18T08:27:47Z", - "formattedLastRelease": "4 months ago" - }, - "yefeza/django-graphbox": { - "hasCommitsInLast3Months": false, - "stars": 15, - "formattedStars": "15", - "license": "MIT License", - "lastRelease": "2024-03-23T21:41:41Z", - "formattedLastRelease": "1 year ago" - }, - "juanjcardona13/graphene_django_cruddals": { - "hasCommitsInLast3Months": false, - "stars": 16, - "formattedStars": "16", - "license": "Apache License 2.0", - "lastRelease": "", - "formattedLastRelease": "" - }, - "graphql-python/graphene": { - "hasCommitsInLast3Months": false, - "stars": 8208, - "formattedStars": "8k", - "license": "MIT License", - "lastRelease": "2024-11-09T20:43:58Z", - "formattedLastRelease": "10 months ago" - }, - "strawberry-graphql/strawberry": { - "hasCommitsInLast3Months": false, - "stars": 4402, - "formattedStars": "4k", - "license": "MIT License", - "lastRelease": "2025-09-07T20:28:35Z", - "formattedLastRelease": "2 days ago" - }, - "tartiflette/tartiflette": { - "hasCommitsInLast3Months": false, - "stars": 859, - "formattedStars": "1k", - "license": "MIT License", - "lastRelease": "2021-11-15T11:05:03Z", - "formattedLastRelease": "3 years ago" + "formattedLastRelease": "2 weeks ago" }, "ropensci/ghql": { "hasCommitsInLast3Months": false, @@ -1093,11 +1029,11 @@ "formattedStars": "148", "license": "Other", "lastRelease": "2025-09-08T08:41:00Z", - "formattedLastRelease": "2 days ago" + "formattedLastRelease": "2 weeks ago" }, "ohler55/agoo": { "hasCommitsInLast3Months": false, - "stars": 920, + "stars": 921, "formattedStars": "1k", "license": "MIT License", "lastRelease": "", @@ -1105,11 +1041,11 @@ }, "rmosolgo/graphql-ruby": { "hasCommitsInLast3Months": false, - "stars": 5410, + "stars": 5418, "formattedStars": "5k", "license": "MIT License", "lastRelease": "2025-07-19T17:15:49Z", - "formattedLastRelease": "1 month ago" + "formattedLastRelease": "2 months ago" }, "virtualshield/rails-graphql": { "hasCommitsInLast3Months": false, @@ -1117,55 +1053,15 @@ "formattedStars": "186", "license": "MIT License", "lastRelease": "2025-08-25T17:53:38Z", - "formattedLastRelease": "2 weeks ago" - }, - "apollographql/apollo-server": { - "hasCommitsInLast3Months": false, - "stars": 13915, - "formattedStars": "14k", - "license": "MIT License", - "lastRelease": "2025-07-17T16:58:26Z", - "formattedLastRelease": "1 month ago" - }, - "graphql/graphql-js": { - "hasCommitsInLast3Months": false, - "stars": 20230, - "formattedStars": "20k", - "license": "MIT License", - "lastRelease": "2025-06-11T16:37:17Z", - "formattedLastRelease": "2 months ago" - }, - "dotansimha/graphql-yoga": { - "hasCommitsInLast3Months": false, - "stars": 8431, - "formattedStars": "8k", - "license": "MIT License", - "lastRelease": "2025-09-06T20:14:20Z", - "formattedLastRelease": "3 days ago" - }, - "mercurius-js/mercurius": { - "hasCommitsInLast3Months": false, - "stars": 2439, - "formattedStars": "2k", - "license": "MIT License", - "lastRelease": "2025-06-19T08:04:40Z", - "formattedLastRelease": "2 months ago" - }, - "getcronit/pylon": { - "hasCommitsInLast3Months": false, - "stars": 331, - "formattedStars": "331", - "license": "Apache License 2.0", - "lastRelease": "2025-05-14T09:11:09Z", - "formattedLastRelease": "3 months ago" + "formattedLastRelease": "4 weeks ago" }, "obmarg/cynic": { "hasCommitsInLast3Months": false, - "stars": 431, - "formattedStars": "431", + "stars": 433, + "formattedStars": "433", "license": "Mozilla Public License 2.0", "lastRelease": "2025-08-19T19:37:22Z", - "formattedLastRelease": "3 weeks ago" + "formattedLastRelease": "1 month ago" }, "arthurkhlghatyan/gql-client-rs": { "hasCommitsInLast3Months": false, @@ -1175,9 +1071,17 @@ "lastRelease": "2025-06-07T14:31:10Z", "formattedLastRelease": "3 months ago" }, + "apollographql/router": { + "hasCommitsInLast3Months": false, + "stars": 924, + "formattedStars": "1k", + "license": "Other", + "lastRelease": "2025-09-23T14:34:45Z", + "formattedLastRelease": "56 minutes ago" + }, "async-graphql/async-graphql": { "hasCommitsInLast3Months": false, - "stars": 3566, + "stars": 3574, "formattedStars": "4k", "license": "Apache License 2.0", "lastRelease": "", @@ -1185,19 +1089,19 @@ }, "graphql-rust/juniper": { "hasCommitsInLast3Months": false, - "stars": 5878, + "stars": 5884, "formattedStars": "6k", "license": "Other", "lastRelease": "2025-09-08T23:23:40Z", - "formattedLastRelease": "1 day ago" + "formattedLastRelease": "2 weeks ago" }, "ghostdogpr/caliban": { "hasCommitsInLast3Months": false, - "stars": 972, + "stars": 973, "formattedStars": "1k", "license": "Apache License 2.0", "lastRelease": "2025-07-14T00:24:20Z", - "formattedLastRelease": "1 month ago" + "formattedLastRelease": "2 months ago" }, "sangria-graphql/sangria": { "hasCommitsInLast3Months": false, @@ -1209,11 +1113,11 @@ }, "apollographql/apollo-ios": { "hasCommitsInLast3Months": false, - "stars": 3981, + "stars": 3985, "formattedStars": "4k", "license": "MIT License", "lastRelease": "2025-09-08T18:41:53Z", - "formattedLastRelease": "1 day ago" + "formattedLastRelease": "2 weeks ago" }, "nerdsupremacist/Graphaello": { "hasCommitsInLast3Months": false, @@ -1241,11 +1145,11 @@ }, "GraphQLSwift/Graphiti": { "hasCommitsInLast3Months": false, - "stars": 549, + "stars": 550, "formattedStars": "1k", "license": "MIT License", "lastRelease": "2025-08-21T19:30:20Z", - "formattedLastRelease": "2 weeks ago" + "formattedLastRelease": "1 month ago" }, "nerdsupremacist/GraphZahl": { "hasCommitsInLast3Months": false, @@ -1255,68 +1159,164 @@ "lastRelease": "2021-05-17T12:51:10Z", "formattedLastRelease": "4 years ago" }, - "apollographql/router": { + "mirumee/ariadne": { "hasCommitsInLast3Months": false, - "stars": 917, - "formattedStars": "1k", - "license": "Other", - "lastRelease": "2025-09-08T15:08:21Z", - "formattedLastRelease": "1 day ago" + "stars": 2293, + "formattedStars": "2k", + "license": "BSD 3-Clause \"New\" or \"Revised\" License", + "lastRelease": "2025-04-18T08:27:47Z", + "formattedLastRelease": "5 months ago" }, - "eerimoq/gqt": { + "yefeza/django-graphbox": { "hasCommitsInLast3Months": false, - "stars": 470, - "formattedStars": "470", + "stars": 15, + "formattedStars": "15", "license": "MIT License", + "lastRelease": "2024-03-23T21:41:41Z", + "formattedLastRelease": "1 year ago" + }, + "juanjcardona13/graphene_django_cruddals": { + "hasCommitsInLast3Months": false, + "stars": 16, + "formattedStars": "16", + "license": "Apache License 2.0", "lastRelease": "", "formattedLastRelease": "" }, + "graphql-python/graphene": { + "hasCommitsInLast3Months": false, + "stars": 8210, + "formattedStars": "8k", + "license": "MIT License", + "lastRelease": "2024-11-09T20:43:58Z", + "formattedLastRelease": "10 months ago" + }, + "strawberry-graphql/strawberry": { + "hasCommitsInLast3Months": false, + "stars": 4416, + "formattedStars": "4k", + "license": "MIT License", + "lastRelease": "2025-09-07T20:28:35Z", + "formattedLastRelease": "2 weeks ago" + }, + "tartiflette/tartiflette": { + "hasCommitsInLast3Months": false, + "stars": 859, + "formattedStars": "1k", + "license": "MIT License", + "lastRelease": "2021-11-15T11:05:03Z", + "formattedLastRelease": "3 years ago" + }, "Escape-Technologies/graphql-armor": { "hasCommitsInLast3Months": false, - "stars": 544, + "stars": 546, "formattedStars": "1k", "license": "MIT License", "lastRelease": "2025-08-22T13:32:40Z", + "formattedLastRelease": "1 month ago" + }, + "mirumee/ariadne-codegen": { + "hasCommitsInLast3Months": false, + "stars": 346, + "formattedStars": "346", + "license": "BSD 3-Clause \"New\" or \"Revised\" License", + "lastRelease": "2025-09-19T10:23:51Z", + "formattedLastRelease": "4 days ago" + }, + "graphql-python/gql": { + "hasCommitsInLast3Months": false, + "stars": 1637, + "formattedStars": "2k", + "license": "MIT License", + "lastRelease": "2025-09-05T14:22:54Z", "formattedLastRelease": "2 weeks ago" }, - "graphql-hive/gateway": { + "denisart/graphql-query": { "hasCommitsInLast3Months": false, - "stars": 59, - "formattedStars": "59", + "stars": 66, + "formattedStars": "66", "license": "MIT License", - "lastRelease": "2025-09-09T09:52:51Z", - "formattedLastRelease": "1 day ago" + "lastRelease": "2024-07-31T10:54:53Z", + "formattedLastRelease": "1 year ago" + }, + "prisma-labs/python-graphql-client": { + "hasCommitsInLast3Months": false, + "stars": 156, + "formattedStars": "156", + "license": "MIT License", + "lastRelease": "", + "formattedLastRelease": "" + }, + "dsal3389/ql": { + "hasCommitsInLast3Months": false, + "stars": 8, + "formattedStars": "8", + "license": "Unknown", + "lastRelease": "2025-02-04T17:36:51Z", + "formattedLastRelease": "7 months ago" + }, + "qlient-org/python-qlient": { + "hasCommitsInLast3Months": false, + "stars": 46, + "formattedStars": "46", + "license": "MIT License", + "lastRelease": "2022-07-29T16:10:08Z", + "formattedLastRelease": "3 years ago" + }, + "profusion/sgqlc": { + "hasCommitsInLast3Months": false, + "stars": 540, + "formattedStars": "1k", + "license": "ISC License", + "lastRelease": "", + "formattedLastRelease": "" + }, + "eerimoq/gqt": { + "hasCommitsInLast3Months": false, + "stars": 470, + "formattedStars": "470", + "license": "MIT License", + "lastRelease": "", + "formattedLastRelease": "" }, "ldebruijn/graphql-protect": { "hasCommitsInLast3Months": false, - "stars": 33, - "formattedStars": "33", + "stars": 35, + "formattedStars": "35", "license": "MIT License", "lastRelease": "2025-09-09T20:03:39Z", - "formattedLastRelease": "18 hours ago" + "formattedLastRelease": "1 week ago" }, - "microcks/microcks": { + "glideapps/quicktype": { "hasCommitsInLast3Months": false, - "stars": 1701, - "formattedStars": "2k", + "stars": 13326, + "formattedStars": "13k", "license": "Apache License 2.0", - "lastRelease": "2025-07-21T12:44:11Z", - "formattedLastRelease": "1 month ago" + "lastRelease": "", + "formattedLastRelease": "" }, "schemathesis/schemathesis": { "hasCommitsInLast3Months": false, - "stars": 2711, + "stars": 2737, "formattedStars": "3k", "license": "MIT License", "lastRelease": "2025-09-01T19:49:28Z", - "formattedLastRelease": "1 week ago" + "formattedLastRelease": "3 weeks ago" }, - "glideapps/quicktype": { + "graphql-hive/gateway": { "hasCommitsInLast3Months": false, - "stars": 13297, - "formattedStars": "13k", + "stars": 60, + "formattedStars": "60", + "license": "MIT License", + "lastRelease": "2025-09-23T01:52:45Z", + "formattedLastRelease": "13 hours ago" + }, + "microcks/microcks": { + "hasCommitsInLast3Months": false, + "stars": 1706, + "formattedStars": "2k", "license": "Apache License 2.0", - "lastRelease": "", - "formattedLastRelease": "" + "lastRelease": "2025-07-21T12:44:11Z", + "formattedLastRelease": "2 months ago" } } \ No newline at end of file diff --git a/scripts/get-github-info/last-success.isodate b/scripts/get-github-info/last-success.isodate index ed7952c596..012baf9ab6 100644 --- a/scripts/get-github-info/last-success.isodate +++ b/scripts/get-github-info/last-success.isodate @@ -1 +1 @@ -2025-09-10T14:47:22.723Z \ No newline at end of file +2025-09-23T15:31:26.872Z \ No newline at end of file diff --git a/scripts/sync-landing-schema/.gitignore b/scripts/sync-landing-schema/.gitignore new file mode 100644 index 0000000000..3c3629e647 --- /dev/null +++ b/scripts/sync-landing-schema/.gitignore @@ -0,0 +1 @@ +node_modules diff --git a/scripts/sync-landing-schema/.last-sync.isodate b/scripts/sync-landing-schema/.last-sync.isodate new file mode 100644 index 0000000000..4d71ce9c62 --- /dev/null +++ b/scripts/sync-landing-schema/.last-sync.isodate @@ -0,0 +1 @@ +2025-09-23T16:10:25.771Z \ No newline at end of file diff --git a/scripts/sync-landing-schema/.sync-state.json b/scripts/sync-landing-schema/.sync-state.json new file mode 100644 index 0000000000..cf774f7e10 --- /dev/null +++ b/scripts/sync-landing-schema/.sync-state.json @@ -0,0 +1,21 @@ +{ + "version": 1, + "repositories": { + "graphql/graphiql": { + "lastCursor": "b3c42a65160ba4878b5ea87d9e72385889856464 4096", + "lastProcessed": "2025-09-23T16:10:25.769Z" + }, + "graphql/graphql-spec": { + "lastCursor": "43ae7baced54e37c68676b1ac5902e6223dcb078 650", + "lastProcessed": "2025-09-23T16:10:24.144Z" + }, + "graphql/graphql-wg": { + "lastCursor": "139d0b9cbe74756974c7e637d85e0283beb36297 2077", + "lastProcessed": "2025-09-23T16:10:24.747Z" + }, + "graphql/graphql-js": { + "lastCursor": "60ae6c48b9c78332bf3d6036e7d931a3617d0674 3244", + "lastProcessed": "2025-09-23T16:10:25.242Z" + } + } +} \ No newline at end of file diff --git a/scripts/sync-landing-schema/data.json b/scripts/sync-landing-schema/data.json new file mode 100644 index 0000000000..1e5404d621 --- /dev/null +++ b/scripts/sync-landing-schema/data.json @@ -0,0 +1,3567 @@ +{ + "GraphQL": [ + { + "id": "leebyron", + "website": "leebyron.com", + "contributions": 634 + }, + { + "id": "benjie", + "website": "https://benjie.dev", + "contributions": 393 + }, + { + "id": "mjmahone", + "website": null, + "contributions": 102 + }, + { + "id": "IvanGoncharov", + "website": "https://APIs.guru", + "contributions": 93 + }, + { + "id": "robrichard", + "website": "http://robrichard.net/", + "contributions": 77 + }, + { + "id": "michaelstaib", + "website": "http://www.chillicream.com", + "contributions": 72 + }, + { + "id": "martinbonnin", + "website": "https://mbonnin.net", + "contributions": 60 + }, + { + "id": "fotoetienne", + "website": "stephenspalding.com", + "contributions": 56 + }, + { + "id": "yaacovCR", + "website": null, + "contributions": 48 + }, + { + "id": "binaryseed", + "website": null, + "contributions": 46 + }, + { + "id": "wincent", + "website": "https://wincent.dev/", + "contributions": 38 + }, + { + "id": "robzhu", + "website": "https://updateloop.dev", + "contributions": 37 + }, + { + "id": "twof", + "website": "alex.dev", + "contributions": 34 + }, + { + "id": "dschafer", + "website": "https://www.facebook.com/dschafer", + "contributions": 34 + }, + { + "id": "eapache", + "website": "https://eapache.github.io/", + "contributions": 30 + }, + { + "id": "brianwarner", + "website": "https://bdwarner.com", + "contributions": 28 + }, + { + "id": "BoD", + "website": "https://JRAF.org", + "contributions": 26 + }, + { + "id": "hwillson", + "website": "https://github.com/hwillson", + "contributions": 26 + }, + { + "id": "andimarek", + "website": "https://www.graphql-java.com", + "contributions": 25 + }, + { + "id": "magicmark", + "website": "mark.larah.me", + "contributions": 21 + }, + { + "id": "rivantsov", + "website": null, + "contributions": 20 + }, + { + "id": "mmatsa", + "website": null, + "contributions": 20 + }, + { + "id": "bignimbus", + "contributions": 19 + }, + { + "id": "Urigo", + "website": "https://the-guild.dev/", + "contributions": 17 + }, + { + "id": "Alan-Cha", + "website": null, + "contributions": 17 + }, + { + "id": "spawnia", + "website": "https://franke.tech", + "contributions": 16 + }, + { + "id": "Keweiqu", + "website": null, + "contributions": 16 + }, + { + "id": "JoviDeCroock", + "website": "https://www.jovidecroock.com/", + "contributions": 14 + }, + { + "id": "mike-marcacci", + "website": "https://marcacci-labs.com/", + "contributions": 14 + }, + { + "id": "captbaritone", + "website": "https://jordaneldredge.com", + "contributions": 14 + }, + { + "id": "OlegIlyenko", + "website": "https://medium.com/@oleg.ilyenko", + "contributions": 13 + }, + { + "id": "tinnou", + "website": null, + "contributions": 12 + }, + { + "id": "sachee", + "website": null, + "contributions": 12 + }, + { + "id": "dariuszkuc", + "website": null, + "contributions": 11 + }, + { + "id": "AnthonyMDev", + "website": null, + "contributions": 10 + }, + { + "id": "xuorig", + "website": "https://magiroux.com", + "contributions": 10 + }, + { + "id": "martijnwalraven", + "website": null, + "contributions": 10 + }, + { + "id": "saihaj", + "website": "saihaj.dev", + "contributions": 10 + }, + { + "id": "ghmcadams", + "website": "https://www.linkedin.com/in/gabrielmcadams/", + "contributions": 10 + }, + { + "id": "abernix", + "website": null, + "contributions": 10 + }, + { + "id": "PascalSenn", + "website": "chillicream.com", + "contributions": 9 + }, + { + "id": "dondonz", + "contributions": 8 + }, + { + "id": "mcohen75", + "website": null, + "contributions": 8 + }, + { + "id": "schickling", + "website": "schickling.dev", + "contributions": 8 + }, + { + "id": "enaqx", + "website": "https://enaqx.com", + "contributions": 7 + }, + { + "id": "calvincestari", + "website": "https://github.com/apollographql/apollo-ios-dev/", + "contributions": 7 + }, + { + "id": "n1ru4l", + "website": null, + "contributions": 7 + }, + { + "id": "asprouse", + "website": null, + "contributions": 7 + }, + { + "id": "trevor-scheer", + "website": null, + "contributions": 7 + }, + { + "id": "ErikWittern", + "website": "https://www.wittern.net", + "contributions": 7 + }, + { + "id": "dugenkui03", + "website": "WeChat: dugenkui", + "contributions": 6 + }, + { + "id": "sungam3r", + "website": null, + "contributions": 6 + }, + { + "id": "bbakerman", + "website": null, + "contributions": 6 + }, + { + "id": "enisdenjo", + "website": null, + "contributions": 6 + }, + { + "id": "timsuchanek", + "website": "https://suchanek.co", + "contributions": 6 + }, + { + "id": "alloy", + "website": "https://twitter.com/alloy", + "contributions": 6 + }, + { + "id": "Adron", + "website": "http://compositecode.blog/", + "contributions": 6 + }, + { + "id": "BrunoScheufler", + "website": "https://brunoscheufler.com", + "contributions": 6 + }, + { + "id": "craigsmitham", + "website": "craigsmitham.com", + "contributions": 6 + }, + { + "id": "dblandin", + "website": null, + "contributions": 6 + }, + { + "id": "acao", + "website": "rikki.dev", + "contributions": 5 + }, + { + "id": "joeynenni", + "website": "http://www.paypal.com", + "contributions": 5 + }, + { + "id": "brainkim", + "website": "danger.kim", + "contributions": 5 + }, + { + "id": "tanaypratap", + "website": "tanaypratap.com", + "contributions": 5 + }, + { + "id": "glasser", + "website": "http://flickr.com/photos/glasser/", + "contributions": 4 + }, + { + "id": "jturkel", + "website": "www.linkedin.com/in/joel-turkel", + "contributions": 4 + }, + { + "id": "lilianammmatos", + "contributions": 4 + }, + { + "id": "tristanz", + "website": "https://continual.ai", + "contributions": 4 + }, + { + "id": "LunaticMuch", + "website": "https://stefanocislaghi.com", + "contributions": 4 + }, + { + "id": "doc-jones", + "website": "doc.jones.atwork@gmail.com", + "contributions": 4 + }, + { + "id": "robgrant", + "website": null, + "contributions": 4 + }, + { + "id": "ravangen", + "website": "https://rob.vangennip.ca", + "contributions": 4 + }, + { + "id": "dotansimha", + "website": "http://the-guild.dev/", + "contributions": 4 + }, + { + "id": "wtrocki", + "website": "wtrocki.com", + "contributions": 4 + }, + { + "id": "jhusain", + "website": null, + "contributions": 4 + }, + { + "id": "gkesler", + "website": null, + "contributions": 4 + }, + { + "id": "johnymontana", + "website": "http://lyonwj.com", + "contributions": 4 + }, + { + "id": "southpolesteve", + "website": "www.southpolesteve.com", + "contributions": 4 + }, + { + "id": "thomasheyenbrock", + "website": null, + "contributions": 3 + }, + { + "id": "ccbrown", + "website": null, + "contributions": 3 + }, + { + "id": "matprec", + "website": null, + "contributions": 3 + }, + { + "id": "alexandrebodin", + "website": "https://alexandrebodin.com", + "contributions": 3 + }, + { + "id": "bjornbytes", + "website": "https://lovr.org", + "contributions": 3 + }, + { + "id": "josephsavona", + "contributions": 3 + }, + { + "id": "dylanahsmith", + "website": null, + "contributions": 3 + }, + { + "id": "gabrielf", + "website": "https://www.kinesiskarecept.se", + "contributions": 3 + }, + { + "id": "simenbrekken", + "website": "https://rgba.no", + "contributions": 3 + }, + { + "id": "clentfort", + "website": null, + "contributions": 3 + }, + { + "id": "devknoll", + "website": "http://www.gmonaco.me", + "contributions": 3 + }, + { + "id": "janettec", + "website": null, + "contributions": 3 + }, + { + "id": "phryneas", + "website": "https://phryneas.de", + "contributions": 3 + }, + { + "id": "ernieturner", + "website": "https://twitter.com/erniewturner", + "contributions": 3 + }, + { + "id": "rstaib", + "website": "chillicream.com", + "contributions": 3 + }, + { + "id": "itamark", + "website": null, + "contributions": 3 + }, + { + "id": "aprilrd", + "website": "https://youngk.im", + "contributions": 3 + }, + { + "id": "maryelizbeth", + "website": "https://calendly.com/mary-at-buf/30min", + "contributions": 3 + }, + { + "id": "bobbiejc", + "website": null, + "contributions": 3 + }, + { + "id": "ndejaco2", + "website": null, + "contributions": 3 + }, + { + "id": "cristaloleg", + "website": "https://olegk.dev", + "contributions": 3 + }, + { + "id": "orta", + "website": "https://orta.io", + "contributions": 3 + }, + { + "id": "scooter99boston", + "website": null, + "contributions": 3 + }, + { + "id": "cmonty", + "website": "http://cory.is", + "contributions": 3 + }, + { + "id": "tgriesser", + "website": null, + "contributions": 3 + }, + { + "id": "syrusakbary", + "website": "http://syrusakbary.com", + "contributions": 3 + }, + { + "id": "AGS-", + "website": "https://ags.dev", + "contributions": 3 + }, + { + "id": "benjaminjkraft", + "website": "https://www.benkraft.org", + "contributions": 2 + }, + { + "id": "jbellenger", + "contributions": 2 + }, + { + "id": "ericvergnaud", + "contributions": 2 + }, + { + "id": "tobiasdiez", + "website": "http://tobiasdiez.com/", + "contributions": 2 + }, + { + "id": "danstarns", + "contributions": 2 + }, + { + "id": "kyarik", + "website": "https://yarokuk.com", + "contributions": 2 + }, + { + "id": "dfreeman", + "website": "dfreeman.io", + "contributions": 2 + }, + { + "id": "lorensr", + "website": "http://lorensr.me", + "contributions": 2 + }, + { + "id": "acelot", + "contributions": 2 + }, + { + "id": "micimize", + "website": null, + "contributions": 2 + }, + { + "id": "bgentry", + "website": "https://riverqueue.com", + "contributions": 2 + }, + { + "id": "fluidsonic", + "website": "https://knaup.io", + "contributions": 2 + }, + { + "id": "burner", + "website": null, + "contributions": 2 + }, + { + "id": "iamaldi", + "website": "https://altion.dk", + "contributions": 2 + }, + { + "id": "h3h", + "website": "https://bradfordfults.com/", + "contributions": 2 + }, + { + "id": "sogko", + "website": "https://wehavefaces.net", + "contributions": 2 + }, + { + "id": "frankleonrose", + "website": null, + "contributions": 2 + }, + { + "id": "jjergus", + "website": null, + "contributions": 2 + }, + { + "id": "joliss", + "website": null, + "contributions": 2 + }, + { + "id": "pushrax", + "website": "https://j-li.net", + "contributions": 2 + }, + { + "id": "guialbuk", + "website": null, + "contributions": 2 + }, + { + "id": "jensneuse", + "website": "wundergraph.com", + "contributions": 2 + }, + { + "id": "rbalicki2", + "website": null, + "contributions": 2 + }, + { + "id": "adarshdigievo", + "website": "adarshd.dev", + "contributions": 2 + }, + { + "id": "phillip-kruger", + "website": "http://www.phillip-kruger.com", + "contributions": 2 + }, + { + "id": "JohnStarich", + "website": "https://blog.johnstarich.com", + "contributions": 2 + }, + { + "id": "lizjakubowski", + "website": null, + "contributions": 2 + }, + { + "id": "aleksandarsusnjar", + "website": null, + "contributions": 2 + }, + { + "id": "yogesh-desai", + "website": null, + "contributions": 2 + }, + { + "id": "praveenweb", + "website": "https://twitter.com/praveenweb", + "contributions": 2 + }, + { + "id": "mikeparisstuff", + "website": null, + "contributions": 2 + }, + { + "id": "m14t", + "website": "https://hachyderm.io/@m14t", + "contributions": 2 + }, + { + "id": "sjparsons", + "website": "http://sjparsons.com", + "contributions": 2 + }, + { + "id": "hegdeashwin", + "website": null, + "contributions": 2 + }, + { + "id": "undefobj", + "website": "https://twitter.com/undef_obj", + "contributions": 2 + }, + { + "id": "nodkz", + "website": "https://twitter.com/nodkz", + "contributions": 2 + }, + { + "id": "sethnewberry", + "website": null, + "contributions": 2 + }, + { + "id": "smitt04", + "website": null, + "contributions": 2 + }, + { + "id": "taion", + "website": "http://fashionablenonsense.com/", + "contributions": 2 + }, + { + "id": "tonyghita", + "website": null, + "contributions": 2 + }, + { + "id": "coleturner", + "website": null, + "contributions": 2 + }, + { + "id": "sid88in", + "website": null, + "contributions": 2 + }, + { + "id": "kbrandwijk", + "website": null, + "contributions": 2 + }, + { + "id": "msolomon", + "website": "msol.io", + "contributions": 1 + }, + { + "id": "Jason3S", + "contributions": 1 + }, + { + "id": "Yogu", + "website": "https://jan-melcher.de", + "contributions": 1 + }, + { + "id": "goto-bus-stop", + "website": "https://renee.kooi.me/", + "contributions": 1 + }, + { + "id": "RanabirChakraborty", + "contributions": 1 + }, + { + "id": "Code-Hex", + "website": "https://codehex.dev", + "contributions": 1 + }, + { + "id": "maraisr", + "website": "https://marais.io", + "contributions": 1 + }, + { + "id": "JoeUX", + "website": "https://twitter.com/ValidScience", + "contributions": 1 + }, + { + "id": "raihan71", + "website": "raihan.my.id", + "contributions": 1 + }, + { + "id": "francisu", + "contributions": 1 + }, + { + "id": "ab-pm", + "contributions": 1 + }, + { + "id": "grantwwu", + "contributions": 1 + }, + { + "id": "zgorcsos", + "contributions": 1 + }, + { + "id": "ezioda004", + "website": "https://ezioda004.github.io/", + "contributions": 1 + }, + { + "id": "eddies", + "contributions": 1 + }, + { + "id": "CornedBee", + "contributions": 1 + }, + { + "id": "foo0x29a", + "contributions": 1 + }, + { + "id": "scottydocs", + "contributions": 1 + }, + { + "id": "saponniah", + "contributions": 1 + }, + { + "id": "maantje", + "contributions": 1 + }, + { + "id": "anmonteiro", + "website": "https://anmonteiro.substack.com", + "contributions": 1 + }, + { + "id": "msakrejda", + "website": "http://bitrotincarnate.com", + "contributions": 1 + }, + { + "id": "mattkrick", + "website": "https://www.mattkrick.dev/", + "contributions": 1 + }, + { + "id": "klzns", + "website": "https://twitter.com/klzns", + "contributions": 1 + }, + { + "id": "flarnie", + "website": "http://www.flarnie.com", + "contributions": 1 + }, + { + "id": "iamclaytonray", + "website": "https://invoices.dev", + "contributions": 1 + }, + { + "id": "RichardLitt", + "website": "https://burntfen.com", + "contributions": 1 + }, + { + "id": "kevinSuttle", + "website": "https://kevinsuttle.com", + "contributions": 1 + }, + { + "id": "TOTBWF", + "website": "reedmullanix.com", + "contributions": 1 + }, + { + "id": "gtod", + "contributions": 1 + }, + { + "id": "josh", + "contributions": 1 + }, + { + "id": "xpepermint", + "website": "https://www.linkedin.com/in/ksedlak/", + "contributions": 1 + }, + { + "id": "Battenfield", + "website": "chrisbattenfield.com", + "contributions": 1 + }, + { + "id": "RomanHotsiy", + "website": "https://redocly.com", + "contributions": 1 + }, + { + "id": "firede", + "contributions": 1 + }, + { + "id": "helfer", + "contributions": 1 + }, + { + "id": "astorije", + "website": "https://jeremie.astori.fr", + "contributions": 1 + }, + { + "id": "chris-morgan", + "website": "https://chrismorgan.info/", + "contributions": 1 + }, + { + "id": "danielkwinsor", + "contributions": 1 + }, + { + "id": "theorygeek", + "contributions": 1 + }, + { + "id": "jasonrudolph", + "website": "jasonrudolph.com", + "contributions": 1 + }, + { + "id": "calcsam", + "contributions": 1 + }, + { + "id": "cyjia", + "contributions": 1 + }, + { + "id": "benbjohnson", + "website": "https://litestream.io", + "contributions": 1 + }, + { + "id": "alexisvincent", + "website": "https://kepler16.com", + "contributions": 1 + }, + { + "id": "fson", + "contributions": 1 + }, + { + "id": "lyip1992", + "website": "https://lyip1992.github.io", + "contributions": 1 + }, + { + "id": "ning-github", + "contributions": 1 + }, + { + "id": "midinastasurazz", + "contributions": 1 + }, + { + "id": "martinandert", + "contributions": 1 + }, + { + "id": "albertstill", + "website": "https://splitcommit.com", + "contributions": 1 + }, + { + "id": "prakal", + "website": "prakal.github.io", + "contributions": 1 + }, + { + "id": "crpdm", + "contributions": 1 + }, + { + "id": "chentsulin", + "contributions": 1 + }, + { + "id": "adamgross42", + "contributions": 1 + }, + { + "id": "jeyraof", + "contributions": 1 + }, + { + "id": "disjukr", + "website": "https://0xabcdef.com/", + "contributions": 1 + }, + { + "id": "dittos", + "website": "sapzil.org", + "contributions": 1 + }, + { + "id": "dburdick", + "contributions": 1 + }, + { + "id": "matthewmueller", + "website": "https://mat.tm", + "contributions": 1 + }, + { + "id": "Ben-G", + "website": "https://twitter.com/benjaminencz", + "contributions": 1 + }, + { + "id": "callahanchris", + "website": "callahan.io", + "contributions": 1 + }, + { + "id": "jorydotcom", + "website": "http://www.joryburson.com/", + "contributions": 1 + }, + { + "id": "alex-reilly-dd", + "contributions": 1 + }, + { + "id": "BobaFetters", + "contributions": 1 + }, + { + "id": "gwardwell", + "website": "https://www.linkedin.com/in/gwardwell/", + "contributions": 1 + }, + { + "id": "dventimihasura", + "contributions": 1 + }, + { + "id": "cuhtis", + "website": "http://www.curtis-li.com", + "contributions": 1 + }, + { + "id": "prasek", + "contributions": 1 + }, + { + "id": "Shane32", + "contributions": 1 + }, + { + "id": "saerdnaer", + "website": "https://andreas-hubel.de", + "contributions": 1 + }, + { + "id": "tusharmath", + "website": "https://tailcall.run", + "contributions": 1 + }, + { + "id": "abhinand-c", + "contributions": 1 + }, + { + "id": "korinne", + "contributions": 1 + }, + { + "id": "jonathanawesome", + "website": "isitraininginaustintexas.com", + "contributions": 1 + }, + { + "id": "russellyou", + "contributions": 1 + }, + { + "id": "jerelmiller", + "contributions": 1 + }, + { + "id": "Kingdutch", + "website": "https://www.alexandervarwijk.com", + "contributions": 1 + }, + { + "id": "alessbell", + "website": "aless.co", + "contributions": 1 + }, + { + "id": "d-winter", + "website": "https://hygraph.com", + "contributions": 1 + }, + { + "id": "flexzuu", + "contributions": 1 + }, + { + "id": "jonnydgreen", + "website": "https://jonnydgreen.com/", + "contributions": 1 + }, + { + "id": "StarpTech", + "website": "https://starptech.com", + "contributions": 1 + }, + { + "id": "varachit", + "contributions": 1 + }, + { + "id": "jwebb49", + "contributions": 1 + }, + { + "id": "solomon-b", + "website": "blog.cofree.coffee", + "contributions": 1 + }, + { + "id": "linux-jedi", + "website": "calebtho.dev", + "contributions": 1 + }, + { + "id": "obi1kenobi", + "website": "https://predr.ag/", + "contributions": 1 + }, + { + "id": "agata-wit", + "contributions": 1 + }, + { + "id": "chikit", + "contributions": 1 + }, + { + "id": "nathanchapman", + "website": "https://nathanchapman.dev", + "contributions": 1 + }, + { + "id": "grillorafael", + "contributions": 1 + }, + { + "id": "okjulian", + "website": "https://okjulian.com", + "contributions": 1 + }, + { + "id": "ardatan", + "website": "http://the-guild.dev/", + "contributions": 1 + }, + { + "id": "Aubron", + "website": "aubron.io", + "contributions": 1 + }, + { + "id": "nalchevanidze", + "website": "http://nalchevanidze.com", + "contributions": 1 + }, + { + "id": "ilslv", + "contributions": 1 + }, + { + "id": "nojvek", + "website": "https://nojvek.com", + "contributions": 1 + }, + { + "id": "kamilkisiela", + "website": "https://github.com/kamilkisiela", + "contributions": 1 + }, + { + "id": "jpignata", + "contributions": 1 + }, + { + "id": "jbaxleyiii", + "contributions": 1 + }, + { + "id": "schrockn", + "website": "dagster.io", + "contributions": 1 + }, + { + "id": "abhimanyusinghgaur", + "website": "http://home.iitj.ac.in/~gaur.1", + "contributions": 1 + }, + { + "id": "hemanth", + "website": "http://h3manth.com", + "contributions": 1 + }, + { + "id": "gja", + "website": "http://gja.in/blog", + "contributions": 1 + }, + { + "id": "zcourts", + "website": "https://hypi.ai", + "contributions": 1 + }, + { + "id": "chemisus", + "contributions": 1 + }, + { + "id": "caniszczyk", + "website": "https://aniszczyk.org", + "contributions": 1 + }, + { + "id": "krithikapwork", + "contributions": 1 + }, + { + "id": "Usamaliaquat123", + "contributions": 1 + }, + { + "id": "henryqdineen", + "contributions": 1 + }, + { + "id": "appwiz", + "website": "https://rohand.com", + "contributions": 1 + }, + { + "id": "kneekey23", + "website": "twitch.tv/kneekey23", + "contributions": 1 + }, + { + "id": "hlship", + "website": "http://lewisship.net/", + "contributions": 1 + }, + { + "id": "krithikaprakash", + "contributions": 1 + }, + { + "id": "osukaa", + "website": "https://oscarfunes.com/links", + "contributions": 1 + }, + { + "id": "Yash-Handa", + "website": "https://yashhanda.netlify.app", + "contributions": 1 + }, + { + "id": "AlecAivazis", + "website": "alec.aivazis.com", + "contributions": 1 + }, + { + "id": "lkorth", + "website": "http://lukekorth.com", + "contributions": 1 + }, + { + "id": "Zaba505", + "website": "https://zaba505.dev", + "contributions": 1 + }, + { + "id": "ruiaraujo", + "contributions": 1 + }, + { + "id": "kyledetella", + "website": "https://gitlab.com/kyledetella", + "contributions": 1 + }, + { + "id": "vektah", + "contributions": 1 + }, + { + "id": "akollegger", + "website": "https://neo4j.com", + "contributions": 1 + }, + { + "id": "kaqqao", + "website": "http://thatjavathing.blogspot.com", + "contributions": 1 + }, + { + "id": "siddharth90", + "contributions": 1 + }, + { + "id": "jnwng", + "website": "jnwng.com", + "contributions": 1 + }, + { + "id": "jexp", + "website": "https://www.jexp.de", + "contributions": 1 + }, + { + "id": "dwwoelfel", + "website": "https://twitter.com/danielwoelfel", + "contributions": 1 + }, + { + "id": "samerbuna", + "contributions": 1 + }, + { + "id": "theodorDiaconu", + "website": "https://www.cultofcoders.com", + "contributions": 1 + }, + { + "id": "evans", + "contributions": 1 + }, + { + "id": "sorenbs", + "website": "https://www.prisma.io/", + "contributions": 1 + }, + { + "id": "acjay", + "website": "https://acjay.com", + "contributions": 1 + }, + { + "id": "asiandrummer", + "contributions": 1 + }, + { + "id": "theadactyl", + "contributions": 1 + }, + { + "id": "nevir", + "contributions": 1 + } + ], + "graphql-js": [ + { + "id": "IvanGoncharov", + "website": "https://APIs.guru", + "contributions": 1372 + }, + { + "id": "leebyron", + "website": "leebyron.com", + "contributions": 856 + }, + { + "id": "wincent", + "website": "https://wincent.dev/", + "contributions": 196 + }, + { + "id": "greenkeeper[bot]", + "website": null, + "contributions": 114 + }, + { + "id": "Cito", + "website": "https://cito.github.io/", + "contributions": 51 + }, + { + "id": "mjmahone", + "website": null, + "contributions": 35 + }, + { + "id": "dschafer", + "website": "https://www.facebook.com/dschafer", + "contributions": 34 + }, + { + "id": "JoviDeCroock", + "website": "https://www.jovidecroock.com/", + "contributions": 33 + }, + { + "id": "robzhu", + "website": "https://updateloop.dev", + "contributions": 31 + }, + { + "id": "schrockn-zz", + "website": null, + "contributions": 28 + }, + { + "id": "saihaj", + "website": "saihaj.dev", + "contributions": 25 + }, + { + "id": "benjie", + "website": "https://benjie.dev", + "contributions": 24 + }, + { + "id": "sarahxsanders", + "website": null, + "contributions": 17 + }, + { + "id": "kassens", + "website": "http://kassens.net", + "contributions": 15 + }, + { + "id": "enaqx", + "website": "https://enaqx.com", + "contributions": 15 + }, + { + "id": "Urigo", + "website": "https://the-guild.dev/", + "contributions": 13 + }, + { + "id": "yaacovCR", + "website": null, + "contributions": 12 + }, + { + "id": "greenkeeperio-bot", + "website": "https://greenkeeper.io/", + "contributions": 12 + }, + { + "id": "JeffRMoore", + "website": null, + "contributions": 10 + }, + { + "id": "mohawk2", + "website": null, + "contributions": 7 + }, + { + "id": "freiksenet", + "website": "http://www.freiksenet.com", + "contributions": 7 + }, + { + "id": "josephsavona", + "website": null, + "contributions": 7 + }, + { + "id": "andimarek", + "website": "https://www.graphql-java.com", + "contributions": 7 + }, + { + "id": "asiandrummer", + "website": null, + "contributions": 6 + }, + { + "id": "dherault", + "website": "https://dherault.com", + "contributions": 6 + }, + { + "id": "skevy", + "website": "http://www.adammiskiewicz.com/", + "contributions": 5 + }, + { + "id": "PatrickJS", + "website": "patrickjs.com", + "contributions": 5 + }, + { + "id": "baer", + "website": "https://www.ericbaer.com/", + "contributions": 5 + }, + { + "id": "nodkz", + "website": "https://twitter.com/nodkz", + "contributions": 5 + }, + { + "id": "swolchok", + "website": "https://wolchok.org/", + "contributions": 5 + }, + { + "id": "n1ru4l", + "website": null, + "contributions": 4 + }, + { + "id": "spawnia", + "website": "https://franke.tech", + "contributions": 4 + }, + { + "id": "tgriesser", + "website": null, + "contributions": 4 + }, + { + "id": "danielrearden", + "website": null, + "contributions": 4 + }, + { + "id": "excitement-engineer", + "website": "https://nl.linkedin.com/in/dirk-jan-rutten-4bb32b92", + "contributions": 4 + }, + { + "id": "nemanja-stanarevic", + "website": null, + "contributions": 4 + }, + { + "id": "brianwarner", + "website": "https://bdwarner.com", + "contributions": 3 + }, + { + "id": "thenamankumar", + "website": "https://localminima.io", + "contributions": 3 + }, + { + "id": "m14t", + "website": "https://hachyderm.io/@m14t", + "contributions": 3 + }, + { + "id": "alloy", + "website": "https://twitter.com/alloy", + "contributions": 3 + }, + { + "id": "OneCyrus", + "website": null, + "contributions": 3 + }, + { + "id": "jjergus", + "website": null, + "contributions": 3 + }, + { + "id": "sam-swarr", + "website": null, + "contributions": 3 + }, + { + "id": "alexandrebodin", + "website": "https://alexandrebodin.com", + "contributions": 3 + }, + { + "id": "tberman", + "website": null, + "contributions": 3 + }, + { + "id": "AGS-", + "website": "https://ags.dev", + "contributions": 3 + }, + { + "id": "helfer", + "website": null, + "contributions": 3 + }, + { + "id": "iamchenxin", + "website": null, + "contributions": 3 + }, + { + "id": "dminkovsky", + "website": "dmitry.minkovsky.online", + "contributions": 3 + }, + { + "id": "cristunaranjo", + "website": "naranjo.cloud", + "contributions": 2 + }, + { + "id": "twof", + "website": "alex.dev", + "contributions": 2 + }, + { + "id": "Yogu", + "website": "https://jan-melcher.de", + "contributions": 2 + }, + { + "id": "MichaelDeBoey", + "website": "https://michaeldeboey.be", + "contributions": 2 + }, + { + "id": "taion", + "website": "http://fashionablenonsense.com/", + "contributions": 2 + }, + { + "id": "kommander", + "website": null, + "contributions": 2 + }, + { + "id": "langpavel", + "website": "https://twitter.com/langpavel", + "contributions": 2 + }, + { + "id": "RomanHotsiy", + "website": "https://redocly.com", + "contributions": 2 + }, + { + "id": "gabelevi", + "website": null, + "contributions": 2 + }, + { + "id": "calebmer", + "website": "http://calebmer.com", + "contributions": 2 + }, + { + "id": "chapel", + "website": "http://lepahc.com", + "contributions": 2 + }, + { + "id": "fson", + "website": null, + "contributions": 2 + }, + { + "id": "felipecrv", + "website": "https://felipe.rs", + "contributions": 2 + }, + { + "id": "jhgg", + "website": "http://jh.gg", + "contributions": 2 + }, + { + "id": "chentsulin", + "website": null, + "contributions": 2 + }, + { + "id": "jmandel", + "website": "https://joshuamandel.com", + "contributions": 2 + }, + { + "id": "hzoo", + "website": "https://henryzoo.com", + "contributions": 2 + }, + { + "id": "gabrielf", + "website": "https://www.kinesiskarecept.se", + "contributions": 2 + }, + { + "id": "OlegIlyenko", + "website": "https://medium.com/@oleg.ilyenko", + "contributions": 2 + }, + { + "id": "magicmark", + "website": "mark.larah.me", + "contributions": 1 + }, + { + "id": "janmeier", + "website": "https://www.linkedin.com/in/janaagaardmeier/", + "contributions": 1 + }, + { + "id": "alesculek", + "contributions": 1 + }, + { + "id": "roman-lakhnov", + "contributions": 1 + }, + { + "id": "Shubhdeep12", + "website": "shubhdeepchhabra.in", + "contributions": 1 + }, + { + "id": "fto-dev", + "contributions": 1 + }, + { + "id": "guspan-tanadi", + "contributions": 1 + }, + { + "id": "rabahalishah", + "website": "https://rabah-dev.vercel.app", + "contributions": 1 + }, + { + "id": "dimaMachina", + "website": "dimaMachina.com", + "contributions": 1 + }, + { + "id": "tpoisseau", + "contributions": 1 + }, + { + "id": "sachindshinde", + "contributions": 1 + }, + { + "id": "bignimbus", + "contributions": 1 + }, + { + "id": "AaronMoat", + "contributions": 1 + }, + { + "id": "gschulze", + "contributions": 1 + }, + { + "id": "kettanaito", + "website": "https://kettanaito.com", + "contributions": 1 + }, + { + "id": "stenreijers", + "contributions": 1 + }, + { + "id": "chrskrchr", + "contributions": 1 + }, + { + "id": "is2ei", + "website": "https://github.com/is2ei", + "contributions": 1 + }, + { + "id": "dwelch2344", + "website": "http://davidwelch.co", + "contributions": 1 + }, + { + "id": "glasser", + "website": "http://flickr.com/photos/glasser/", + "contributions": 1 + }, + { + "id": "Ginhing", + "contributions": 1 + }, + { + "id": "nicolaslt", + "contributions": 1 + }, + { + "id": "paulserraino", + "contributions": 1 + }, + { + "id": "tofran", + "website": "https://tofran.com", + "contributions": 1 + }, + { + "id": "lekoaf", + "website": "https://www.europacup.se", + "contributions": 1 + }, + { + "id": "jjangga0214", + "contributions": 1 + }, + { + "id": "ardatan", + "website": "http://the-guild.dev/", + "contributions": 1 + }, + { + "id": "trevor-scheer", + "contributions": 1 + }, + { + "id": "janicduplessis", + "website": "https://medium.com/@janicduplessis", + "contributions": 1 + }, + { + "id": "kyarik", + "website": "https://yarokuk.com", + "contributions": 1 + }, + { + "id": "Code-Hex", + "website": "https://codehex.dev", + "contributions": 1 + }, + { + "id": "robrichard", + "website": "http://robrichard.net/", + "contributions": 1 + }, + { + "id": "ForbesLindesay", + "website": "http://www.forbeslindesay.co.uk", + "contributions": 1 + }, + { + "id": "Tapped", + "contributions": 1 + }, + { + "id": "draperunner", + "contributions": 1 + }, + { + "id": "dionisnote", + "contributions": 1 + }, + { + "id": "adithyaakrishna", + "website": "adikris.in", + "contributions": 1 + }, + { + "id": "dobesv", + "website": "http://dobesv.com", + "contributions": 1 + }, + { + "id": "solidw", + "website": "https://solidw.github.io", + "contributions": 1 + }, + { + "id": "mwinstanley", + "contributions": 1 + }, + { + "id": "josephktcheung", + "contributions": 1 + }, + { + "id": "Adn0s", + "contributions": 1 + }, + { + "id": "alex-knyazev", + "contributions": 1 + }, + { + "id": "pcarrier", + "website": "https://pcarrier.com", + "contributions": 1 + }, + { + "id": "icirellik", + "contributions": 1 + }, + { + "id": "ivome", + "contributions": 1 + }, + { + "id": "mike-marcacci", + "website": "https://marcacci-labs.com/", + "contributions": 1 + }, + { + "id": "solon", + "contributions": 1 + }, + { + "id": "wtrocki", + "website": "wtrocki.com", + "contributions": 1 + }, + { + "id": "Michael-M-Judd", + "website": "michaeljudd.ca", + "contributions": 1 + }, + { + "id": "jaynetics", + "website": "janosch.online", + "contributions": 1 + }, + { + "id": "superhawk610", + "contributions": 1 + }, + { + "id": "everdimension", + "contributions": 1 + }, + { + "id": "elevenpassin", + "contributions": 1 + }, + { + "id": "timsuchanek", + "website": "https://suchanek.co", + "contributions": 1 + }, + { + "id": "simcoder", + "website": "https://www.bakerhughes.com", + "contributions": 1 + }, + { + "id": "juliaqiuxy", + "website": "https://julia.dev", + "contributions": 1 + }, + { + "id": "JCMais", + "website": "https://www.linkedin.com/in/jonathancardoso/", + "contributions": 1 + }, + { + "id": "nyteshade", + "contributions": 1 + }, + { + "id": "AaronCCWong", + "website": "https://www.aaronccwong.com", + "contributions": 1 + }, + { + "id": "motiz88", + "contributions": 1 + }, + { + "id": "mattkrick", + "website": "https://www.mattkrick.dev/", + "contributions": 1 + }, + { + "id": "samwgoldman", + "contributions": 1 + }, + { + "id": "bgw", + "website": "https://benjam.info/", + "contributions": 1 + }, + { + "id": "lillyfwang", + "contributions": 1 + }, + { + "id": "kenleezle", + "contributions": 1 + }, + { + "id": "nakano348", + "contributions": 1 + }, + { + "id": "ty2", + "contributions": 1 + }, + { + "id": "lebedev", + "contributions": 1 + }, + { + "id": "trevorah", + "contributions": 1 + }, + { + "id": "gj", + "contributions": 1 + }, + { + "id": "puradox", + "website": "sambalana.com", + "contributions": 1 + }, + { + "id": "aortbals", + "website": "https://aaronortbals.com", + "contributions": 1 + }, + { + "id": "mroch", + "contributions": 1 + }, + { + "id": "dwwoelfel", + "website": "https://twitter.com/danielwoelfel", + "contributions": 1 + }, + { + "id": "gjtorikian", + "website": "https://www.gjtorikian.com/", + "contributions": 1 + }, + { + "id": "aeiz", + "website": "http://michaelgillen.com", + "contributions": 1 + }, + { + "id": "shnellpavel", + "contributions": 1 + }, + { + "id": "tcr", + "website": "http://timryan.org/", + "contributions": 1 + }, + { + "id": "exogen", + "website": "https://brianbeck.com", + "contributions": 1 + }, + { + "id": "jwulf", + "contributions": 1 + }, + { + "id": "neelance", + "website": "https://www.linkedin.com/in/richardmusiol/", + "contributions": 1 + }, + { + "id": "turadg", + "website": "http://turadg.aleahmad.net/", + "contributions": 1 + }, + { + "id": "cesarandreu", + "website": "cesarandreu.com", + "contributions": 1 + }, + { + "id": "jonbretman", + "website": "https://www.jonbretman.co.uk", + "contributions": 1 + }, + { + "id": "jmurzy", + "website": "https://jakemurzy.com", + "contributions": 1 + }, + { + "id": "jamesgorman2", + "contributions": 1 + }, + { + "id": "olivierlesnicki", + "contributions": 1 + }, + { + "id": "astorije", + "website": "https://jeremie.astori.fr", + "contributions": 1 + }, + { + "id": "darthtrevino", + "contributions": 1 + }, + { + "id": "martijnwalraven", + "contributions": 1 + }, + { + "id": "joemcbride", + "website": "https://uicraftsman.com", + "contributions": 1 + }, + { + "id": "jaymitchell", + "contributions": 1 + }, + { + "id": "RylanH", + "contributions": 1 + }, + { + "id": "ekosz", + "contributions": 1 + }, + { + "id": "sogko", + "website": "https://wehavefaces.net", + "contributions": 1 + }, + { + "id": "Slava", + "website": "https://slv.io", + "contributions": 1 + }, + { + "id": "dizlexik", + "contributions": 1 + }, + { + "id": "clayallsopp", + "website": "http://twitter.com/clayallsopp", + "contributions": 1 + }, + { + "id": "yuzhi", + "contributions": 1 + }, + { + "id": "zhaojunz", + "contributions": 1 + }, + { + "id": "dylanahsmith", + "contributions": 1 + }, + { + "id": "wenzowski", + "contributions": 1 + }, + { + "id": "chrisbolin", + "website": "chrisbolin.co", + "contributions": 1 + }, + { + "id": "denvned", + "contributions": 1 + }, + { + "id": "igorcanadi", + "contributions": 1 + }, + { + "id": "benbjohnson", + "website": "https://litestream.io", + "contributions": 1 + }, + { + "id": "rtorr", + "contributions": 1 + }, + { + "id": "woodb", + "contributions": 1 + }, + { + "id": "ning-github", + "contributions": 1 + }, + { + "id": "johanatan", + "website": "https://careers.stackoverflow.com/johanatan", + "contributions": 1 + }, + { + "id": "chris-ramon", + "website": "https://chris-ramon.github.io", + "contributions": 1 + }, + { + "id": "rexxars", + "website": "https://espen.codes/", + "contributions": 1 + }, + { + "id": "cletusw", + "website": "http://stackoverflow.com/users/1431146/cletusw", + "contributions": 1 + }, + { + "id": "martinandert", + "contributions": 1 + }, + { + "id": "aackerman", + "contributions": 1 + }, + { + "id": "albertstill", + "website": "https://splitcommit.com", + "contributions": 1 + }, + { + "id": "amarant", + "contributions": 1 + }, + { + "id": "dittos", + "website": "sapzil.org", + "contributions": 1 + }, + { + "id": "vkurchatkin", + "contributions": 1 + }, + { + "id": "sevki", + "website": "https://sevki.io", + "contributions": 1 + }, + { + "id": "RStankov", + "website": "http://rstankov.com", + "contributions": 1 + }, + { + "id": "coryhouse", + "website": "http://www.bitnative.com", + "contributions": 1 + }, + { + "id": "mgechev", + "website": "https://blog.mgechev.com/", + "contributions": 1 + } + ], + "GraphiQL": [ + { + "id": "acao", + "website": "rikki.dev", + "contributions": 758 + }, + { + "id": "wincent", + "website": "https://wincent.dev/", + "contributions": 725 + }, + { + "id": "asiandrummer", + "website": null, + "contributions": 346 + }, + { + "id": "leebyron", + "website": "leebyron.com", + "contributions": 322 + }, + { + "id": "greenkeeper[bot]", + "website": null, + "contributions": 303 + }, + { + "id": "dependabot-preview[bot]", + "website": null, + "contributions": 283 + }, + { + "id": "dimaMachina", + "website": "dimaMachina.com", + "contributions": 241 + }, + { + "id": "AGS-", + "website": "https://ags.dev", + "contributions": 167 + }, + { + "id": "thomasheyenbrock", + "website": null, + "contributions": 134 + }, + { + "id": "github-actions[bot]", + "website": null, + "contributions": 86 + }, + { + "id": "benjie", + "website": "https://benjie.dev", + "contributions": 56 + }, + { + "id": "dependabot[bot]", + "website": null, + "contributions": 50 + }, + { + "id": "greenkeeperio-bot", + "website": "https://greenkeeper.io/", + "contributions": 31 + }, + { + "id": "imolorhe", + "website": "xkoji.dev", + "contributions": 20 + }, + { + "id": "orta", + "website": "https://orta.io", + "contributions": 16 + }, + { + "id": "jonathanawesome", + "website": "isitraininginaustintexas.com", + "contributions": 15 + }, + { + "id": "n1ru4l", + "website": null, + "contributions": 13 + }, + { + "id": "harshithpabbati", + "website": "https://harshithpabbati.com", + "contributions": 12 + }, + { + "id": "timsuchanek", + "website": "https://suchanek.co", + "contributions": 10 + }, + { + "id": "lostplan", + "website": null, + "contributions": 10 + }, + { + "id": "AaronMoat", + "website": null, + "contributions": 9 + }, + { + "id": "tessalt", + "website": "https://tessathornton.com", + "contributions": 9 + }, + { + "id": "yoshiakis", + "website": null, + "contributions": 8 + }, + { + "id": "AumyF", + "website": "https://fuku.day", + "contributions": 7 + }, + { + "id": "PeteDuncanson", + "website": "offroadcode.com", + "contributions": 7 + }, + { + "id": "dotansimha", + "website": "http://the-guild.dev/", + "contributions": 6 + }, + { + "id": "patrick91", + "website": "https://patrick.wtf", + "contributions": 6 + }, + { + "id": "maraisr", + "website": "https://marais.io", + "contributions": 6 + }, + { + "id": "skevy", + "website": "http://www.adammiskiewicz.com/", + "contributions": 6 + }, + { + "id": "cshaver", + "website": "http://www.cristinashaver.com/", + "contributions": 5 + }, + { + "id": "Gumichocopengin8", + "website": null, + "contributions": 5 + }, + { + "id": "mgadda", + "website": null, + "contributions": 5 + }, + { + "id": "murielsilveira", + "website": null, + "contributions": 5 + }, + { + "id": "OlegIlyenko", + "website": "https://medium.com/@oleg.ilyenko", + "contributions": 5 + }, + { + "id": "yaacovCR", + "website": null, + "contributions": 4 + }, + { + "id": "bboure", + "website": "https://benoitboure.com/", + "contributions": 4 + }, + { + "id": "dwwoelfel", + "website": "https://twitter.com/danielwoelfel", + "contributions": 4 + }, + { + "id": "sergeichestakov", + "website": "https://sergei.com", + "contributions": 4 + }, + { + "id": "eltociear", + "website": null, + "contributions": 4 + }, + { + "id": "brianwarner", + "website": "https://bdwarner.com", + "contributions": 4 + }, + { + "id": "mattkrick", + "website": "https://www.mattkrick.dev/", + "contributions": 4 + }, + { + "id": "thenamankumar", + "website": "https://localminima.io", + "contributions": 4 + }, + { + "id": "zth", + "website": "https://twitter.com/___zth___", + "contributions": 4 + }, + { + "id": "zouxuoz", + "website": null, + "contributions": 4 + }, + { + "id": "danez", + "website": "https://danieltschinder.com", + "contributions": 4 + }, + { + "id": "RomanHotsiy", + "website": "https://redocly.com", + "contributions": 4 + }, + { + "id": "pasviegas", + "website": null, + "contributions": 4 + }, + { + "id": "Yahkob", + "website": null, + "contributions": 3 + }, + { + "id": "LekoArts", + "website": "https://www.lekoarts.de/", + "contributions": 3 + }, + { + "id": "TheMightyPenguin", + "website": "mightypenguin.dev", + "contributions": 3 + }, + { + "id": "stonexer", + "website": "https://www.sitixi.com", + "contributions": 3 + }, + { + "id": "willstott101", + "website": null, + "contributions": 3 + }, + { + "id": "glasser", + "website": "http://flickr.com/photos/glasser/", + "contributions": 3 + }, + { + "id": "Nishchit14", + "website": "https://aicamp.so", + "contributions": 3 + }, + { + "id": "ryan-m-walker", + "website": null, + "contributions": 3 + }, + { + "id": "ncthbrt", + "website": null, + "contributions": 3 + }, + { + "id": "walaura", + "website": "laura.monster", + "contributions": 3 + }, + { + "id": "jbblanchet", + "website": null, + "contributions": 3 + }, + { + "id": "ramonsaboya", + "website": null, + "contributions": 3 + }, + { + "id": "ajhyndman", + "website": null, + "contributions": 3 + }, + { + "id": "schickling", + "website": "schickling.dev", + "contributions": 3 + }, + { + "id": "joprice", + "website": null, + "contributions": 3 + }, + { + "id": "klippx", + "website": null, + "contributions": 2 + }, + { + "id": "kiendang", + "website": null, + "contributions": 2 + }, + { + "id": "TuvalSimha", + "website": "https://the-guild.dev/", + "contributions": 2 + }, + { + "id": "retrodaredevil", + "website": null, + "contributions": 2 + }, + { + "id": "kitten", + "website": "https://kitten.sh", + "contributions": 2 + }, + { + "id": "A-N-uraag", + "website": null, + "contributions": 2 + }, + { + "id": "lesleydreyer", + "website": null, + "contributions": 2 + }, + { + "id": "SimenB", + "website": null, + "contributions": 2 + }, + { + "id": "mskelton", + "website": "mskelton.dev", + "contributions": 2 + }, + { + "id": "TallTed", + "website": "http://id.myopenlink.net/dataspace/person/tthibodeau", + "contributions": 2 + }, + { + "id": "sashashura", + "website": null, + "contributions": 2 + }, + { + "id": "Foo-x", + "website": "https://foo-x.com/", + "contributions": 2 + }, + { + "id": "ac10n", + "website": null, + "contributions": 2 + }, + { + "id": "francisu", + "website": null, + "contributions": 2 + }, + { + "id": "enisdenjo", + "website": null, + "contributions": 2 + }, + { + "id": "mangano-ito", + "website": "https://mangano-ito.github.io/", + "contributions": 2 + }, + { + "id": "jamesgeorge007", + "website": null, + "contributions": 2 + }, + { + "id": "wuweiweiwu", + "website": "weiweiwu.me", + "contributions": 2 + }, + { + "id": "pranshuchittora", + "website": "https://pranshuchittora.js.org/", + "contributions": 2 + }, + { + "id": "IvanGoncharov", + "website": "https://APIs.guru", + "contributions": 2 + }, + { + "id": "pd4d10", + "website": null, + "contributions": 2 + }, + { + "id": "langpavel", + "website": "https://twitter.com/langpavel", + "contributions": 2 + }, + { + "id": "codeStryke", + "website": "https://anandraman.dev/", + "contributions": 2 + }, + { + "id": "cvqprs", + "website": null, + "contributions": 2 + }, + { + "id": "jaebradley", + "website": null, + "contributions": 2 + }, + { + "id": "kayhadrin", + "website": null, + "contributions": 2 + }, + { + "id": "claudiopro", + "website": "https://example.com", + "contributions": 2 + }, + { + "id": "pleunv", + "website": null, + "contributions": 2 + }, + { + "id": "kevinsimper", + "website": "https://www.kevinsimper.dk", + "contributions": 2 + }, + { + "id": "swyxio", + "website": "https://learninpublic.org", + "contributions": 2 + }, + { + "id": "excitement-engineer", + "website": "https://nl.linkedin.com/in/dirk-jan-rutten-4bb32b92", + "contributions": 2 + }, + { + "id": "gpoitch", + "website": "https://neat.software/apps", + "contributions": 2 + }, + { + "id": "astorije", + "website": "https://jeremie.astori.fr", + "contributions": 2 + }, + { + "id": "jskorepa", + "website": null, + "contributions": 2 + }, + { + "id": "dahjelle", + "website": "https://thehjellejar.com", + "contributions": 2 + }, + { + "id": "clayallsopp", + "website": "http://twitter.com/clayallsopp", + "contributions": 2 + }, + { + "id": "steveluscher", + "website": null, + "contributions": 2 + }, + { + "id": "gre", + "website": "greweb.me", + "contributions": 2 + }, + { + "id": "fson", + "website": null, + "contributions": 2 + }, + { + "id": "knowbody", + "website": null, + "contributions": 2 + }, + { + "id": "dschafer", + "website": "https://www.facebook.com/dschafer", + "contributions": 2 + }, + { + "id": "devknoll", + "website": "http://www.gmonaco.me", + "contributions": 2 + }, + { + "id": "pleb", + "contributions": 1 + }, + { + "id": "hayes", + "contributions": 1 + }, + { + "id": "joshbode", + "contributions": 1 + }, + { + "id": "motemen", + "website": "https://motemen.works/", + "contributions": 1 + }, + { + "id": "robertoaloi", + "website": "robertoaloi.github.io", + "contributions": 1 + }, + { + "id": "simmerer", + "website": "https://simmer.ooo", + "contributions": 1 + }, + { + "id": "idosela", + "contributions": 1 + }, + { + "id": "mavenskylab", + "contributions": 1 + }, + { + "id": "cimdalli", + "website": "https://www.linkedin.com/in/okancetin/", + "contributions": 1 + }, + { + "id": "Cr4xy", + "contributions": 1 + }, + { + "id": "bignimbus", + "contributions": 1 + }, + { + "id": "johndcollett", + "contributions": 1 + }, + { + "id": "Gasser-Aly", + "contributions": 1 + }, + { + "id": "XiNiHa", + "website": "xiniha.dev", + "contributions": 1 + }, + { + "id": "harshitkumar31", + "website": "https://harshitkumar.co.in/", + "contributions": 1 + }, + { + "id": "craig-riecke", + "contributions": 1 + }, + { + "id": "yepitschunked", + "contributions": 1 + }, + { + "id": "xonx4l", + "contributions": 1 + }, + { + "id": "BPScott", + "contributions": 1 + }, + { + "id": "esquevin", + "website": "http://www.esquevin.com", + "contributions": 1 + }, + { + "id": "heyacherry", + "contributions": 1 + }, + { + "id": "KammererTob", + "contributions": 1 + }, + { + "id": "Zolwiastyl", + "contributions": 1 + }, + { + "id": "scamden", + "contributions": 1 + }, + { + "id": "jycouet", + "website": "jyc.dev", + "contributions": 1 + }, + { + "id": "hugo-vrijswijk", + "contributions": 1 + }, + { + "id": "mylesmmurphy", + "contributions": 1 + }, + { + "id": "mjmahone", + "contributions": 1 + }, + { + "id": "sh-cho", + "website": "https://blog.joe-brothers.com", + "contributions": 1 + }, + { + "id": "mizdra", + "website": "https://mizdra.net", + "contributions": 1 + }, + { + "id": "11bit", + "contributions": 1 + }, + { + "id": "woodensail", + "contributions": 1 + }, + { + "id": "elijaholmos", + "contributions": 1 + }, + { + "id": "hinogi", + "contributions": 1 + }, + { + "id": "ccbrown", + "contributions": 1 + }, + { + "id": "simhnna", + "contributions": 1 + }, + { + "id": "avaly", + "website": "http://agachi.name/", + "contributions": 1 + }, + { + "id": "aloker", + "contributions": 1 + }, + { + "id": "eMerzh", + "website": "http://bmaron.net", + "contributions": 1 + }, + { + "id": "ClemensSahs", + "contributions": 1 + }, + { + "id": "joyceerhl", + "contributions": 1 + }, + { + "id": "dylanowen", + "website": "http://dylowen.com/", + "contributions": 1 + }, + { + "id": "andreialecu", + "website": "https://lets.poker/", + "contributions": 1 + }, + { + "id": "hasparus", + "website": "https://haspar.us", + "contributions": 1 + }, + { + "id": "akivajgordon", + "contributions": 1 + }, + { + "id": "mxstbr", + "website": "https://mxstbr.com", + "contributions": 1 + }, + { + "id": "ind1go", + "contributions": 1 + }, + { + "id": "notjosh", + "website": "http://notjosh.com/", + "contributions": 1 + }, + { + "id": "cobbles", + "contributions": 1 + }, + { + "id": "qw-in", + "contributions": 1 + }, + { + "id": "Chnapy", + "contributions": 1 + }, + { + "id": "chentsulin", + "contributions": 1 + }, + { + "id": "benjdlambert", + "website": "https://blam.sh", + "contributions": 1 + }, + { + "id": "elken", + "website": "https://elken.dev", + "contributions": 1 + }, + { + "id": "Cellule", + "contributions": 1 + }, + { + "id": "hatappi", + "contributions": 1 + }, + { + "id": "Shayshoon", + "contributions": 1 + }, + { + "id": "dushaniw", + "contributions": 1 + }, + { + "id": "roderik", + "website": "https://settlemint.com", + "contributions": 1 + }, + { + "id": "danielleletarte", + "website": "danielleletarte.com", + "contributions": 1 + }, + { + "id": "simonw", + "website": "https://simonwillison.net/", + "contributions": 1 + }, + { + "id": "kikkupico", + "contributions": 1 + }, + { + "id": "PabloSzx", + "contributions": 1 + }, + { + "id": "ferm10n", + "contributions": 1 + }, + { + "id": "iahu", + "contributions": 1 + }, + { + "id": "Sweetabix1", + "contributions": 1 + }, + { + "id": "patrickszmucer", + "contributions": 1 + }, + { + "id": "tonyfromundefined", + "website": "https://fromundefined.com", + "contributions": 1 + }, + { + "id": "hansallis", + "contributions": 1 + }, + { + "id": "saihaj", + "website": "saihaj.dev", + "contributions": 1 + }, + { + "id": "GoodForOneFare", + "contributions": 1 + }, + { + "id": "benmccallum", + "website": "https://benmccallum.net", + "contributions": 1 + }, + { + "id": "arcanis", + "website": "https://mael.dev", + "contributions": 1 + }, + { + "id": "sgianelli", + "website": "http://www.shanegianelli.com", + "contributions": 1 + }, + { + "id": "lisp719", + "website": "https://mogurastore.com/", + "contributions": 1 + }, + { + "id": "cgarnier", + "website": "https://clement-garnier.com/", + "contributions": 1 + }, + { + "id": "henryqdineen", + "contributions": 1 + }, + { + "id": "byteme980", + "contributions": 1 + }, + { + "id": "elitan", + "website": "https://eliasson.me", + "contributions": 1 + }, + { + "id": "kacy", + "website": "kacy.lol", + "contributions": 1 + }, + { + "id": "iifawzi", + "contributions": 1 + }, + { + "id": "ChiragKasat", + "website": "chiragkasat.com", + "contributions": 1 + }, + { + "id": "JakDar", + "contributions": 1 + }, + { + "id": "Rugvip", + "website": "backstage.io", + "contributions": 1 + }, + { + "id": "themgt", + "website": "http://www.pogodan.com", + "contributions": 1 + }, + { + "id": "lanwin", + "website": "www.lanwin.de", + "contributions": 1 + }, + { + "id": "danielrearden", + "contributions": 1 + }, + { + "id": "rchl", + "contributions": 1 + }, + { + "id": "ardatan", + "website": "http://the-guild.dev/", + "contributions": 1 + }, + { + "id": "cailloumajor", + "contributions": 1 + }, + { + "id": "josefaidt", + "website": "https://josef.dev", + "contributions": 1 + }, + { + "id": "jgillich", + "contributions": 1 + }, + { + "id": "tnrich", + "contributions": 1 + }, + { + "id": "connorshea", + "website": "https://connorshea.gitlab.io/", + "contributions": 1 + }, + { + "id": "Haroenv", + "website": "https://haroen.me", + "contributions": 1 + }, + { + "id": "teo-garcia", + "contributions": 1 + }, + { + "id": "alejandronanez", + "contributions": 1 + }, + { + "id": "daemon1024", + "website": "barun.cc", + "contributions": 1 + }, + { + "id": "alinauroz", + "website": "alinauroze.com", + "contributions": 1 + }, + { + "id": "beeman", + "website": "beeman.dev", + "contributions": 1 + }, + { + "id": "iFlameing", + "website": "https://www.linkedin.com/in/iflameing/", + "contributions": 1 + }, + { + "id": "Akshat-Jain", + "website": "akjn.dev", + "contributions": 1 + }, + { + "id": "amcasey", + "contributions": 1 + }, + { + "id": "I-Valchev", + "website": "www.ivovalchev.com", + "contributions": 1 + }, + { + "id": "Mondal10", + "website": "www.amitmondal.in", + "contributions": 1 + }, + { + "id": "sgrove", + "website": "http://www.riseos.com", + "contributions": 1 + }, + { + "id": "zephraph", + "website": "https://just-be.dev", + "contributions": 1 + }, + { + "id": "muescha", + "contributions": 1 + }, + { + "id": "visortelle", + "contributions": 1 + }, + { + "id": "jpaquim", + "website": "https://pluvial.xyz", + "contributions": 1 + }, + { + "id": "joshmadewell", + "contributions": 1 + }, + { + "id": "chandu0101", + "contributions": 1 + }, + { + "id": "rherrmann", + "website": "https://www.mediform.io", + "contributions": 1 + }, + { + "id": "gjvoosten", + "contributions": 1 + }, + { + "id": "FidelVe", + "website": "sodax.com", + "contributions": 1 + }, + { + "id": "olexandryermilov", + "contributions": 1 + }, + { + "id": "yroseau", + "website": "https://www.linkedin.com/in/yann-roseau/", + "contributions": 1 + }, + { + "id": "kasperisager", + "contributions": 1 + }, + { + "id": "assimelha", + "website": "https://assim.io", + "contributions": 1 + }, + { + "id": "popadi", + "contributions": 1 + }, + { + "id": "nasehim7", + "contributions": 1 + }, + { + "id": "christieb7007", + "contributions": 1 + }, + { + "id": "whtsky", + "website": "https://blog.whtsky.me/", + "contributions": 1 + }, + { + "id": "mjaakko", + "website": "https://malkki.xyz/", + "contributions": 1 + }, + { + "id": "trevor-scheer", + "contributions": 1 + }, + { + "id": "tanaypratap", + "website": "tanaypratap.com", + "contributions": 1 + }, + { + "id": "jek584", + "contributions": 1 + }, + { + "id": "Neitsch", + "website": "https://www.nigel-schuster.de/", + "contributions": 1 + }, + { + "id": "corysimmons", + "website": "https://corysimmons.com", + "contributions": 1 + }, + { + "id": "AlecAivazis", + "website": "alec.aivazis.com", + "contributions": 1 + }, + { + "id": "TheSharpieOne", + "contributions": 1 + }, + { + "id": "tsauvajon", + "website": "https://thomas.sauvajon.tech", + "contributions": 1 + }, + { + "id": "dunnbobcat", + "contributions": 1 + }, + { + "id": "jonaskello", + "contributions": 1 + }, + { + "id": "captbaritone", + "website": "https://jordaneldredge.com", + "contributions": 1 + }, + { + "id": "tomraithel", + "website": "http://www.tomraithel.de", + "contributions": 1 + }, + { + "id": "caseywebdev", + "website": "https://ca.sey.me", + "contributions": 1 + }, + { + "id": "fa93hws", + "website": "www.largetimber.com", + "contributions": 1 + }, + { + "id": "Rondinelly", + "contributions": 1 + }, + { + "id": "BowlingX", + "website": "https://vexquisit.com", + "contributions": 1 + }, + { + "id": "albertlockett2", + "contributions": 1 + }, + { + "id": "rodrigues", + "contributions": 1 + }, + { + "id": "binaryseed", + "contributions": 1 + }, + { + "id": "stephen", + "website": "tender.run", + "contributions": 1 + }, + { + "id": "sufuf3", + "website": "https://about.me/sufuf3", + "contributions": 1 + }, + { + "id": "caub", + "website": "https://caub.github.io", + "contributions": 1 + }, + { + "id": "mvayngrib", + "contributions": 1 + }, + { + "id": "brucewpaul", + "contributions": 1 + }, + { + "id": "Kosta-Github", + "contributions": 1 + }, + { + "id": "hansonw", + "website": "linkedin.com/in/hanson-wang", + "contributions": 1 + }, + { + "id": "Yan-J", + "contributions": 1 + }, + { + "id": "shashkambham", + "contributions": 1 + }, + { + "id": "sdemjanenko", + "website": "https://stephendemjanenko.com/", + "contributions": 1 + }, + { + "id": "cpunion", + "contributions": 1 + }, + { + "id": "storybook-safe-bot", + "contributions": 1 + }, + { + "id": "tlvenn", + "contributions": 1 + }, + { + "id": "jimkyndemeyer", + "contributions": 1 + }, + { + "id": "spen", + "website": "spentaylor.com", + "contributions": 1 + }, + { + "id": "alanlavintman", + "contributions": 1 + }, + { + "id": "patroza", + "website": "https://patrickroza.com", + "contributions": 1 + }, + { + "id": "arrygoo", + "website": "medium.com/@arry", + "contributions": 1 + }, + { + "id": "xuorig", + "website": "https://magiroux.com", + "contributions": 1 + }, + { + "id": "aihornmac", + "website": "https://ihawn.com", + "contributions": 1 + }, + { + "id": "cmatheson", + "contributions": 1 + }, + { + "id": "DxCx", + "contributions": 1 + }, + { + "id": "brandonblack", + "contributions": 1 + }, + { + "id": "charlierudolph", + "contributions": 1 + }, + { + "id": "davidcelis", + "website": "https://davidcel.is/", + "contributions": 1 + }, + { + "id": "rmosolgo", + "website": "http://rmosolgo.github.io", + "contributions": 1 + }, + { + "id": "mohsen1", + "website": "https://azimi.me", + "contributions": 1 + }, + { + "id": "okorz001", + "contributions": 1 + }, + { + "id": "craigbilner", + "website": "https://craigbilner.github.io", + "contributions": 1 + }, + { + "id": "nodkz", + "website": "https://twitter.com/nodkz", + "contributions": 1 + }, + { + "id": "BenoitZugmeyer", + "contributions": 1 + }, + { + "id": "ryanspradlin", + "website": "https://ryanspradlin.com/", + "contributions": 1 + }, + { + "id": "cgarvis", + "contributions": 1 + } + ] +} diff --git a/scripts/sync-landing-schema/generated/fragment-masking.ts b/scripts/sync-landing-schema/generated/fragment-masking.ts new file mode 100644 index 0000000000..6b0620a4cb --- /dev/null +++ b/scripts/sync-landing-schema/generated/fragment-masking.ts @@ -0,0 +1,104 @@ +/* eslint-disable */ +import type { + ResultOf, + DocumentTypeDecoration, +} from "@graphql-typed-document-node/core" +import type { Incremental, TypedDocumentString } from "./graphql.ts" + +export type FragmentType< + TDocumentType extends DocumentTypeDecoration, +> = + TDocumentType extends DocumentTypeDecoration + ? [TType] extends [{ " $fragmentName"?: infer TKey }] + ? TKey extends string + ? { " $fragmentRefs"?: { [key in TKey]: TType } } + : never + : never + : never + +// return non-nullable if `fragmentType` is non-nullable +export function useFragment( + _documentNode: DocumentTypeDecoration, + fragmentType: FragmentType>, +): TType +// return nullable if `fragmentType` is undefined +export function useFragment( + _documentNode: DocumentTypeDecoration, + fragmentType: FragmentType> | undefined, +): TType | undefined +// return nullable if `fragmentType` is nullable +export function useFragment( + _documentNode: DocumentTypeDecoration, + fragmentType: FragmentType> | null, +): TType | null +// return nullable if `fragmentType` is nullable or undefined +export function useFragment( + _documentNode: DocumentTypeDecoration, + fragmentType: + | FragmentType> + | null + | undefined, +): TType | null | undefined +// return array of non-nullable if `fragmentType` is array of non-nullable +export function useFragment( + _documentNode: DocumentTypeDecoration, + fragmentType: Array>>, +): Array +// return array of nullable if `fragmentType` is array of nullable +export function useFragment( + _documentNode: DocumentTypeDecoration, + fragmentType: + | Array>> + | null + | undefined, +): Array | null | undefined +// return readonly array of non-nullable if `fragmentType` is array of non-nullable +export function useFragment( + _documentNode: DocumentTypeDecoration, + fragmentType: ReadonlyArray>>, +): ReadonlyArray +// return readonly array of nullable if `fragmentType` is array of nullable +export function useFragment( + _documentNode: DocumentTypeDecoration, + fragmentType: + | ReadonlyArray>> + | null + | undefined, +): ReadonlyArray | null | undefined +export function useFragment( + _documentNode: DocumentTypeDecoration, + fragmentType: + | FragmentType> + | Array>> + | ReadonlyArray>> + | null + | undefined, +): TType | Array | ReadonlyArray | null | undefined { + return fragmentType as any +} + +export function makeFragmentData< + F extends DocumentTypeDecoration, + FT extends ResultOf, +>(data: FT, _fragment: F): FragmentType { + return data as FragmentType +} +export function isFragmentReady( + queryNode: TypedDocumentString, + fragmentNode: TypedDocumentString, + data: + | FragmentType, any>> + | null + | undefined, +): data is FragmentType { + const deferredFields = queryNode.__meta__?.deferredFields as Record< + string, + (keyof TFrag)[] + > + const fragName = fragmentNode.__meta__?.fragmentName as string | undefined + + if (!deferredFields || !fragName) return true + + const fields = deferredFields[fragName] ?? [] + return fields.length > 0 && fields.every(field => data && field in data) +} diff --git a/scripts/sync-landing-schema/generated/gql.ts b/scripts/sync-landing-schema/generated/gql.ts new file mode 100644 index 0000000000..3dc0fd844e --- /dev/null +++ b/scripts/sync-landing-schema/generated/gql.ts @@ -0,0 +1,32 @@ +/* eslint-disable */ +import * as types from "./graphql.ts" + +/** + * Map of all GraphQL operations in the project. + * + * This map has several performance disadvantages: + * 1. It is not tree-shakeable, so it will include all operations in the project. + * 2. It is not minifiable, so the string of a GraphQL query will be multiple times inside the bundle. + * 3. It does not support dead code elimination, so it will add unused operations. + * + * Therefore it is highly recommended to use the babel or swc plugin for production. + * Learn more about it here: https://the-guild.dev/graphql/codegen/plugins/presets/preset-client#reducing-bundle-size + */ +type Documents = { + "\n query RepoContributors($owner: String!, $name: String!, $after: String) {\n repository(owner: $owner, name: $name) {\n defaultBranchRef {\n target {\n ... on Commit {\n history(first: 100, after: $after) {\n pageInfo {\n hasNextPage\n endCursor\n }\n nodes {\n author {\n user {\n login\n websiteUrl\n }\n }\n }\n }\n }\n }\n }\n }\n }\n": typeof types.RepoContributorsDocument +} +const documents: Documents = { + "\n query RepoContributors($owner: String!, $name: String!, $after: String) {\n repository(owner: $owner, name: $name) {\n defaultBranchRef {\n target {\n ... on Commit {\n history(first: 100, after: $after) {\n pageInfo {\n hasNextPage\n endCursor\n }\n nodes {\n author {\n user {\n login\n websiteUrl\n }\n }\n }\n }\n }\n }\n }\n }\n }\n": + types.RepoContributorsDocument, +} + +/** + * The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients. + */ +export function graphql( + source: "\n query RepoContributors($owner: String!, $name: String!, $after: String) {\n repository(owner: $owner, name: $name) {\n defaultBranchRef {\n target {\n ... on Commit {\n history(first: 100, after: $after) {\n pageInfo {\n hasNextPage\n endCursor\n }\n nodes {\n author {\n user {\n login\n websiteUrl\n }\n }\n }\n }\n }\n }\n }\n }\n }\n", +): typeof import("./graphql.ts").RepoContributorsDocument + +export function graphql(source: string) { + return (documents as any)[source] ?? {} +} diff --git a/scripts/sync-landing-schema/generated/graphql.ts b/scripts/sync-landing-schema/generated/graphql.ts new file mode 100644 index 0000000000..dcd1afa6bd --- /dev/null +++ b/scripts/sync-landing-schema/generated/graphql.ts @@ -0,0 +1,35618 @@ +/* eslint-disable */ +import type { DocumentTypeDecoration } from "@graphql-typed-document-node/core" +export type Maybe = T | null +export type InputMaybe = Maybe +export type Exact = { + [K in keyof T]: T[K] +} +export type MakeOptional = Omit & { + [SubKey in K]?: Maybe +} +export type MakeMaybe = Omit & { + [SubKey in K]: Maybe +} +export type MakeEmpty< + T extends { [key: string]: unknown }, + K extends keyof T, +> = { [_ in K]?: never } +export type Incremental = + | T + | { + [P in keyof T]?: P extends " $fragmentName" | "__typename" ? T[P] : never + } +/** All built-in and custom scalars, mapped to their actual values */ +export type Scalars = { + ID: { input: string; output: string } + String: { input: string; output: string } + Boolean: { input: boolean; output: boolean } + Int: { input: number; output: number } + Float: { input: number; output: number } + /** A (potentially binary) string encoded using base64. */ + Base64String: { input: any; output: any } + /** Represents non-fractional signed whole numeric values. Since the value may exceed the size of a 32-bit integer, it's encoded as a string. */ + BigInt: { input: any; output: any } + /** An ISO-8601 encoded date string. */ + Date: { input: any; output: any } + /** An ISO-8601 encoded UTC date string. */ + DateTime: { input: any; output: any } + /** A Git object ID. */ + GitObjectID: { input: any; output: any } + /** A fully qualified reference name (e.g. `refs/heads/master`). */ + GitRefname: { input: any; output: any } + /** Git SSH string */ + GitSSHRemote: { input: any; output: any } + /** An ISO-8601 encoded date string. Unlike the DateTime type, GitTimestamp is not converted in UTC. */ + GitTimestamp: { input: any; output: any } + /** A string containing HTML code. */ + HTML: { input: any; output: any } + /** An ISO-8601 encoded UTC date string with millisecond precision. */ + PreciseDateTime: { input: any; output: any } + /** An RFC 3986, RFC 3987, and RFC 6570 (level 4) compliant URI string. */ + URI: { input: any; output: any } + /** A valid x509 certificate string */ + X509Certificate: { input: any; output: any } +} + +/** Autogenerated input type of AbortQueuedMigrations */ +export type AbortQueuedMigrationsInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The ID of the organization that is running the migrations. */ + ownerId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of AbortQueuedMigrations. */ +export type AbortQueuedMigrationsPayload = { + __typename?: "AbortQueuedMigrationsPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** Did the operation succeed? */ + success?: Maybe +} + +/** Autogenerated input type of AbortRepositoryMigration */ +export type AbortRepositoryMigrationInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The ID of the migration to be aborted. */ + migrationId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of AbortRepositoryMigration. */ +export type AbortRepositoryMigrationPayload = { + __typename?: "AbortRepositoryMigrationPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** Did the operation succeed? */ + success?: Maybe +} + +/** Autogenerated input type of AcceptEnterpriseAdministratorInvitation */ +export type AcceptEnterpriseAdministratorInvitationInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The id of the invitation being accepted */ + invitationId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of AcceptEnterpriseAdministratorInvitation. */ +export type AcceptEnterpriseAdministratorInvitationPayload = { + __typename?: "AcceptEnterpriseAdministratorInvitationPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The invitation that was accepted. */ + invitation?: Maybe + /** A message confirming the result of accepting an administrator invitation. */ + message?: Maybe +} + +/** Autogenerated input type of AcceptEnterpriseMemberInvitation */ +export type AcceptEnterpriseMemberInvitationInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The id of the invitation being accepted */ + invitationId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of AcceptEnterpriseMemberInvitation. */ +export type AcceptEnterpriseMemberInvitationPayload = { + __typename?: "AcceptEnterpriseMemberInvitationPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The invitation that was accepted. */ + invitation?: Maybe + /** A message confirming the result of accepting an unaffiliated member invitation. */ + message?: Maybe +} + +/** Autogenerated input type of AcceptTopicSuggestion */ +export type AcceptTopicSuggestionInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** + * The name of the suggested topic. + * + * **Upcoming Change on 2024-04-01 UTC** + * **Description:** `name` will be removed. + * **Reason:** Suggested topics are no longer supported + * + */ + name?: InputMaybe + /** + * The Node ID of the repository. + * + * **Upcoming Change on 2024-04-01 UTC** + * **Description:** `repositoryId` will be removed. + * **Reason:** Suggested topics are no longer supported + * + */ + repositoryId?: InputMaybe +} + +/** Autogenerated return type of AcceptTopicSuggestion. */ +export type AcceptTopicSuggestionPayload = { + __typename?: "AcceptTopicSuggestionPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** + * The accepted topic. + * @deprecated Suggested topics are no longer supported Removal on 2024-04-01 UTC. + */ + topic?: Maybe +} + +/** Autogenerated input type of AccessUserNamespaceRepository */ +export type AccessUserNamespaceRepositoryInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The ID of the enterprise owning the user namespace repository. */ + enterpriseId: Scalars["ID"]["input"] + /** The ID of the user namespace repository to access. */ + repositoryId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of AccessUserNamespaceRepository. */ +export type AccessUserNamespaceRepositoryPayload = { + __typename?: "AccessUserNamespaceRepositoryPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The time that repository access expires at */ + expiresAt?: Maybe + /** The repository that is temporarily accessible. */ + repository?: Maybe +} + +/** Represents an object which can take actions on GitHub. Typically a User or Bot. */ +export type Actor = { + /** A URL pointing to the actor's public avatar. */ + avatarUrl: Scalars["URI"]["output"] + /** The username of the actor. */ + login: Scalars["String"]["output"] + /** The HTTP path for this actor. */ + resourcePath: Scalars["URI"]["output"] + /** The HTTP URL for this actor. */ + url: Scalars["URI"]["output"] +} + +/** Represents an object which can take actions on GitHub. Typically a User or Bot. */ +export type ActorAvatarUrlArgs = { + size?: InputMaybe +} + +/** The connection type for Actor. */ +export type ActorConnection = { + __typename?: "ActorConnection" + /** A list of edges. */ + edges?: Maybe>> + /** A list of nodes. */ + nodes?: Maybe>> + /** Information to aid in pagination. */ + pageInfo: PageInfo + /** Identifies the total count of items in the connection. */ + totalCount: Scalars["Int"]["output"] +} + +/** An edge in a connection. */ +export type ActorEdge = { + __typename?: "ActorEdge" + /** A cursor for use in pagination. */ + cursor: Scalars["String"]["output"] + /** The item at the end of the edge. */ + node?: Maybe +} + +/** Location information for an actor */ +export type ActorLocation = { + __typename?: "ActorLocation" + /** City */ + city?: Maybe + /** Country name */ + country?: Maybe + /** Country code */ + countryCode?: Maybe + /** Region name */ + region?: Maybe + /** Region or state code */ + regionCode?: Maybe +} + +/** The actor's type. */ +export type ActorType = + /** Indicates a team actor. */ + | "TEAM" + /** Indicates a user actor. */ + | "USER" + +/** Autogenerated input type of AddAssigneesToAssignable */ +export type AddAssigneesToAssignableInput = { + /** The id of the assignable object to add assignees to. */ + assignableId: Scalars["ID"]["input"] + /** The id of users to add as assignees. */ + assigneeIds: Array + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe +} + +/** Autogenerated return type of AddAssigneesToAssignable. */ +export type AddAssigneesToAssignablePayload = { + __typename?: "AddAssigneesToAssignablePayload" + /** The item that was assigned. */ + assignable?: Maybe + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe +} + +/** Autogenerated input type of AddBlockedBy */ +export type AddBlockedByInput = { + /** The ID of the issue that blocks the given issue. */ + blockingIssueId: Scalars["ID"]["input"] + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The ID of the issue to be blocked. */ + issueId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of AddBlockedBy. */ +export type AddBlockedByPayload = { + __typename?: "AddBlockedByPayload" + /** The issue that is blocking the given issue. */ + blockingIssue?: Maybe + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The issue that is blocked. */ + issue?: Maybe +} + +/** Autogenerated input type of AddComment */ +export type AddCommentInput = { + /** The contents of the comment. */ + body: Scalars["String"]["input"] + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The Node ID of the subject to modify. */ + subjectId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of AddComment. */ +export type AddCommentPayload = { + __typename?: "AddCommentPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The edge from the subject's comment connection. */ + commentEdge?: Maybe + /** The subject */ + subject?: Maybe + /** The edge from the subject's timeline connection. */ + timelineEdge?: Maybe +} + +/** Autogenerated input type of AddDiscussionComment */ +export type AddDiscussionCommentInput = { + /** The contents of the comment. */ + body: Scalars["String"]["input"] + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The Node ID of the discussion to comment on. */ + discussionId: Scalars["ID"]["input"] + /** The Node ID of the discussion comment within this discussion to reply to. */ + replyToId?: InputMaybe +} + +/** Autogenerated return type of AddDiscussionComment. */ +export type AddDiscussionCommentPayload = { + __typename?: "AddDiscussionCommentPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The newly created discussion comment. */ + comment?: Maybe +} + +/** Autogenerated input type of AddDiscussionPollVote */ +export type AddDiscussionPollVoteInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The Node ID of the discussion poll option to vote for. */ + pollOptionId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of AddDiscussionPollVote. */ +export type AddDiscussionPollVotePayload = { + __typename?: "AddDiscussionPollVotePayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The poll option that a vote was added to. */ + pollOption?: Maybe +} + +/** Autogenerated input type of AddEnterpriseOrganizationMember */ +export type AddEnterpriseOrganizationMemberInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The ID of the enterprise which owns the organization. */ + enterpriseId: Scalars["ID"]["input"] + /** The ID of the organization the users will be added to. */ + organizationId: Scalars["ID"]["input"] + /** The role to assign the users in the organization */ + role?: InputMaybe + /** The IDs of the enterprise members to add. */ + userIds: Array +} + +/** Autogenerated return type of AddEnterpriseOrganizationMember. */ +export type AddEnterpriseOrganizationMemberPayload = { + __typename?: "AddEnterpriseOrganizationMemberPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The users who were added to the organization. */ + users?: Maybe> +} + +/** Autogenerated input type of AddEnterpriseSupportEntitlement */ +export type AddEnterpriseSupportEntitlementInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The ID of the Enterprise which the admin belongs to. */ + enterpriseId: Scalars["ID"]["input"] + /** The login of a member who will receive the support entitlement. */ + login: Scalars["String"]["input"] +} + +/** Autogenerated return type of AddEnterpriseSupportEntitlement. */ +export type AddEnterpriseSupportEntitlementPayload = { + __typename?: "AddEnterpriseSupportEntitlementPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** A message confirming the result of adding the support entitlement. */ + message?: Maybe +} + +/** Autogenerated input type of AddLabelsToLabelable */ +export type AddLabelsToLabelableInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The ids of the labels to add. */ + labelIds: Array + /** The id of the labelable object to add labels to. */ + labelableId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of AddLabelsToLabelable. */ +export type AddLabelsToLabelablePayload = { + __typename?: "AddLabelsToLabelablePayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The item that was labeled. */ + labelable?: Maybe +} + +/** Autogenerated input type of AddProjectCard */ +export type AddProjectCardInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The content of the card. Must be a member of the ProjectCardItem union */ + contentId?: InputMaybe + /** The note on the card. */ + note?: InputMaybe + /** The Node ID of the ProjectColumn. */ + projectColumnId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of AddProjectCard. */ +export type AddProjectCardPayload = { + __typename?: "AddProjectCardPayload" + /** The edge from the ProjectColumn's card connection. */ + cardEdge?: Maybe + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The ProjectColumn */ + projectColumn?: Maybe +} + +/** Autogenerated input type of AddProjectColumn */ +export type AddProjectColumnInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The name of the column. */ + name: Scalars["String"]["input"] + /** The Node ID of the project. */ + projectId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of AddProjectColumn. */ +export type AddProjectColumnPayload = { + __typename?: "AddProjectColumnPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The edge from the project's column connection. */ + columnEdge?: Maybe + /** The project */ + project?: Maybe +} + +/** Autogenerated input type of AddProjectV2DraftIssue */ +export type AddProjectV2DraftIssueInput = { + /** The IDs of the assignees of the draft issue. */ + assigneeIds?: InputMaybe> + /** The body of the draft issue. */ + body?: InputMaybe + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The ID of the Project to add the draft issue to. */ + projectId: Scalars["ID"]["input"] + /** The title of the draft issue. A project item can also be created by providing the URL of an Issue or Pull Request if you have access. */ + title: Scalars["String"]["input"] +} + +/** Autogenerated return type of AddProjectV2DraftIssue. */ +export type AddProjectV2DraftIssuePayload = { + __typename?: "AddProjectV2DraftIssuePayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The draft issue added to the project. */ + projectItem?: Maybe +} + +/** Autogenerated input type of AddProjectV2ItemById */ +export type AddProjectV2ItemByIdInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The id of the Issue or Pull Request to add. */ + contentId: Scalars["ID"]["input"] + /** The ID of the Project to add the item to. */ + projectId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of AddProjectV2ItemById. */ +export type AddProjectV2ItemByIdPayload = { + __typename?: "AddProjectV2ItemByIdPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The item added to the project. */ + item?: Maybe +} + +/** Autogenerated input type of AddPullRequestReviewComment */ +export type AddPullRequestReviewCommentInput = { + /** + * The text of the comment. This field is required + * + * **Upcoming Change on 2023-10-01 UTC** + * **Description:** `body` will be removed. use addPullRequestReviewThread or addPullRequestReviewThreadReply instead + * **Reason:** We are deprecating the addPullRequestReviewComment mutation + * + */ + body?: InputMaybe + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** + * The SHA of the commit to comment on. + * + * **Upcoming Change on 2023-10-01 UTC** + * **Description:** `commitOID` will be removed. use addPullRequestReviewThread or addPullRequestReviewThreadReply instead + * **Reason:** We are deprecating the addPullRequestReviewComment mutation + * + */ + commitOID?: InputMaybe + /** + * The comment id to reply to. + * + * **Upcoming Change on 2023-10-01 UTC** + * **Description:** `inReplyTo` will be removed. use addPullRequestReviewThread or addPullRequestReviewThreadReply instead + * **Reason:** We are deprecating the addPullRequestReviewComment mutation + * + */ + inReplyTo?: InputMaybe + /** + * The relative path of the file to comment on. + * + * **Upcoming Change on 2023-10-01 UTC** + * **Description:** `path` will be removed. use addPullRequestReviewThread or addPullRequestReviewThreadReply instead + * **Reason:** We are deprecating the addPullRequestReviewComment mutation + * + */ + path?: InputMaybe + /** + * The line index in the diff to comment on. + * + * **Upcoming Change on 2023-10-01 UTC** + * **Description:** `position` will be removed. use addPullRequestReviewThread or addPullRequestReviewThreadReply instead + * **Reason:** We are deprecating the addPullRequestReviewComment mutation + * + */ + position?: InputMaybe + /** + * The node ID of the pull request reviewing + * + * **Upcoming Change on 2023-10-01 UTC** + * **Description:** `pullRequestId` will be removed. use addPullRequestReviewThread or addPullRequestReviewThreadReply instead + * **Reason:** We are deprecating the addPullRequestReviewComment mutation + * + */ + pullRequestId?: InputMaybe + /** + * The Node ID of the review to modify. + * + * **Upcoming Change on 2023-10-01 UTC** + * **Description:** `pullRequestReviewId` will be removed. use addPullRequestReviewThread or addPullRequestReviewThreadReply instead + * **Reason:** We are deprecating the addPullRequestReviewComment mutation + * + */ + pullRequestReviewId?: InputMaybe +} + +/** Autogenerated return type of AddPullRequestReviewComment. */ +export type AddPullRequestReviewCommentPayload = { + __typename?: "AddPullRequestReviewCommentPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The newly created comment. */ + comment?: Maybe + /** The edge from the review's comment connection. */ + commentEdge?: Maybe +} + +/** Autogenerated input type of AddPullRequestReview */ +export type AddPullRequestReviewInput = { + /** The contents of the review body comment. */ + body?: InputMaybe + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** + * The review line comments. + * + * **Upcoming Change on 2023-10-01 UTC** + * **Description:** `comments` will be removed. use the `threads` argument instead + * **Reason:** We are deprecating comment fields that use diff-relative positioning + * + */ + comments?: InputMaybe>> + /** The commit OID the review pertains to. */ + commitOID?: InputMaybe + /** The event to perform on the pull request review. */ + event?: InputMaybe + /** The Node ID of the pull request to modify. */ + pullRequestId: Scalars["ID"]["input"] + /** The review line comment threads. */ + threads?: InputMaybe>> +} + +/** Autogenerated return type of AddPullRequestReview. */ +export type AddPullRequestReviewPayload = { + __typename?: "AddPullRequestReviewPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The newly created pull request review. */ + pullRequestReview?: Maybe + /** The edge from the pull request's review connection. */ + reviewEdge?: Maybe +} + +/** Autogenerated input type of AddPullRequestReviewThread */ +export type AddPullRequestReviewThreadInput = { + /** Body of the thread's first comment. */ + body: Scalars["String"]["input"] + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The line of the blob to which the thread refers, required for line-level threads. The end of the line range for multi-line comments. */ + line?: InputMaybe + /** Path to the file being commented on. */ + path?: InputMaybe + /** The node ID of the pull request reviewing */ + pullRequestId?: InputMaybe + /** The Node ID of the review to modify. */ + pullRequestReviewId?: InputMaybe + /** The side of the diff on which the line resides. For multi-line comments, this is the side for the end of the line range. */ + side?: InputMaybe + /** The first line of the range to which the comment refers. */ + startLine?: InputMaybe + /** The side of the diff on which the start line resides. */ + startSide?: InputMaybe + /** The level at which the comments in the corresponding thread are targeted, can be a diff line or a file */ + subjectType?: InputMaybe +} + +/** Autogenerated return type of AddPullRequestReviewThread. */ +export type AddPullRequestReviewThreadPayload = { + __typename?: "AddPullRequestReviewThreadPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The newly created thread. */ + thread?: Maybe +} + +/** Autogenerated input type of AddPullRequestReviewThreadReply */ +export type AddPullRequestReviewThreadReplyInput = { + /** The text of the reply. */ + body: Scalars["String"]["input"] + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The Node ID of the pending review to which the reply will belong. */ + pullRequestReviewId?: InputMaybe + /** The Node ID of the thread to which this reply is being written. */ + pullRequestReviewThreadId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of AddPullRequestReviewThreadReply. */ +export type AddPullRequestReviewThreadReplyPayload = { + __typename?: "AddPullRequestReviewThreadReplyPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The newly created reply. */ + comment?: Maybe +} + +/** Autogenerated input type of AddReaction */ +export type AddReactionInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The name of the emoji to react with. */ + content: ReactionContent + /** The Node ID of the subject to modify. */ + subjectId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of AddReaction. */ +export type AddReactionPayload = { + __typename?: "AddReactionPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The reaction object. */ + reaction?: Maybe + /** The reaction groups for the subject. */ + reactionGroups?: Maybe> + /** The reactable subject. */ + subject?: Maybe +} + +/** Autogenerated input type of AddStar */ +export type AddStarInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The Starrable ID to star. */ + starrableId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of AddStar. */ +export type AddStarPayload = { + __typename?: "AddStarPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The starrable. */ + starrable?: Maybe +} + +/** Autogenerated input type of AddSubIssue */ +export type AddSubIssueInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The id of the issue. */ + issueId: Scalars["ID"]["input"] + /** Option to replace parent issue if one already exists */ + replaceParent?: InputMaybe + /** The id of the sub-issue. */ + subIssueId?: InputMaybe + /** The url of the sub-issue. */ + subIssueUrl?: InputMaybe +} + +/** Autogenerated return type of AddSubIssue. */ +export type AddSubIssuePayload = { + __typename?: "AddSubIssuePayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The parent issue that the sub-issue was added to. */ + issue?: Maybe + /** The sub-issue of the parent. */ + subIssue?: Maybe +} + +/** Autogenerated input type of AddUpvote */ +export type AddUpvoteInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The Node ID of the discussion or comment to upvote. */ + subjectId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of AddUpvote. */ +export type AddUpvotePayload = { + __typename?: "AddUpvotePayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The votable subject. */ + subject?: Maybe +} + +/** Autogenerated input type of AddVerifiableDomain */ +export type AddVerifiableDomainInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The URL of the domain */ + domain: Scalars["URI"]["input"] + /** The ID of the owner to add the domain to */ + ownerId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of AddVerifiableDomain. */ +export type AddVerifiableDomainPayload = { + __typename?: "AddVerifiableDomainPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The verifiable domain that was added. */ + domain?: Maybe +} + +/** Represents an 'added_to_merge_queue' event on a given pull request. */ +export type AddedToMergeQueueEvent = Node & { + __typename?: "AddedToMergeQueueEvent" + /** Identifies the actor who performed the event. */ + actor?: Maybe + /** Identifies the date and time when the object was created. */ + createdAt: Scalars["DateTime"]["output"] + /** The user who added this Pull Request to the merge queue */ + enqueuer?: Maybe + /** The Node ID of the AddedToMergeQueueEvent object */ + id: Scalars["ID"]["output"] + /** The merge queue where this pull request was added to. */ + mergeQueue?: Maybe + /** PullRequest referenced by event. */ + pullRequest?: Maybe +} + +/** Represents a 'added_to_project' event on a given issue or pull request. */ +export type AddedToProjectEvent = Node & { + __typename?: "AddedToProjectEvent" + /** Identifies the actor who performed the event. */ + actor?: Maybe + /** Identifies the date and time when the object was created. */ + createdAt: Scalars["DateTime"]["output"] + /** + * Identifies the primary key from the database. + * @deprecated Projects (classic) is being deprecated in favor of the new Projects experience, see: https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/. Removal on 2025-04-01 UTC. + */ + databaseId?: Maybe + /** The Node ID of the AddedToProjectEvent object */ + id: Scalars["ID"]["output"] + /** + * Project referenced by event. + * @deprecated Projects (classic) is being deprecated in favor of the new Projects experience, see: https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/. Removal on 2025-04-01 UTC. + */ + project?: Maybe + /** + * Project card referenced by this project event. + * @deprecated Projects (classic) is being deprecated in favor of the new Projects experience, see: https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/. Removal on 2025-04-01 UTC. + */ + projectCard?: Maybe + /** + * Column name referenced by this project event. + * @deprecated Projects (classic) is being deprecated in favor of the new Projects experience, see: https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/. Removal on 2025-04-01 UTC. + */ + projectColumnName: Scalars["String"]["output"] +} + +/** An announcement banner for an enterprise or organization. */ +export type AnnouncementBanner = { + __typename?: "AnnouncementBanner" + /** The date the announcement was created */ + createdAt: Scalars["DateTime"]["output"] + /** The expiration date of the announcement, if any */ + expiresAt?: Maybe + /** Whether the announcement can be dismissed by the user */ + isUserDismissible: Scalars["Boolean"]["output"] + /** The text of the announcement */ + message?: Maybe +} + +/** A GitHub App. */ +export type App = Node & { + __typename?: "App" + /** The client ID of the app. */ + clientId?: Maybe + /** Identifies the date and time when the object was created. */ + createdAt: Scalars["DateTime"]["output"] + /** Identifies the primary key from the database. */ + databaseId?: Maybe + /** The description of the app. */ + description?: Maybe + /** The Node ID of the App object */ + id: Scalars["ID"]["output"] + /** The IP addresses of the app. */ + ipAllowListEntries: IpAllowListEntryConnection + /** The hex color code, without the leading '#', for the logo background. */ + logoBackgroundColor: Scalars["String"]["output"] + /** A URL pointing to the app's logo. */ + logoUrl: Scalars["URI"]["output"] + /** The name of the app. */ + name: Scalars["String"]["output"] + /** A slug based on the name of the app for use in URLs. */ + slug: Scalars["String"]["output"] + /** Identifies the date and time when the object was last updated. */ + updatedAt: Scalars["DateTime"]["output"] + /** The URL to the app's homepage. */ + url: Scalars["URI"]["output"] +} + +/** A GitHub App. */ +export type AppIpAllowListEntriesArgs = { + after?: InputMaybe + before?: InputMaybe + first?: InputMaybe + last?: InputMaybe + orderBy?: InputMaybe +} + +/** A GitHub App. */ +export type AppLogoUrlArgs = { + size?: InputMaybe +} + +/** Autogenerated input type of ApproveDeployments */ +export type ApproveDeploymentsInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** Optional comment for approving deployments */ + comment?: InputMaybe + /** The ids of environments to reject deployments */ + environmentIds: Array + /** The node ID of the workflow run containing the pending deployments. */ + workflowRunId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of ApproveDeployments. */ +export type ApproveDeploymentsPayload = { + __typename?: "ApproveDeploymentsPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The affected deployments. */ + deployments?: Maybe> +} + +/** Autogenerated input type of ApproveVerifiableDomain */ +export type ApproveVerifiableDomainInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The ID of the verifiable domain to approve. */ + id: Scalars["ID"]["input"] +} + +/** Autogenerated return type of ApproveVerifiableDomain. */ +export type ApproveVerifiableDomainPayload = { + __typename?: "ApproveVerifiableDomainPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The verifiable domain that was approved. */ + domain?: Maybe +} + +/** Autogenerated input type of ArchiveProjectV2Item */ +export type ArchiveProjectV2ItemInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The ID of the ProjectV2Item to archive. */ + itemId: Scalars["ID"]["input"] + /** The ID of the Project to archive the item from. */ + projectId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of ArchiveProjectV2Item. */ +export type ArchiveProjectV2ItemPayload = { + __typename?: "ArchiveProjectV2ItemPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The item archived from the project. */ + item?: Maybe +} + +/** Autogenerated input type of ArchiveRepository */ +export type ArchiveRepositoryInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The ID of the repository to mark as archived. */ + repositoryId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of ArchiveRepository. */ +export type ArchiveRepositoryPayload = { + __typename?: "ArchiveRepositoryPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The repository that was marked as archived. */ + repository?: Maybe +} + +/** An object that can have users assigned to it. */ +export type Assignable = { + /** A list of actors assigned to this object. */ + assignedActors: AssigneeConnection + /** A list of Users assigned to this object. */ + assignees: UserConnection + /** A list of suggested actors to assign to this object */ + suggestedActors: AssigneeConnection +} + +/** An object that can have users assigned to it. */ +export type AssignableAssignedActorsArgs = { + after?: InputMaybe + before?: InputMaybe + first?: InputMaybe + last?: InputMaybe +} + +/** An object that can have users assigned to it. */ +export type AssignableAssigneesArgs = { + after?: InputMaybe + before?: InputMaybe + first?: InputMaybe + last?: InputMaybe +} + +/** An object that can have users assigned to it. */ +export type AssignableSuggestedActorsArgs = { + after?: InputMaybe + before?: InputMaybe + first?: InputMaybe + last?: InputMaybe + query?: InputMaybe +} + +/** Represents an 'assigned' event on any assignable object. */ +export type AssignedEvent = Node & { + __typename?: "AssignedEvent" + /** Identifies the actor who performed the event. */ + actor?: Maybe + /** Identifies the assignable associated with the event. */ + assignable: Assignable + /** Identifies the user or mannequin that was assigned. */ + assignee?: Maybe + /** Identifies the date and time when the object was created. */ + createdAt: Scalars["DateTime"]["output"] + /** The Node ID of the AssignedEvent object */ + id: Scalars["ID"]["output"] + /** + * Identifies the user who was assigned. + * @deprecated Assignees can now be mannequins. Use the `assignee` field instead. Removal on 2020-01-01 UTC. + */ + user?: Maybe +} + +/** Types that can be assigned to issues. */ +export type Assignee = Bot | Mannequin | Organization | User + +/** The connection type for Assignee. */ +export type AssigneeConnection = { + __typename?: "AssigneeConnection" + /** A list of edges. */ + edges?: Maybe>> + /** A list of nodes. */ + nodes?: Maybe>> + /** Information to aid in pagination. */ + pageInfo: PageInfo + /** Identifies the total count of items in the connection. */ + totalCount: Scalars["Int"]["output"] +} + +/** An edge in a connection. */ +export type AssigneeEdge = { + __typename?: "AssigneeEdge" + /** A cursor for use in pagination. */ + cursor: Scalars["String"]["output"] + /** The item at the end of the edge. */ + node?: Maybe +} + +/** An entry in the audit log. */ +export type AuditEntry = { + /** + * The action name + * @deprecated The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC. + */ + action: Scalars["String"]["output"] + /** + * The user who initiated the action + * @deprecated The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC. + */ + actor?: Maybe + /** + * The IP address of the actor + * @deprecated The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC. + */ + actorIp?: Maybe + /** + * A readable representation of the actor's location + * @deprecated The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC. + */ + actorLocation?: Maybe + /** + * The username of the user who initiated the action + * @deprecated The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC. + */ + actorLogin?: Maybe + /** + * The HTTP path for the actor. + * @deprecated The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC. + */ + actorResourcePath?: Maybe + /** + * The HTTP URL for the actor. + * @deprecated The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC. + */ + actorUrl?: Maybe + /** + * The time the action was initiated + * @deprecated The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC. + */ + createdAt: Scalars["PreciseDateTime"]["output"] + /** + * The corresponding operation type for the action + * @deprecated The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC. + */ + operationType?: Maybe + /** + * The user affected by the action + * @deprecated The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC. + */ + user?: Maybe + /** + * For actions involving two users, the actor is the initiator and the user is the affected user. + * @deprecated The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC. + */ + userLogin?: Maybe + /** + * The HTTP path for the user. + * @deprecated The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC. + */ + userResourcePath?: Maybe + /** + * The HTTP URL for the user. + * @deprecated The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC. + */ + userUrl?: Maybe +} + +/** Types that can initiate an audit log event. */ +export type AuditEntryActor = Bot | Organization | User + +/** Ordering options for Audit Log connections. */ +export type AuditLogOrder = { + /** The ordering direction. */ + direction?: InputMaybe + /** The field to order Audit Logs by. */ + field?: InputMaybe +} + +/** Properties by which Audit Log connections can be ordered. */ +export type AuditLogOrderField = + /** Order audit log entries by timestamp */ + "CREATED_AT" + +/** Represents a 'auto_merge_disabled' event on a given pull request. */ +export type AutoMergeDisabledEvent = Node & { + __typename?: "AutoMergeDisabledEvent" + /** Identifies the actor who performed the event. */ + actor?: Maybe + /** Identifies the date and time when the object was created. */ + createdAt: Scalars["DateTime"]["output"] + /** The user who disabled auto-merge for this Pull Request */ + disabler?: Maybe + /** The Node ID of the AutoMergeDisabledEvent object */ + id: Scalars["ID"]["output"] + /** PullRequest referenced by event */ + pullRequest?: Maybe + /** The reason auto-merge was disabled */ + reason?: Maybe + /** The reason_code relating to why auto-merge was disabled */ + reasonCode?: Maybe +} + +/** Represents a 'auto_merge_enabled' event on a given pull request. */ +export type AutoMergeEnabledEvent = Node & { + __typename?: "AutoMergeEnabledEvent" + /** Identifies the actor who performed the event. */ + actor?: Maybe + /** Identifies the date and time when the object was created. */ + createdAt: Scalars["DateTime"]["output"] + /** The user who enabled auto-merge for this Pull Request */ + enabler?: Maybe + /** The Node ID of the AutoMergeEnabledEvent object */ + id: Scalars["ID"]["output"] + /** PullRequest referenced by event. */ + pullRequest?: Maybe +} + +/** Represents an auto-merge request for a pull request */ +export type AutoMergeRequest = { + __typename?: "AutoMergeRequest" + /** The email address of the author of this auto-merge request. */ + authorEmail?: Maybe + /** The commit message of the auto-merge request. If a merge queue is required by the base branch, this value will be set by the merge queue when merging. */ + commitBody?: Maybe + /** The commit title of the auto-merge request. If a merge queue is required by the base branch, this value will be set by the merge queue when merging */ + commitHeadline?: Maybe + /** When was this auto-merge request was enabled. */ + enabledAt?: Maybe + /** The actor who created the auto-merge request. */ + enabledBy?: Maybe + /** The merge method of the auto-merge request. If a merge queue is required by the base branch, this value will be set by the merge queue when merging. */ + mergeMethod: PullRequestMergeMethod + /** The pull request that this auto-merge request is set against. */ + pullRequest: PullRequest +} + +/** Represents a 'auto_rebase_enabled' event on a given pull request. */ +export type AutoRebaseEnabledEvent = Node & { + __typename?: "AutoRebaseEnabledEvent" + /** Identifies the actor who performed the event. */ + actor?: Maybe + /** Identifies the date and time when the object was created. */ + createdAt: Scalars["DateTime"]["output"] + /** The user who enabled auto-merge (rebase) for this Pull Request */ + enabler?: Maybe + /** The Node ID of the AutoRebaseEnabledEvent object */ + id: Scalars["ID"]["output"] + /** PullRequest referenced by event. */ + pullRequest?: Maybe +} + +/** Represents a 'auto_squash_enabled' event on a given pull request. */ +export type AutoSquashEnabledEvent = Node & { + __typename?: "AutoSquashEnabledEvent" + /** Identifies the actor who performed the event. */ + actor?: Maybe + /** Identifies the date and time when the object was created. */ + createdAt: Scalars["DateTime"]["output"] + /** The user who enabled auto-merge (squash) for this Pull Request */ + enabler?: Maybe + /** The Node ID of the AutoSquashEnabledEvent object */ + id: Scalars["ID"]["output"] + /** PullRequest referenced by event. */ + pullRequest?: Maybe +} + +/** Represents a 'automatic_base_change_failed' event on a given pull request. */ +export type AutomaticBaseChangeFailedEvent = Node & { + __typename?: "AutomaticBaseChangeFailedEvent" + /** Identifies the actor who performed the event. */ + actor?: Maybe + /** Identifies the date and time when the object was created. */ + createdAt: Scalars["DateTime"]["output"] + /** The Node ID of the AutomaticBaseChangeFailedEvent object */ + id: Scalars["ID"]["output"] + /** The new base for this PR */ + newBase: Scalars["String"]["output"] + /** The old base for this PR */ + oldBase: Scalars["String"]["output"] + /** PullRequest referenced by event. */ + pullRequest: PullRequest +} + +/** Represents a 'automatic_base_change_succeeded' event on a given pull request. */ +export type AutomaticBaseChangeSucceededEvent = Node & { + __typename?: "AutomaticBaseChangeSucceededEvent" + /** Identifies the actor who performed the event. */ + actor?: Maybe + /** Identifies the date and time when the object was created. */ + createdAt: Scalars["DateTime"]["output"] + /** The Node ID of the AutomaticBaseChangeSucceededEvent object */ + id: Scalars["ID"]["output"] + /** The new base for this PR */ + newBase: Scalars["String"]["output"] + /** The old base for this PR */ + oldBase: Scalars["String"]["output"] + /** PullRequest referenced by event. */ + pullRequest: PullRequest +} + +/** Represents a 'base_ref_changed' event on a given issue or pull request. */ +export type BaseRefChangedEvent = Node & { + __typename?: "BaseRefChangedEvent" + /** Identifies the actor who performed the event. */ + actor?: Maybe + /** Identifies the date and time when the object was created. */ + createdAt: Scalars["DateTime"]["output"] + /** Identifies the name of the base ref for the pull request after it was changed. */ + currentRefName: Scalars["String"]["output"] + /** Identifies the primary key from the database. */ + databaseId?: Maybe + /** The Node ID of the BaseRefChangedEvent object */ + id: Scalars["ID"]["output"] + /** Identifies the name of the base ref for the pull request before it was changed. */ + previousRefName: Scalars["String"]["output"] + /** PullRequest referenced by event. */ + pullRequest: PullRequest +} + +/** Represents a 'base_ref_deleted' event on a given pull request. */ +export type BaseRefDeletedEvent = Node & { + __typename?: "BaseRefDeletedEvent" + /** Identifies the actor who performed the event. */ + actor?: Maybe + /** Identifies the name of the Ref associated with the `base_ref_deleted` event. */ + baseRefName?: Maybe + /** Identifies the date and time when the object was created. */ + createdAt: Scalars["DateTime"]["output"] + /** The Node ID of the BaseRefDeletedEvent object */ + id: Scalars["ID"]["output"] + /** PullRequest referenced by event. */ + pullRequest?: Maybe +} + +/** Represents a 'base_ref_force_pushed' event on a given pull request. */ +export type BaseRefForcePushedEvent = Node & { + __typename?: "BaseRefForcePushedEvent" + /** Identifies the actor who performed the event. */ + actor?: Maybe + /** Identifies the after commit SHA for the 'base_ref_force_pushed' event. */ + afterCommit?: Maybe + /** Identifies the before commit SHA for the 'base_ref_force_pushed' event. */ + beforeCommit?: Maybe + /** Identifies the date and time when the object was created. */ + createdAt: Scalars["DateTime"]["output"] + /** The Node ID of the BaseRefForcePushedEvent object */ + id: Scalars["ID"]["output"] + /** PullRequest referenced by event. */ + pullRequest: PullRequest + /** Identifies the fully qualified ref name for the 'base_ref_force_pushed' event. */ + ref?: Maybe +} + +/** Represents a Git blame. */ +export type Blame = { + __typename?: "Blame" + /** The list of ranges from a Git blame. */ + ranges: Array +} + +/** Represents a range of information from a Git blame. */ +export type BlameRange = { + __typename?: "BlameRange" + /** Identifies the recency of the change, from 1 (new) to 10 (old). This is calculated as a 2-quantile and determines the length of distance between the median age of all the changes in the file and the recency of the current range's change. */ + age: Scalars["Int"]["output"] + /** Identifies the line author */ + commit: Commit + /** The ending line for the range */ + endingLine: Scalars["Int"]["output"] + /** The starting line for the range */ + startingLine: Scalars["Int"]["output"] +} + +/** Represents a Git blob. */ +export type Blob = GitObject & + Node & { + __typename?: "Blob" + /** An abbreviated version of the Git object ID */ + abbreviatedOid: Scalars["String"]["output"] + /** Byte size of Blob object */ + byteSize: Scalars["Int"]["output"] + /** The HTTP path for this Git object */ + commitResourcePath: Scalars["URI"]["output"] + /** The HTTP URL for this Git object */ + commitUrl: Scalars["URI"]["output"] + /** The Node ID of the Blob object */ + id: Scalars["ID"]["output"] + /** Indicates whether the Blob is binary or text. Returns null if unable to determine the encoding. */ + isBinary?: Maybe + /** Indicates whether the contents is truncated */ + isTruncated: Scalars["Boolean"]["output"] + /** The Git object ID */ + oid: Scalars["GitObjectID"]["output"] + /** The Repository the Git object belongs to */ + repository: Repository + /** UTF8 text data or null if the Blob is binary */ + text?: Maybe + } + +/** Represents a 'blocked_by_added' event on a given issue. */ +export type BlockedByAddedEvent = Node & { + __typename?: "BlockedByAddedEvent" + /** Identifies the actor who performed the event. */ + actor?: Maybe + /** The blocking issue that was added. */ + blockingIssue?: Maybe + /** Identifies the date and time when the object was created. */ + createdAt: Scalars["DateTime"]["output"] + /** The Node ID of the BlockedByAddedEvent object */ + id: Scalars["ID"]["output"] +} + +/** Represents a 'blocked_by_removed' event on a given issue. */ +export type BlockedByRemovedEvent = Node & { + __typename?: "BlockedByRemovedEvent" + /** Identifies the actor who performed the event. */ + actor?: Maybe + /** The blocking issue that was removed. */ + blockingIssue?: Maybe + /** Identifies the date and time when the object was created. */ + createdAt: Scalars["DateTime"]["output"] + /** The Node ID of the BlockedByRemovedEvent object */ + id: Scalars["ID"]["output"] +} + +/** Represents a 'blocking_added' event on a given issue. */ +export type BlockingAddedEvent = Node & { + __typename?: "BlockingAddedEvent" + /** Identifies the actor who performed the event. */ + actor?: Maybe + /** The blocked issue that was added. */ + blockedIssue?: Maybe + /** Identifies the date and time when the object was created. */ + createdAt: Scalars["DateTime"]["output"] + /** The Node ID of the BlockingAddedEvent object */ + id: Scalars["ID"]["output"] +} + +/** Represents a 'blocking_removed' event on a given issue. */ +export type BlockingRemovedEvent = Node & { + __typename?: "BlockingRemovedEvent" + /** Identifies the actor who performed the event. */ + actor?: Maybe + /** The blocked issue that was removed. */ + blockedIssue?: Maybe + /** Identifies the date and time when the object was created. */ + createdAt: Scalars["DateTime"]["output"] + /** The Node ID of the BlockingRemovedEvent object */ + id: Scalars["ID"]["output"] +} + +/** A special type of user which takes actions on behalf of GitHub Apps. */ +export type Bot = Actor & + Node & + UniformResourceLocatable & { + __typename?: "Bot" + /** A URL pointing to the GitHub App's public avatar. */ + avatarUrl: Scalars["URI"]["output"] + /** Identifies the date and time when the object was created. */ + createdAt: Scalars["DateTime"]["output"] + /** Identifies the primary key from the database. */ + databaseId?: Maybe + /** The Node ID of the Bot object */ + id: Scalars["ID"]["output"] + /** The username of the actor. */ + login: Scalars["String"]["output"] + /** The HTTP path for this bot */ + resourcePath: Scalars["URI"]["output"] + /** Identifies the date and time when the object was last updated. */ + updatedAt: Scalars["DateTime"]["output"] + /** The HTTP URL for this bot */ + url: Scalars["URI"]["output"] + } + +/** A special type of user which takes actions on behalf of GitHub Apps. */ +export type BotAvatarUrlArgs = { + size?: InputMaybe +} + +/** Types which can be actors for `BranchActorAllowance` objects. */ +export type BranchActorAllowanceActor = App | Team | User + +/** Parameters to be used for the branch_name_pattern rule */ +export type BranchNamePatternParameters = { + __typename?: "BranchNamePatternParameters" + /** How this rule will appear to users. */ + name?: Maybe + /** If true, the rule will fail if the pattern matches. */ + negate: Scalars["Boolean"]["output"] + /** The operator to use for matching. */ + operator: Scalars["String"]["output"] + /** The pattern to match with. */ + pattern: Scalars["String"]["output"] +} + +/** Parameters to be used for the branch_name_pattern rule */ +export type BranchNamePatternParametersInput = { + /** How this rule will appear to users. */ + name?: InputMaybe + /** If true, the rule will fail if the pattern matches. */ + negate?: InputMaybe + /** The operator to use for matching. */ + operator: Scalars["String"]["input"] + /** The pattern to match with. */ + pattern: Scalars["String"]["input"] +} + +/** A branch protection rule. */ +export type BranchProtectionRule = Node & { + __typename?: "BranchProtectionRule" + /** Can this branch be deleted. */ + allowsDeletions: Scalars["Boolean"]["output"] + /** Are force pushes allowed on this branch. */ + allowsForcePushes: Scalars["Boolean"]["output"] + /** Is branch creation a protected operation. */ + blocksCreations: Scalars["Boolean"]["output"] + /** A list of conflicts matching branches protection rule and other branch protection rules */ + branchProtectionRuleConflicts: BranchProtectionRuleConflictConnection + /** A list of actors able to force push for this branch protection rule. */ + bypassForcePushAllowances: BypassForcePushAllowanceConnection + /** A list of actors able to bypass PRs for this branch protection rule. */ + bypassPullRequestAllowances: BypassPullRequestAllowanceConnection + /** The actor who created this branch protection rule. */ + creator?: Maybe + /** Identifies the primary key from the database. */ + databaseId?: Maybe + /** Will new commits pushed to matching branches dismiss pull request review approvals. */ + dismissesStaleReviews: Scalars["Boolean"]["output"] + /** The Node ID of the BranchProtectionRule object */ + id: Scalars["ID"]["output"] + /** Can admins override branch protection. */ + isAdminEnforced: Scalars["Boolean"]["output"] + /** Whether users can pull changes from upstream when the branch is locked. Set to `true` to allow fork syncing. Set to `false` to prevent fork syncing. */ + lockAllowsFetchAndMerge: Scalars["Boolean"]["output"] + /** Whether to set the branch as read-only. If this is true, users will not be able to push to the branch. */ + lockBranch: Scalars["Boolean"]["output"] + /** Repository refs that are protected by this rule */ + matchingRefs: RefConnection + /** Identifies the protection rule pattern. */ + pattern: Scalars["String"]["output"] + /** A list push allowances for this branch protection rule. */ + pushAllowances: PushAllowanceConnection + /** The repository associated with this branch protection rule. */ + repository?: Maybe + /** Whether the most recent push must be approved by someone other than the person who pushed it */ + requireLastPushApproval: Scalars["Boolean"]["output"] + /** Number of approving reviews required to update matching branches. */ + requiredApprovingReviewCount?: Maybe + /** List of required deployment environments that must be deployed successfully to update matching branches */ + requiredDeploymentEnvironments?: Maybe< + Array> + > + /** List of required status check contexts that must pass for commits to be accepted to matching branches. */ + requiredStatusCheckContexts?: Maybe>> + /** List of required status checks that must pass for commits to be accepted to matching branches. */ + requiredStatusChecks?: Maybe> + /** Are approving reviews required to update matching branches. */ + requiresApprovingReviews: Scalars["Boolean"]["output"] + /** Are reviews from code owners required to update matching branches. */ + requiresCodeOwnerReviews: Scalars["Boolean"]["output"] + /** Are commits required to be signed. */ + requiresCommitSignatures: Scalars["Boolean"]["output"] + /** Are conversations required to be resolved before merging. */ + requiresConversationResolution: Scalars["Boolean"]["output"] + /** Does this branch require deployment to specific environments before merging */ + requiresDeployments: Scalars["Boolean"]["output"] + /** Are merge commits prohibited from being pushed to this branch. */ + requiresLinearHistory: Scalars["Boolean"]["output"] + /** Are status checks required to update matching branches. */ + requiresStatusChecks: Scalars["Boolean"]["output"] + /** Are branches required to be up to date before merging. */ + requiresStrictStatusChecks: Scalars["Boolean"]["output"] + /** Is pushing to matching branches restricted. */ + restrictsPushes: Scalars["Boolean"]["output"] + /** Is dismissal of pull request reviews restricted. */ + restrictsReviewDismissals: Scalars["Boolean"]["output"] + /** A list review dismissal allowances for this branch protection rule. */ + reviewDismissalAllowances: ReviewDismissalAllowanceConnection +} + +/** A branch protection rule. */ +export type BranchProtectionRuleBranchProtectionRuleConflictsArgs = { + after?: InputMaybe + before?: InputMaybe + first?: InputMaybe + last?: InputMaybe +} + +/** A branch protection rule. */ +export type BranchProtectionRuleBypassForcePushAllowancesArgs = { + after?: InputMaybe + before?: InputMaybe + first?: InputMaybe + last?: InputMaybe +} + +/** A branch protection rule. */ +export type BranchProtectionRuleBypassPullRequestAllowancesArgs = { + after?: InputMaybe + before?: InputMaybe + first?: InputMaybe + last?: InputMaybe +} + +/** A branch protection rule. */ +export type BranchProtectionRuleMatchingRefsArgs = { + after?: InputMaybe + before?: InputMaybe + first?: InputMaybe + last?: InputMaybe + query?: InputMaybe +} + +/** A branch protection rule. */ +export type BranchProtectionRulePushAllowancesArgs = { + after?: InputMaybe + before?: InputMaybe + first?: InputMaybe + last?: InputMaybe +} + +/** A branch protection rule. */ +export type BranchProtectionRuleReviewDismissalAllowancesArgs = { + after?: InputMaybe + before?: InputMaybe + first?: InputMaybe + last?: InputMaybe +} + +/** A conflict between two branch protection rules. */ +export type BranchProtectionRuleConflict = { + __typename?: "BranchProtectionRuleConflict" + /** Identifies the branch protection rule. */ + branchProtectionRule?: Maybe + /** Identifies the conflicting branch protection rule. */ + conflictingBranchProtectionRule?: Maybe + /** Identifies the branch ref that has conflicting rules */ + ref?: Maybe +} + +/** The connection type for BranchProtectionRuleConflict. */ +export type BranchProtectionRuleConflictConnection = { + __typename?: "BranchProtectionRuleConflictConnection" + /** A list of edges. */ + edges?: Maybe>> + /** A list of nodes. */ + nodes?: Maybe>> + /** Information to aid in pagination. */ + pageInfo: PageInfo + /** Identifies the total count of items in the connection. */ + totalCount: Scalars["Int"]["output"] +} + +/** An edge in a connection. */ +export type BranchProtectionRuleConflictEdge = { + __typename?: "BranchProtectionRuleConflictEdge" + /** A cursor for use in pagination. */ + cursor: Scalars["String"]["output"] + /** The item at the end of the edge. */ + node?: Maybe +} + +/** The connection type for BranchProtectionRule. */ +export type BranchProtectionRuleConnection = { + __typename?: "BranchProtectionRuleConnection" + /** A list of edges. */ + edges?: Maybe>> + /** A list of nodes. */ + nodes?: Maybe>> + /** Information to aid in pagination. */ + pageInfo: PageInfo + /** Identifies the total count of items in the connection. */ + totalCount: Scalars["Int"]["output"] +} + +/** An edge in a connection. */ +export type BranchProtectionRuleEdge = { + __typename?: "BranchProtectionRuleEdge" + /** A cursor for use in pagination. */ + cursor: Scalars["String"]["output"] + /** The item at the end of the edge. */ + node?: Maybe +} + +/** Information about a sponsorship to make for a user or organization with a GitHub Sponsors profile, as part of sponsoring many users or organizations at once. */ +export type BulkSponsorship = { + /** The amount to pay to the sponsorable in US dollars. Valid values: 1-12000. */ + amount: Scalars["Int"]["input"] + /** The ID of the user or organization who is receiving the sponsorship. Required if sponsorableLogin is not given. */ + sponsorableId?: InputMaybe + /** The username of the user or organization who is receiving the sponsorship. Required if sponsorableId is not given. */ + sponsorableLogin?: InputMaybe +} + +/** Types that can represent a repository ruleset bypass actor. */ +export type BypassActor = App | Team + +/** A user, team, or app who has the ability to bypass a force push requirement on a protected branch. */ +export type BypassForcePushAllowance = Node & { + __typename?: "BypassForcePushAllowance" + /** The actor that can force push. */ + actor?: Maybe + /** Identifies the branch protection rule associated with the allowed user, team, or app. */ + branchProtectionRule?: Maybe + /** The Node ID of the BypassForcePushAllowance object */ + id: Scalars["ID"]["output"] +} + +/** The connection type for BypassForcePushAllowance. */ +export type BypassForcePushAllowanceConnection = { + __typename?: "BypassForcePushAllowanceConnection" + /** A list of edges. */ + edges?: Maybe>> + /** A list of nodes. */ + nodes?: Maybe>> + /** Information to aid in pagination. */ + pageInfo: PageInfo + /** Identifies the total count of items in the connection. */ + totalCount: Scalars["Int"]["output"] +} + +/** An edge in a connection. */ +export type BypassForcePushAllowanceEdge = { + __typename?: "BypassForcePushAllowanceEdge" + /** A cursor for use in pagination. */ + cursor: Scalars["String"]["output"] + /** The item at the end of the edge. */ + node?: Maybe +} + +/** A user, team, or app who has the ability to bypass a pull request requirement on a protected branch. */ +export type BypassPullRequestAllowance = Node & { + __typename?: "BypassPullRequestAllowance" + /** The actor that can bypass. */ + actor?: Maybe + /** Identifies the branch protection rule associated with the allowed user, team, or app. */ + branchProtectionRule?: Maybe + /** The Node ID of the BypassPullRequestAllowance object */ + id: Scalars["ID"]["output"] +} + +/** The connection type for BypassPullRequestAllowance. */ +export type BypassPullRequestAllowanceConnection = { + __typename?: "BypassPullRequestAllowanceConnection" + /** A list of edges. */ + edges?: Maybe>> + /** A list of nodes. */ + nodes?: Maybe>> + /** Information to aid in pagination. */ + pageInfo: PageInfo + /** Identifies the total count of items in the connection. */ + totalCount: Scalars["Int"]["output"] +} + +/** An edge in a connection. */ +export type BypassPullRequestAllowanceEdge = { + __typename?: "BypassPullRequestAllowanceEdge" + /** A cursor for use in pagination. */ + cursor: Scalars["String"]["output"] + /** The item at the end of the edge. */ + node?: Maybe +} + +/** The Common Vulnerability Scoring System */ +export type Cvss = { + __typename?: "CVSS" + /** The CVSS score associated with this advisory */ + score: Scalars["Float"]["output"] + /** The CVSS vector string associated with this advisory */ + vectorString?: Maybe +} + +/** A common weakness enumeration */ +export type Cwe = Node & { + __typename?: "CWE" + /** The id of the CWE */ + cweId: Scalars["String"]["output"] + /** A detailed description of this CWE */ + description: Scalars["String"]["output"] + /** The Node ID of the CWE object */ + id: Scalars["ID"]["output"] + /** The name of this CWE */ + name: Scalars["String"]["output"] +} + +/** The connection type for CWE. */ +export type CweConnection = { + __typename?: "CWEConnection" + /** A list of edges. */ + edges?: Maybe>> + /** A list of nodes. */ + nodes?: Maybe>> + /** Information to aid in pagination. */ + pageInfo: PageInfo + /** Identifies the total count of items in the connection. */ + totalCount: Scalars["Int"]["output"] +} + +/** An edge in a connection. */ +export type CweEdge = { + __typename?: "CWEEdge" + /** A cursor for use in pagination. */ + cursor: Scalars["String"]["output"] + /** The item at the end of the edge. */ + node?: Maybe +} + +/** Autogenerated input type of CancelEnterpriseAdminInvitation */ +export type CancelEnterpriseAdminInvitationInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The Node ID of the pending enterprise administrator invitation. */ + invitationId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of CancelEnterpriseAdminInvitation. */ +export type CancelEnterpriseAdminInvitationPayload = { + __typename?: "CancelEnterpriseAdminInvitationPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The invitation that was canceled. */ + invitation?: Maybe + /** A message confirming the result of canceling an administrator invitation. */ + message?: Maybe +} + +/** Autogenerated input type of CancelEnterpriseMemberInvitation */ +export type CancelEnterpriseMemberInvitationInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The Node ID of the pending enterprise member invitation. */ + invitationId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of CancelEnterpriseMemberInvitation. */ +export type CancelEnterpriseMemberInvitationPayload = { + __typename?: "CancelEnterpriseMemberInvitationPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The invitation that was canceled. */ + invitation?: Maybe + /** A message confirming the result of canceling an member invitation. */ + message?: Maybe +} + +/** Autogenerated input type of CancelSponsorship */ +export type CancelSponsorshipInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The ID of the user or organization who is acting as the sponsor, paying for the sponsorship. Required if sponsorLogin is not given. */ + sponsorId?: InputMaybe + /** The username of the user or organization who is acting as the sponsor, paying for the sponsorship. Required if sponsorId is not given. */ + sponsorLogin?: InputMaybe + /** The ID of the user or organization who is receiving the sponsorship. Required if sponsorableLogin is not given. */ + sponsorableId?: InputMaybe + /** The username of the user or organization who is receiving the sponsorship. Required if sponsorableId is not given. */ + sponsorableLogin?: InputMaybe +} + +/** Autogenerated return type of CancelSponsorship. */ +export type CancelSponsorshipPayload = { + __typename?: "CancelSponsorshipPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The tier that was being used at the time of cancellation. */ + sponsorsTier?: Maybe +} + +/** Autogenerated input type of ChangeUserStatus */ +export type ChangeUserStatusInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The emoji to represent your status. Can either be a native Unicode emoji or an emoji name with colons, e.g., :grinning:. */ + emoji?: InputMaybe + /** If set, the user status will not be shown after this date. */ + expiresAt?: InputMaybe + /** Whether this status should indicate you are not fully available on GitHub, e.g., you are away. */ + limitedAvailability?: InputMaybe + /** A short description of your current status. */ + message?: InputMaybe + /** The ID of the organization whose members will be allowed to see the status. If omitted, the status will be publicly visible. */ + organizationId?: InputMaybe +} + +/** Autogenerated return type of ChangeUserStatus. */ +export type ChangeUserStatusPayload = { + __typename?: "ChangeUserStatusPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** Your updated status. */ + status?: Maybe +} + +/** A single check annotation. */ +export type CheckAnnotation = { + __typename?: "CheckAnnotation" + /** The annotation's severity level. */ + annotationLevel?: Maybe + /** The path to the file that this annotation was made on. */ + blobUrl: Scalars["URI"]["output"] + /** Identifies the primary key from the database. */ + databaseId?: Maybe + /** The position of this annotation. */ + location: CheckAnnotationSpan + /** The annotation's message. */ + message: Scalars["String"]["output"] + /** The path that this annotation was made on. */ + path: Scalars["String"]["output"] + /** Additional information about the annotation. */ + rawDetails?: Maybe + /** The annotation's title */ + title?: Maybe +} + +/** The connection type for CheckAnnotation. */ +export type CheckAnnotationConnection = { + __typename?: "CheckAnnotationConnection" + /** A list of edges. */ + edges?: Maybe>> + /** A list of nodes. */ + nodes?: Maybe>> + /** Information to aid in pagination. */ + pageInfo: PageInfo + /** Identifies the total count of items in the connection. */ + totalCount: Scalars["Int"]["output"] +} + +/** Information from a check run analysis to specific lines of code. */ +export type CheckAnnotationData = { + /** Represents an annotation's information level */ + annotationLevel: CheckAnnotationLevel + /** The location of the annotation */ + location: CheckAnnotationRange + /** A short description of the feedback for these lines of code. */ + message: Scalars["String"]["input"] + /** The path of the file to add an annotation to. */ + path: Scalars["String"]["input"] + /** Details about this annotation. */ + rawDetails?: InputMaybe + /** The title that represents the annotation. */ + title?: InputMaybe +} + +/** An edge in a connection. */ +export type CheckAnnotationEdge = { + __typename?: "CheckAnnotationEdge" + /** A cursor for use in pagination. */ + cursor: Scalars["String"]["output"] + /** The item at the end of the edge. */ + node?: Maybe +} + +/** Represents an annotation's information level. */ +export type CheckAnnotationLevel = + /** An annotation indicating an inescapable error. */ + | "FAILURE" + /** An annotation indicating some information. */ + | "NOTICE" + /** An annotation indicating an ignorable error. */ + | "WARNING" + +/** A character position in a check annotation. */ +export type CheckAnnotationPosition = { + __typename?: "CheckAnnotationPosition" + /** Column number (1 indexed). */ + column?: Maybe + /** Line number (1 indexed). */ + line: Scalars["Int"]["output"] +} + +/** Information from a check run analysis to specific lines of code. */ +export type CheckAnnotationRange = { + /** The ending column of the range. */ + endColumn?: InputMaybe + /** The ending line of the range. */ + endLine: Scalars["Int"]["input"] + /** The starting column of the range. */ + startColumn?: InputMaybe + /** The starting line of the range. */ + startLine: Scalars["Int"]["input"] +} + +/** An inclusive pair of positions for a check annotation. */ +export type CheckAnnotationSpan = { + __typename?: "CheckAnnotationSpan" + /** End position (inclusive). */ + end: CheckAnnotationPosition + /** Start position (inclusive). */ + start: CheckAnnotationPosition +} + +/** The possible states for a check suite or run conclusion. */ +export type CheckConclusionState = + /** The check suite or run requires action. */ + | "ACTION_REQUIRED" + /** The check suite or run has been cancelled. */ + | "CANCELLED" + /** The check suite or run has failed. */ + | "FAILURE" + /** The check suite or run was neutral. */ + | "NEUTRAL" + /** The check suite or run was skipped. */ + | "SKIPPED" + /** The check suite or run was marked stale by GitHub. Only GitHub can use this conclusion. */ + | "STALE" + /** The check suite or run has failed at startup. */ + | "STARTUP_FAILURE" + /** The check suite or run has succeeded. */ + | "SUCCESS" + /** The check suite or run has timed out. */ + | "TIMED_OUT" + +/** A check run. */ +export type CheckRun = Node & + RequirableByPullRequest & + UniformResourceLocatable & { + __typename?: "CheckRun" + /** The check run's annotations */ + annotations?: Maybe + /** The check suite that this run is a part of. */ + checkSuite: CheckSuite + /** Identifies the date and time when the check run was completed. */ + completedAt?: Maybe + /** The conclusion of the check run. */ + conclusion?: Maybe + /** Identifies the primary key from the database. */ + databaseId?: Maybe + /** The corresponding deployment for this job, if any */ + deployment?: Maybe + /** The URL from which to find full details of the check run on the integrator's site. */ + detailsUrl?: Maybe + /** A reference for the check run on the integrator's system. */ + externalId?: Maybe + /** The Node ID of the CheckRun object */ + id: Scalars["ID"]["output"] + /** Whether this is required to pass before merging for a specific pull request. */ + isRequired: Scalars["Boolean"]["output"] + /** The name of the check for this check run. */ + name: Scalars["String"]["output"] + /** Information about a pending deployment, if any, in this check run */ + pendingDeploymentRequest?: Maybe + /** The permalink to the check run summary. */ + permalink: Scalars["URI"]["output"] + /** The repository associated with this check run. */ + repository: Repository + /** The HTTP path for this check run. */ + resourcePath: Scalars["URI"]["output"] + /** Identifies the date and time when the check run was started. */ + startedAt?: Maybe + /** The current status of the check run. */ + status: CheckStatusState + /** The check run's steps */ + steps?: Maybe + /** A string representing the check run's summary */ + summary?: Maybe + /** A string representing the check run's text */ + text?: Maybe + /** A string representing the check run */ + title?: Maybe + /** The HTTP URL for this check run. */ + url: Scalars["URI"]["output"] + } + +/** A check run. */ +export type CheckRunAnnotationsArgs = { + after?: InputMaybe + before?: InputMaybe + first?: InputMaybe + last?: InputMaybe +} + +/** A check run. */ +export type CheckRunIsRequiredArgs = { + pullRequestId?: InputMaybe + pullRequestNumber?: InputMaybe +} + +/** A check run. */ +export type CheckRunStepsArgs = { + after?: InputMaybe + before?: InputMaybe + first?: InputMaybe + last?: InputMaybe + number?: InputMaybe +} + +/** Possible further actions the integrator can perform. */ +export type CheckRunAction = { + /** A short explanation of what this action would do. */ + description: Scalars["String"]["input"] + /** A reference for the action on the integrator's system. */ + identifier: Scalars["String"]["input"] + /** The text to be displayed on a button in the web UI. */ + label: Scalars["String"]["input"] +} + +/** The connection type for CheckRun. */ +export type CheckRunConnection = { + __typename?: "CheckRunConnection" + /** A list of edges. */ + edges?: Maybe>> + /** A list of nodes. */ + nodes?: Maybe>> + /** Information to aid in pagination. */ + pageInfo: PageInfo + /** Identifies the total count of items in the connection. */ + totalCount: Scalars["Int"]["output"] +} + +/** An edge in a connection. */ +export type CheckRunEdge = { + __typename?: "CheckRunEdge" + /** A cursor for use in pagination. */ + cursor: Scalars["String"]["output"] + /** The item at the end of the edge. */ + node?: Maybe +} + +/** The filters that are available when fetching check runs. */ +export type CheckRunFilter = { + /** Filters the check runs created by this application ID. */ + appId?: InputMaybe + /** Filters the check runs by this name. */ + checkName?: InputMaybe + /** Filters the check runs by this type. */ + checkType?: InputMaybe + /** Filters the check runs by these conclusions. */ + conclusions?: InputMaybe> + /** Filters the check runs by this status. Superceded by statuses. */ + status?: InputMaybe + /** Filters the check runs by this status. Overrides status. */ + statuses?: InputMaybe> +} + +/** Descriptive details about the check run. */ +export type CheckRunOutput = { + /** The annotations that are made as part of the check run. */ + annotations?: InputMaybe> + /** Images attached to the check run output displayed in the GitHub pull request UI. */ + images?: InputMaybe> + /** The summary of the check run (supports Commonmark). */ + summary: Scalars["String"]["input"] + /** The details of the check run (supports Commonmark). */ + text?: InputMaybe + /** A title to provide for this check run. */ + title: Scalars["String"]["input"] +} + +/** Images attached to the check run output displayed in the GitHub pull request UI. */ +export type CheckRunOutputImage = { + /** The alternative text for the image. */ + alt: Scalars["String"]["input"] + /** A short image description. */ + caption?: InputMaybe + /** The full URL of the image. */ + imageUrl: Scalars["URI"]["input"] +} + +/** The possible states of a check run in a status rollup. */ +export type CheckRunState = + /** The check run requires action. */ + | "ACTION_REQUIRED" + /** The check run has been cancelled. */ + | "CANCELLED" + /** The check run has been completed. */ + | "COMPLETED" + /** The check run has failed. */ + | "FAILURE" + /** The check run is in progress. */ + | "IN_PROGRESS" + /** The check run was neutral. */ + | "NEUTRAL" + /** The check run is in pending state. */ + | "PENDING" + /** The check run has been queued. */ + | "QUEUED" + /** The check run was skipped. */ + | "SKIPPED" + /** The check run was marked stale by GitHub. Only GitHub can use this conclusion. */ + | "STALE" + /** The check run has failed at startup. */ + | "STARTUP_FAILURE" + /** The check run has succeeded. */ + | "SUCCESS" + /** The check run has timed out. */ + | "TIMED_OUT" + /** The check run is in waiting state. */ + | "WAITING" + +/** Represents a count of the state of a check run. */ +export type CheckRunStateCount = { + __typename?: "CheckRunStateCount" + /** The number of check runs with this state. */ + count: Scalars["Int"]["output"] + /** The state of a check run. */ + state: CheckRunState +} + +/** The possible types of check runs. */ +export type CheckRunType = + /** Every check run available. */ + | "ALL" + /** The latest check run. */ + | "LATEST" + +/** The possible states for a check suite or run status. */ +export type CheckStatusState = + /** The check suite or run has been completed. */ + | "COMPLETED" + /** The check suite or run is in progress. */ + | "IN_PROGRESS" + /** The check suite or run is in pending state. */ + | "PENDING" + /** The check suite or run has been queued. */ + | "QUEUED" + /** The check suite or run has been requested. */ + | "REQUESTED" + /** The check suite or run is in waiting state. */ + | "WAITING" + +/** A single check step. */ +export type CheckStep = { + __typename?: "CheckStep" + /** Identifies the date and time when the check step was completed. */ + completedAt?: Maybe + /** The conclusion of the check step. */ + conclusion?: Maybe + /** A reference for the check step on the integrator's system. */ + externalId?: Maybe + /** The step's name. */ + name: Scalars["String"]["output"] + /** The index of the step in the list of steps of the parent check run. */ + number: Scalars["Int"]["output"] + /** Number of seconds to completion. */ + secondsToCompletion?: Maybe + /** Identifies the date and time when the check step was started. */ + startedAt?: Maybe + /** The current status of the check step. */ + status: CheckStatusState +} + +/** The connection type for CheckStep. */ +export type CheckStepConnection = { + __typename?: "CheckStepConnection" + /** A list of edges. */ + edges?: Maybe>> + /** A list of nodes. */ + nodes?: Maybe>> + /** Information to aid in pagination. */ + pageInfo: PageInfo + /** Identifies the total count of items in the connection. */ + totalCount: Scalars["Int"]["output"] +} + +/** An edge in a connection. */ +export type CheckStepEdge = { + __typename?: "CheckStepEdge" + /** A cursor for use in pagination. */ + cursor: Scalars["String"]["output"] + /** The item at the end of the edge. */ + node?: Maybe +} + +/** A check suite. */ +export type CheckSuite = Node & { + __typename?: "CheckSuite" + /** The GitHub App which created this check suite. */ + app?: Maybe + /** The name of the branch for this check suite. */ + branch?: Maybe + /** The check runs associated with a check suite. */ + checkRuns?: Maybe + /** The commit for this check suite */ + commit: Commit + /** The conclusion of this check suite. */ + conclusion?: Maybe + /** Identifies the date and time when the object was created. */ + createdAt: Scalars["DateTime"]["output"] + /** The user who triggered the check suite. */ + creator?: Maybe + /** Identifies the primary key from the database. */ + databaseId?: Maybe + /** The Node ID of the CheckSuite object */ + id: Scalars["ID"]["output"] + /** A list of open pull requests matching the check suite. */ + matchingPullRequests?: Maybe + /** The push that triggered this check suite. */ + push?: Maybe + /** The repository associated with this check suite. */ + repository: Repository + /** The HTTP path for this check suite */ + resourcePath: Scalars["URI"]["output"] + /** The status of this check suite. */ + status: CheckStatusState + /** Identifies the date and time when the object was last updated. */ + updatedAt: Scalars["DateTime"]["output"] + /** The HTTP URL for this check suite */ + url: Scalars["URI"]["output"] + /** The workflow run associated with this check suite. */ + workflowRun?: Maybe +} + +/** A check suite. */ +export type CheckSuiteCheckRunsArgs = { + after?: InputMaybe + before?: InputMaybe + filterBy?: InputMaybe + first?: InputMaybe + last?: InputMaybe +} + +/** A check suite. */ +export type CheckSuiteMatchingPullRequestsArgs = { + after?: InputMaybe + baseRefName?: InputMaybe + before?: InputMaybe + first?: InputMaybe + headRefName?: InputMaybe + labels?: InputMaybe> + last?: InputMaybe + orderBy?: InputMaybe + states?: InputMaybe> +} + +/** The auto-trigger preferences that are available for check suites. */ +export type CheckSuiteAutoTriggerPreference = { + /** The node ID of the application that owns the check suite. */ + appId: Scalars["ID"]["input"] + /** Set to `true` to enable automatic creation of CheckSuite events upon pushes to the repository. */ + setting: Scalars["Boolean"]["input"] +} + +/** The connection type for CheckSuite. */ +export type CheckSuiteConnection = { + __typename?: "CheckSuiteConnection" + /** A list of edges. */ + edges?: Maybe>> + /** A list of nodes. */ + nodes?: Maybe>> + /** Information to aid in pagination. */ + pageInfo: PageInfo + /** Identifies the total count of items in the connection. */ + totalCount: Scalars["Int"]["output"] +} + +/** An edge in a connection. */ +export type CheckSuiteEdge = { + __typename?: "CheckSuiteEdge" + /** A cursor for use in pagination. */ + cursor: Scalars["String"]["output"] + /** The item at the end of the edge. */ + node?: Maybe +} + +/** The filters that are available when fetching check suites. */ +export type CheckSuiteFilter = { + /** Filters the check suites created by this application ID. */ + appId?: InputMaybe + /** Filters the check suites by this name. */ + checkName?: InputMaybe +} + +/** An object which can have its data claimed or claim data from another. */ +export type Claimable = Mannequin | User + +/** Autogenerated input type of ClearLabelsFromLabelable */ +export type ClearLabelsFromLabelableInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The id of the labelable object to clear the labels from. */ + labelableId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of ClearLabelsFromLabelable. */ +export type ClearLabelsFromLabelablePayload = { + __typename?: "ClearLabelsFromLabelablePayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The item that was unlabeled. */ + labelable?: Maybe +} + +/** Autogenerated input type of ClearProjectV2ItemFieldValue */ +export type ClearProjectV2ItemFieldValueInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The ID of the field to be cleared. */ + fieldId: Scalars["ID"]["input"] + /** The ID of the item to be cleared. */ + itemId: Scalars["ID"]["input"] + /** The ID of the Project. */ + projectId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of ClearProjectV2ItemFieldValue. */ +export type ClearProjectV2ItemFieldValuePayload = { + __typename?: "ClearProjectV2ItemFieldValuePayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The updated item. */ + projectV2Item?: Maybe +} + +/** Autogenerated input type of CloneProject */ +export type CloneProjectInput = { + /** The description of the project. */ + body?: InputMaybe + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** Whether or not to clone the source project's workflows. */ + includeWorkflows: Scalars["Boolean"]["input"] + /** The name of the project. */ + name: Scalars["String"]["input"] + /** The visibility of the project, defaults to false (private). */ + public?: InputMaybe + /** The source project to clone. */ + sourceId: Scalars["ID"]["input"] + /** The owner ID to create the project under. */ + targetOwnerId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of CloneProject. */ +export type CloneProjectPayload = { + __typename?: "CloneProjectPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The id of the JobStatus for populating cloned fields. */ + jobStatusId?: Maybe + /** The new cloned project. */ + project?: Maybe +} + +/** Autogenerated input type of CloneTemplateRepository */ +export type CloneTemplateRepositoryInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** A short description of the new repository. */ + description?: InputMaybe + /** Whether to copy all branches from the template to the new repository. Defaults to copying only the default branch of the template. */ + includeAllBranches?: InputMaybe + /** The name of the new repository. */ + name: Scalars["String"]["input"] + /** The ID of the owner for the new repository. */ + ownerId: Scalars["ID"]["input"] + /** The Node ID of the template repository. */ + repositoryId: Scalars["ID"]["input"] + /** Indicates the repository's visibility level. */ + visibility: RepositoryVisibility +} + +/** Autogenerated return type of CloneTemplateRepository. */ +export type CloneTemplateRepositoryPayload = { + __typename?: "CloneTemplateRepositoryPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The new repository. */ + repository?: Maybe +} + +/** An object that can be closed */ +export type Closable = { + /** Indicates if the object is closed (definition of closed may depend on type) */ + closed: Scalars["Boolean"]["output"] + /** Identifies the date and time when the object was closed. */ + closedAt?: Maybe + /** Indicates if the object can be closed by the viewer. */ + viewerCanClose: Scalars["Boolean"]["output"] + /** Indicates if the object can be reopened by the viewer. */ + viewerCanReopen: Scalars["Boolean"]["output"] +} + +/** Autogenerated input type of CloseDiscussion */ +export type CloseDiscussionInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** ID of the discussion to be closed. */ + discussionId: Scalars["ID"]["input"] + /** The reason why the discussion is being closed. */ + reason?: InputMaybe +} + +/** Autogenerated return type of CloseDiscussion. */ +export type CloseDiscussionPayload = { + __typename?: "CloseDiscussionPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The discussion that was closed. */ + discussion?: Maybe +} + +/** Autogenerated input type of CloseIssue */ +export type CloseIssueInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** ID of the issue that this is a duplicate of. */ + duplicateIssueId?: InputMaybe + /** ID of the issue to be closed. */ + issueId: Scalars["ID"]["input"] + /** The reason the issue is to be closed. */ + stateReason?: InputMaybe +} + +/** Autogenerated return type of CloseIssue. */ +export type CloseIssuePayload = { + __typename?: "CloseIssuePayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The issue that was closed. */ + issue?: Maybe +} + +/** Autogenerated input type of ClosePullRequest */ +export type ClosePullRequestInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** ID of the pull request to be closed. */ + pullRequestId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of ClosePullRequest. */ +export type ClosePullRequestPayload = { + __typename?: "ClosePullRequestPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The pull request that was closed. */ + pullRequest?: Maybe +} + +/** Represents a 'closed' event on any `Closable`. */ +export type ClosedEvent = Node & + UniformResourceLocatable & { + __typename?: "ClosedEvent" + /** Identifies the actor who performed the event. */ + actor?: Maybe + /** Object that was closed. */ + closable: Closable + /** Object which triggered the creation of this event. */ + closer?: Maybe + /** Identifies the date and time when the object was created. */ + createdAt: Scalars["DateTime"]["output"] + /** The issue or pull request that this issue was marked as a duplicate of. */ + duplicateOf?: Maybe + /** The Node ID of the ClosedEvent object */ + id: Scalars["ID"]["output"] + /** The HTTP path for this closed event. */ + resourcePath: Scalars["URI"]["output"] + /** The reason the issue state was changed to closed. */ + stateReason?: Maybe + /** The HTTP URL for this closed event. */ + url: Scalars["URI"]["output"] + } + +/** The object which triggered a `ClosedEvent`. */ +export type Closer = Commit | ProjectV2 | PullRequest + +/** The Code of Conduct for a repository */ +export type CodeOfConduct = Node & { + __typename?: "CodeOfConduct" + /** The body of the Code of Conduct */ + body?: Maybe + /** The Node ID of the CodeOfConduct object */ + id: Scalars["ID"]["output"] + /** The key for the Code of Conduct */ + key: Scalars["String"]["output"] + /** The formal name of the Code of Conduct */ + name: Scalars["String"]["output"] + /** The HTTP path for this Code of Conduct */ + resourcePath?: Maybe + /** The HTTP URL for this Code of Conduct */ + url?: Maybe +} + +/** Choose which tools must provide code scanning results before the reference is updated. When configured, code scanning must be enabled and have results for both the commit and the reference being updated. */ +export type CodeScanningParameters = { + __typename?: "CodeScanningParameters" + /** Tools that must provide code scanning results for this rule to pass. */ + codeScanningTools: Array +} + +/** Choose which tools must provide code scanning results before the reference is updated. When configured, code scanning must be enabled and have results for both the commit and the reference being updated. */ +export type CodeScanningParametersInput = { + /** Tools that must provide code scanning results for this rule to pass. */ + codeScanningTools: Array +} + +/** A tool that must provide code scanning results for this rule to pass. */ +export type CodeScanningTool = { + __typename?: "CodeScanningTool" + /** The severity level at which code scanning results that raise alerts block a reference update. For more information on alert severity levels, see "[About code scanning alerts](${externalDocsUrl}/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels)." */ + alertsThreshold: Scalars["String"]["output"] + /** The severity level at which code scanning results that raise security alerts block a reference update. For more information on security severity levels, see "[About code scanning alerts](${externalDocsUrl}/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels)." */ + securityAlertsThreshold: Scalars["String"]["output"] + /** The name of a code scanning tool */ + tool: Scalars["String"]["output"] +} + +/** A tool that must provide code scanning results for this rule to pass. */ +export type CodeScanningToolInput = { + /** The severity level at which code scanning results that raise alerts block a reference update. For more information on alert severity levels, see "[About code scanning alerts](${externalDocsUrl}/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels)." */ + alertsThreshold: Scalars["String"]["input"] + /** The severity level at which code scanning results that raise security alerts block a reference update. For more information on security severity levels, see "[About code scanning alerts](${externalDocsUrl}/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels)." */ + securityAlertsThreshold: Scalars["String"]["input"] + /** The name of a code scanning tool */ + tool: Scalars["String"]["input"] +} + +/** Collaborators affiliation level with a subject. */ +export type CollaboratorAffiliation = + /** All collaborators the authenticated user can see. */ + | "ALL" + /** All collaborators with permissions to an organization-owned subject, regardless of organization membership status. */ + | "DIRECT" + /** All outside collaborators of an organization-owned subject. */ + | "OUTSIDE" + +/** Represents a comment. */ +export type Comment = { + /** The actor who authored the comment. */ + author?: Maybe + /** Author's association with the subject of the comment. */ + authorAssociation: CommentAuthorAssociation + /** The body as Markdown. */ + body: Scalars["String"]["output"] + /** The body rendered to HTML. */ + bodyHTML: Scalars["HTML"]["output"] + /** The body rendered to text. */ + bodyText: Scalars["String"]["output"] + /** Identifies the date and time when the object was created. */ + createdAt: Scalars["DateTime"]["output"] + /** Check if this comment was created via an email reply. */ + createdViaEmail: Scalars["Boolean"]["output"] + /** The actor who edited the comment. */ + editor?: Maybe + /** The Node ID of the Comment object */ + id: Scalars["ID"]["output"] + /** Check if this comment was edited and includes an edit with the creation data */ + includesCreatedEdit: Scalars["Boolean"]["output"] + /** The moment the editor made the last edit */ + lastEditedAt?: Maybe + /** Identifies when the comment was published at. */ + publishedAt?: Maybe + /** Identifies the date and time when the object was last updated. */ + updatedAt: Scalars["DateTime"]["output"] + /** A list of edits to this content. */ + userContentEdits?: Maybe + /** Did the viewer author this comment. */ + viewerDidAuthor: Scalars["Boolean"]["output"] +} + +/** Represents a comment. */ +export type CommentUserContentEditsArgs = { + after?: InputMaybe + before?: InputMaybe + first?: InputMaybe + last?: InputMaybe +} + +/** A comment author association with repository. */ +export type CommentAuthorAssociation = + /** Author has been invited to collaborate on the repository. */ + | "COLLABORATOR" + /** Author has previously committed to the repository. */ + | "CONTRIBUTOR" + /** Author has not previously committed to GitHub. */ + | "FIRST_TIMER" + /** Author has not previously committed to the repository. */ + | "FIRST_TIME_CONTRIBUTOR" + /** Author is a placeholder for an unclaimed user. */ + | "MANNEQUIN" + /** Author is a member of the organization that owns the repository. */ + | "MEMBER" + /** Author has no association with the repository. */ + | "NONE" + /** Author is the owner of the repository. */ + | "OWNER" + +/** The possible errors that will prevent a user from updating a comment. */ +export type CommentCannotUpdateReason = + /** Unable to create comment because repository is archived. */ + | "ARCHIVED" + /** You cannot update this comment */ + | "DENIED" + /** You must be the author or have write access to this repository to update this comment. */ + | "INSUFFICIENT_ACCESS" + /** Unable to create comment because issue is locked. */ + | "LOCKED" + /** You must be logged in to update this comment. */ + | "LOGIN_REQUIRED" + /** Repository is under maintenance. */ + | "MAINTENANCE" + /** At least one email address must be verified to update this comment. */ + | "VERIFIED_EMAIL_REQUIRED" + +/** Represents a 'comment_deleted' event on a given issue or pull request. */ +export type CommentDeletedEvent = Node & { + __typename?: "CommentDeletedEvent" + /** Identifies the actor who performed the event. */ + actor?: Maybe + /** Identifies the date and time when the object was created. */ + createdAt: Scalars["DateTime"]["output"] + /** Identifies the primary key from the database. */ + databaseId?: Maybe + /** The user who authored the deleted comment. */ + deletedCommentAuthor?: Maybe + /** The Node ID of the CommentDeletedEvent object */ + id: Scalars["ID"]["output"] +} + +/** Represents a Git commit. */ +export type Commit = GitObject & + Node & + Subscribable & + UniformResourceLocatable & { + __typename?: "Commit" + /** An abbreviated version of the Git object ID */ + abbreviatedOid: Scalars["String"]["output"] + /** The number of additions in this commit. */ + additions: Scalars["Int"]["output"] + /** The merged Pull Request that introduced the commit to the repository. If the commit is not present in the default branch, additionally returns open Pull Requests associated with the commit */ + associatedPullRequests?: Maybe + /** Authorship details of the commit. */ + author?: Maybe + /** Check if the committer and the author match. */ + authoredByCommitter: Scalars["Boolean"]["output"] + /** The datetime when this commit was authored. */ + authoredDate: Scalars["DateTime"]["output"] + /** + * The list of authors for this commit based on the git author and the Co-authored-by + * message trailer. The git author will always be first. + * + */ + authors: GitActorConnection + /** Fetches `git blame` information. */ + blame: Blame + /** + * We recommend using the `changedFilesIfAvailable` field instead of `changedFiles`, as `changedFiles` will cause your request to return an error if GitHub is unable to calculate the number of changed files. + * @deprecated `changedFiles` will be removed. Use `changedFilesIfAvailable` instead. Removal on 2023-01-01 UTC. + */ + changedFiles: Scalars["Int"]["output"] + /** The number of changed files in this commit. If GitHub is unable to calculate the number of changed files (for example due to a timeout), this will return `null`. We recommend using this field instead of `changedFiles`. */ + changedFilesIfAvailable?: Maybe + /** The check suites associated with a commit. */ + checkSuites?: Maybe + /** Comments made on the commit. */ + comments: CommitCommentConnection + /** The HTTP path for this Git object */ + commitResourcePath: Scalars["URI"]["output"] + /** The HTTP URL for this Git object */ + commitUrl: Scalars["URI"]["output"] + /** The datetime when this commit was committed. */ + committedDate: Scalars["DateTime"]["output"] + /** Check if committed via GitHub web UI. */ + committedViaWeb: Scalars["Boolean"]["output"] + /** Committer details of the commit. */ + committer?: Maybe + /** The number of deletions in this commit. */ + deletions: Scalars["Int"]["output"] + /** The deployments associated with a commit. */ + deployments?: Maybe + /** The tree entry representing the file located at the given path. */ + file?: Maybe + /** The linear commit history starting from (and including) this commit, in the same order as `git log`. */ + history: CommitHistoryConnection + /** The Node ID of the Commit object */ + id: Scalars["ID"]["output"] + /** The Git commit message */ + message: Scalars["String"]["output"] + /** The Git commit message body */ + messageBody: Scalars["String"]["output"] + /** The commit message body rendered to HTML. */ + messageBodyHTML: Scalars["HTML"]["output"] + /** The Git commit message headline */ + messageHeadline: Scalars["String"]["output"] + /** The commit message headline rendered to HTML. */ + messageHeadlineHTML: Scalars["HTML"]["output"] + /** The Git object ID */ + oid: Scalars["GitObjectID"]["output"] + /** The organization this commit was made on behalf of. */ + onBehalfOf?: Maybe + /** The parents of a commit. */ + parents: CommitConnection + /** + * The datetime when this commit was pushed. + * @deprecated `pushedDate` is no longer supported. Removal on 2023-07-01 UTC. + */ + pushedDate?: Maybe + /** The Repository this commit belongs to */ + repository: Repository + /** The HTTP path for this commit */ + resourcePath: Scalars["URI"]["output"] + /** Commit signing information, if present. */ + signature?: Maybe + /** Status information for this commit */ + status?: Maybe + /** Check and Status rollup information for this commit. */ + statusCheckRollup?: Maybe + /** Returns a list of all submodules in this repository as of this Commit parsed from the .gitmodules file. */ + submodules: SubmoduleConnection + /** + * Returns a URL to download a tarball archive for a repository. + * Note: For private repositories, these links are temporary and expire after five minutes. + */ + tarballUrl: Scalars["URI"]["output"] + /** Commit's root Tree */ + tree: Tree + /** The HTTP path for the tree of this commit */ + treeResourcePath: Scalars["URI"]["output"] + /** The HTTP URL for the tree of this commit */ + treeUrl: Scalars["URI"]["output"] + /** The HTTP URL for this commit */ + url: Scalars["URI"]["output"] + /** Check if the viewer is able to change their subscription status for the repository. */ + viewerCanSubscribe: Scalars["Boolean"]["output"] + /** Identifies if the viewer is watching, not watching, or ignoring the subscribable entity. */ + viewerSubscription?: Maybe + /** + * Returns a URL to download a zipball archive for a repository. + * Note: For private repositories, these links are temporary and expire after five minutes. + */ + zipballUrl: Scalars["URI"]["output"] + } + +/** Represents a Git commit. */ +export type CommitAssociatedPullRequestsArgs = { + after?: InputMaybe + before?: InputMaybe + first?: InputMaybe + last?: InputMaybe + orderBy?: InputMaybe +} + +/** Represents a Git commit. */ +export type CommitAuthorsArgs = { + after?: InputMaybe + before?: InputMaybe + first?: InputMaybe + last?: InputMaybe +} + +/** Represents a Git commit. */ +export type CommitBlameArgs = { + path: Scalars["String"]["input"] +} + +/** Represents a Git commit. */ +export type CommitCheckSuitesArgs = { + after?: InputMaybe + before?: InputMaybe + filterBy?: InputMaybe + first?: InputMaybe + last?: InputMaybe +} + +/** Represents a Git commit. */ +export type CommitCommentsArgs = { + after?: InputMaybe + before?: InputMaybe + first?: InputMaybe + last?: InputMaybe +} + +/** Represents a Git commit. */ +export type CommitDeploymentsArgs = { + after?: InputMaybe + before?: InputMaybe + environments?: InputMaybe> + first?: InputMaybe + last?: InputMaybe + orderBy?: InputMaybe +} + +/** Represents a Git commit. */ +export type CommitFileArgs = { + path: Scalars["String"]["input"] +} + +/** Represents a Git commit. */ +export type CommitHistoryArgs = { + after?: InputMaybe + author?: InputMaybe + before?: InputMaybe + first?: InputMaybe + last?: InputMaybe + path?: InputMaybe + since?: InputMaybe + until?: InputMaybe +} + +/** Represents a Git commit. */ +export type CommitParentsArgs = { + after?: InputMaybe + before?: InputMaybe + first?: InputMaybe + last?: InputMaybe +} + +/** Represents a Git commit. */ +export type CommitSubmodulesArgs = { + after?: InputMaybe + before?: InputMaybe + first?: InputMaybe + last?: InputMaybe +} + +/** Specifies an author for filtering Git commits. */ +export type CommitAuthor = { + /** Email addresses to filter by. Commits authored by any of the specified email addresses will be returned. */ + emails?: InputMaybe> + /** ID of a User to filter by. If non-null, only commits authored by this user will be returned. This field takes precedence over emails. */ + id?: InputMaybe +} + +/** Parameters to be used for the commit_author_email_pattern rule */ +export type CommitAuthorEmailPatternParameters = { + __typename?: "CommitAuthorEmailPatternParameters" + /** How this rule will appear to users. */ + name?: Maybe + /** If true, the rule will fail if the pattern matches. */ + negate: Scalars["Boolean"]["output"] + /** The operator to use for matching. */ + operator: Scalars["String"]["output"] + /** The pattern to match with. */ + pattern: Scalars["String"]["output"] +} + +/** Parameters to be used for the commit_author_email_pattern rule */ +export type CommitAuthorEmailPatternParametersInput = { + /** How this rule will appear to users. */ + name?: InputMaybe + /** If true, the rule will fail if the pattern matches. */ + negate?: InputMaybe + /** The operator to use for matching. */ + operator: Scalars["String"]["input"] + /** The pattern to match with. */ + pattern: Scalars["String"]["input"] +} + +/** Represents a comment on a given Commit. */ +export type CommitComment = Comment & + Deletable & + Minimizable & + Node & + Reactable & + RepositoryNode & + Updatable & + UpdatableComment & { + __typename?: "CommitComment" + /** The actor who authored the comment. */ + author?: Maybe + /** Author's association with the subject of the comment. */ + authorAssociation: CommentAuthorAssociation + /** Identifies the comment body. */ + body: Scalars["String"]["output"] + /** The body rendered to HTML. */ + bodyHTML: Scalars["HTML"]["output"] + /** The body rendered to text. */ + bodyText: Scalars["String"]["output"] + /** Identifies the commit associated with the comment, if the commit exists. */ + commit?: Maybe + /** Identifies the date and time when the object was created. */ + createdAt: Scalars["DateTime"]["output"] + /** Check if this comment was created via an email reply. */ + createdViaEmail: Scalars["Boolean"]["output"] + /** Identifies the primary key from the database. */ + databaseId?: Maybe + /** The actor who edited the comment. */ + editor?: Maybe + /** The Node ID of the CommitComment object */ + id: Scalars["ID"]["output"] + /** Check if this comment was edited and includes an edit with the creation data */ + includesCreatedEdit: Scalars["Boolean"]["output"] + /** Returns whether or not a comment has been minimized. */ + isMinimized: Scalars["Boolean"]["output"] + /** The moment the editor made the last edit */ + lastEditedAt?: Maybe + /** Returns why the comment was minimized. One of `abuse`, `off-topic`, `outdated`, `resolved`, `duplicate` and `spam`. Note that the case and formatting of these values differs from the inputs to the `MinimizeComment` mutation. */ + minimizedReason?: Maybe + /** Identifies the file path associated with the comment. */ + path?: Maybe + /** Identifies the line position associated with the comment. */ + position?: Maybe + /** Identifies when the comment was published at. */ + publishedAt?: Maybe + /** A list of reactions grouped by content left on the subject. */ + reactionGroups?: Maybe> + /** A list of Reactions left on the Issue. */ + reactions: ReactionConnection + /** The repository associated with this node. */ + repository: Repository + /** The HTTP path permalink for this commit comment. */ + resourcePath: Scalars["URI"]["output"] + /** Identifies the date and time when the object was last updated. */ + updatedAt: Scalars["DateTime"]["output"] + /** The HTTP URL permalink for this commit comment. */ + url: Scalars["URI"]["output"] + /** A list of edits to this content. */ + userContentEdits?: Maybe + /** Check if the current viewer can delete this object. */ + viewerCanDelete: Scalars["Boolean"]["output"] + /** Check if the current viewer can minimize this object. */ + viewerCanMinimize: Scalars["Boolean"]["output"] + /** Can user react to this subject */ + viewerCanReact: Scalars["Boolean"]["output"] + /** Check if the current viewer can unminimize this object. */ + viewerCanUnminimize: Scalars["Boolean"]["output"] + /** Check if the current viewer can update this object. */ + viewerCanUpdate: Scalars["Boolean"]["output"] + /** Reasons why the current viewer can not update this comment. */ + viewerCannotUpdateReasons: Array + /** Did the viewer author this comment. */ + viewerDidAuthor: Scalars["Boolean"]["output"] + } + +/** Represents a comment on a given Commit. */ +export type CommitCommentReactionsArgs = { + after?: InputMaybe + before?: InputMaybe + content?: InputMaybe + first?: InputMaybe + last?: InputMaybe + orderBy?: InputMaybe +} + +/** Represents a comment on a given Commit. */ +export type CommitCommentUserContentEditsArgs = { + after?: InputMaybe + before?: InputMaybe + first?: InputMaybe + last?: InputMaybe +} + +/** The connection type for CommitComment. */ +export type CommitCommentConnection = { + __typename?: "CommitCommentConnection" + /** A list of edges. */ + edges?: Maybe>> + /** A list of nodes. */ + nodes?: Maybe>> + /** Information to aid in pagination. */ + pageInfo: PageInfo + /** Identifies the total count of items in the connection. */ + totalCount: Scalars["Int"]["output"] +} + +/** An edge in a connection. */ +export type CommitCommentEdge = { + __typename?: "CommitCommentEdge" + /** A cursor for use in pagination. */ + cursor: Scalars["String"]["output"] + /** The item at the end of the edge. */ + node?: Maybe +} + +/** A thread of comments on a commit. */ +export type CommitCommentThread = Node & + RepositoryNode & { + __typename?: "CommitCommentThread" + /** The comments that exist in this thread. */ + comments: CommitCommentConnection + /** The commit the comments were made on. */ + commit?: Maybe + /** The Node ID of the CommitCommentThread object */ + id: Scalars["ID"]["output"] + /** The file the comments were made on. */ + path?: Maybe + /** The position in the diff for the commit that the comment was made on. */ + position?: Maybe + /** The repository associated with this node. */ + repository: Repository + } + +/** A thread of comments on a commit. */ +export type CommitCommentThreadCommentsArgs = { + after?: InputMaybe + before?: InputMaybe + first?: InputMaybe + last?: InputMaybe +} + +/** The connection type for Commit. */ +export type CommitConnection = { + __typename?: "CommitConnection" + /** A list of edges. */ + edges?: Maybe>> + /** A list of nodes. */ + nodes?: Maybe>> + /** Information to aid in pagination. */ + pageInfo: PageInfo + /** Identifies the total count of items in the connection. */ + totalCount: Scalars["Int"]["output"] +} + +/** Ordering options for commit contribution connections. */ +export type CommitContributionOrder = { + /** The ordering direction. */ + direction: OrderDirection + /** The field by which to order commit contributions. */ + field: CommitContributionOrderField +} + +/** Properties by which commit contribution connections can be ordered. */ +export type CommitContributionOrderField = + /** Order commit contributions by how many commits they represent. */ + | "COMMIT_COUNT" + /** Order commit contributions by when they were made. */ + | "OCCURRED_AT" + +/** This aggregates commits made by a user within one repository. */ +export type CommitContributionsByRepository = { + __typename?: "CommitContributionsByRepository" + /** The commit contributions, each representing a day. */ + contributions: CreatedCommitContributionConnection + /** The repository in which the commits were made. */ + repository: Repository + /** The HTTP path for the user's commits to the repository in this time range. */ + resourcePath: Scalars["URI"]["output"] + /** The HTTP URL for the user's commits to the repository in this time range. */ + url: Scalars["URI"]["output"] +} + +/** This aggregates commits made by a user within one repository. */ +export type CommitContributionsByRepositoryContributionsArgs = { + after?: InputMaybe + before?: InputMaybe + first?: InputMaybe + last?: InputMaybe + orderBy?: InputMaybe +} + +/** An edge in a connection. */ +export type CommitEdge = { + __typename?: "CommitEdge" + /** A cursor for use in pagination. */ + cursor: Scalars["String"]["output"] + /** The item at the end of the edge. */ + node?: Maybe +} + +/** The connection type for Commit. */ +export type CommitHistoryConnection = { + __typename?: "CommitHistoryConnection" + /** A list of edges. */ + edges?: Maybe>> + /** A list of nodes. */ + nodes?: Maybe>> + /** Information to aid in pagination. */ + pageInfo: PageInfo + /** Identifies the total count of items in the connection. */ + totalCount: Scalars["Int"]["output"] +} + +/** A message to include with a new commit */ +export type CommitMessage = { + /** The body of the message. */ + body?: InputMaybe + /** The headline of the message. */ + headline: Scalars["String"]["input"] +} + +/** Parameters to be used for the commit_message_pattern rule */ +export type CommitMessagePatternParameters = { + __typename?: "CommitMessagePatternParameters" + /** How this rule will appear to users. */ + name?: Maybe + /** If true, the rule will fail if the pattern matches. */ + negate: Scalars["Boolean"]["output"] + /** The operator to use for matching. */ + operator: Scalars["String"]["output"] + /** The pattern to match with. */ + pattern: Scalars["String"]["output"] +} + +/** Parameters to be used for the commit_message_pattern rule */ +export type CommitMessagePatternParametersInput = { + /** How this rule will appear to users. */ + name?: InputMaybe + /** If true, the rule will fail if the pattern matches. */ + negate?: InputMaybe + /** The operator to use for matching. */ + operator: Scalars["String"]["input"] + /** The pattern to match with. */ + pattern: Scalars["String"]["input"] +} + +/** + * A git ref for a commit to be appended to. + * + * The ref must be a branch, i.e. its fully qualified name must start + * with `refs/heads/` (although the input is not required to be fully + * qualified). + * + * The Ref may be specified by its global node ID or by the + * `repositoryNameWithOwner` and `branchName`. + * + * ### Examples + * + * Specify a branch using a global node ID: + * + * { "id": "MDM6UmVmMTpyZWZzL2hlYWRzL21haW4=" } + * + * Specify a branch using `repositoryNameWithOwner` and `branchName`: + * + * { + * "repositoryNameWithOwner": "github/graphql-client", + * "branchName": "main" + * } + * + * + */ +export type CommittableBranch = { + /** The unqualified name of the branch to append the commit to. */ + branchName?: InputMaybe + /** The Node ID of the Ref to be updated. */ + id?: InputMaybe + /** The nameWithOwner of the repository to commit to. */ + repositoryNameWithOwner?: InputMaybe +} + +/** Parameters to be used for the committer_email_pattern rule */ +export type CommitterEmailPatternParameters = { + __typename?: "CommitterEmailPatternParameters" + /** How this rule will appear to users. */ + name?: Maybe + /** If true, the rule will fail if the pattern matches. */ + negate: Scalars["Boolean"]["output"] + /** The operator to use for matching. */ + operator: Scalars["String"]["output"] + /** The pattern to match with. */ + pattern: Scalars["String"]["output"] +} + +/** Parameters to be used for the committer_email_pattern rule */ +export type CommitterEmailPatternParametersInput = { + /** How this rule will appear to users. */ + name?: InputMaybe + /** If true, the rule will fail if the pattern matches. */ + negate?: InputMaybe + /** The operator to use for matching. */ + operator: Scalars["String"]["input"] + /** The pattern to match with. */ + pattern: Scalars["String"]["input"] +} + +/** Represents a comparison between two commit revisions. */ +export type Comparison = Node & { + __typename?: "Comparison" + /** The number of commits ahead of the base branch. */ + aheadBy: Scalars["Int"]["output"] + /** The base revision of this comparison. */ + baseTarget: GitObject + /** The number of commits behind the base branch. */ + behindBy: Scalars["Int"]["output"] + /** The commits which compose this comparison. */ + commits: ComparisonCommitConnection + /** The head revision of this comparison. */ + headTarget: GitObject + /** The Node ID of the Comparison object */ + id: Scalars["ID"]["output"] + /** The status of this comparison. */ + status: ComparisonStatus +} + +/** Represents a comparison between two commit revisions. */ +export type ComparisonCommitsArgs = { + after?: InputMaybe + before?: InputMaybe + first?: InputMaybe + last?: InputMaybe +} + +/** The connection type for Commit. */ +export type ComparisonCommitConnection = { + __typename?: "ComparisonCommitConnection" + /** The total count of authors and co-authors across all commits. */ + authorCount: Scalars["Int"]["output"] + /** A list of edges. */ + edges?: Maybe>> + /** A list of nodes. */ + nodes?: Maybe>> + /** Information to aid in pagination. */ + pageInfo: PageInfo + /** Identifies the total count of items in the connection. */ + totalCount: Scalars["Int"]["output"] +} + +/** The status of a git comparison between two refs. */ +export type ComparisonStatus = + /** The head ref is ahead of the base ref. */ + | "AHEAD" + /** The head ref is behind the base ref. */ + | "BEHIND" + /** The head ref is both ahead and behind of the base ref, indicating git history has diverged. */ + | "DIVERGED" + /** The head ref and base ref are identical. */ + | "IDENTICAL" + +/** Represents a 'connected' event on a given issue or pull request. */ +export type ConnectedEvent = Node & { + __typename?: "ConnectedEvent" + /** Identifies the actor who performed the event. */ + actor?: Maybe + /** Identifies the date and time when the object was created. */ + createdAt: Scalars["DateTime"]["output"] + /** The Node ID of the ConnectedEvent object */ + id: Scalars["ID"]["output"] + /** Reference originated in a different repository. */ + isCrossRepository: Scalars["Boolean"]["output"] + /** Issue or pull request that made the reference. */ + source: ReferencedSubject + /** Issue or pull request which was connected. */ + subject: ReferencedSubject +} + +/** The Contributing Guidelines for a repository. */ +export type ContributingGuidelines = { + __typename?: "ContributingGuidelines" + /** The body of the Contributing Guidelines. */ + body?: Maybe + /** The HTTP path for the Contributing Guidelines. */ + resourcePath?: Maybe + /** The HTTP URL for the Contributing Guidelines. */ + url?: Maybe +} + +/** Represents a contribution a user made on GitHub, such as opening an issue. */ +export type Contribution = { + /** + * Whether this contribution is associated with a record you do not have access to. For + * example, your own 'first issue' contribution may have been made on a repository you can no + * longer access. + * + */ + isRestricted: Scalars["Boolean"]["output"] + /** When this contribution was made. */ + occurredAt: Scalars["DateTime"]["output"] + /** The HTTP path for this contribution. */ + resourcePath: Scalars["URI"]["output"] + /** The HTTP URL for this contribution. */ + url: Scalars["URI"]["output"] + /** + * The user who made this contribution. + * + */ + user: User +} + +/** A calendar of contributions made on GitHub by a user. */ +export type ContributionCalendar = { + __typename?: "ContributionCalendar" + /** A list of hex color codes used in this calendar. The darker the color, the more contributions it represents. */ + colors: Array + /** Determine if the color set was chosen because it's currently Halloween. */ + isHalloween: Scalars["Boolean"]["output"] + /** A list of the months of contributions in this calendar. */ + months: Array + /** The count of total contributions in the calendar. */ + totalContributions: Scalars["Int"]["output"] + /** A list of the weeks of contributions in this calendar. */ + weeks: Array +} + +/** Represents a single day of contributions on GitHub by a user. */ +export type ContributionCalendarDay = { + __typename?: "ContributionCalendarDay" + /** The hex color code that represents how many contributions were made on this day compared to others in the calendar. */ + color: Scalars["String"]["output"] + /** How many contributions were made by the user on this day. */ + contributionCount: Scalars["Int"]["output"] + /** Indication of contributions, relative to other days. Can be used to indicate which color to represent this day on a calendar. */ + contributionLevel: ContributionLevel + /** The day this square represents. */ + date: Scalars["Date"]["output"] + /** A number representing which day of the week this square represents, e.g., 1 is Monday. */ + weekday: Scalars["Int"]["output"] +} + +/** A month of contributions in a user's contribution graph. */ +export type ContributionCalendarMonth = { + __typename?: "ContributionCalendarMonth" + /** The date of the first day of this month. */ + firstDay: Scalars["Date"]["output"] + /** The name of the month. */ + name: Scalars["String"]["output"] + /** How many weeks started in this month. */ + totalWeeks: Scalars["Int"]["output"] + /** The year the month occurred in. */ + year: Scalars["Int"]["output"] +} + +/** A week of contributions in a user's contribution graph. */ +export type ContributionCalendarWeek = { + __typename?: "ContributionCalendarWeek" + /** The days of contributions in this week. */ + contributionDays: Array + /** The date of the earliest square in this week. */ + firstDay: Scalars["Date"]["output"] +} + +/** Varying levels of contributions from none to many. */ +export type ContributionLevel = + /** Lowest 25% of days of contributions. */ + | "FIRST_QUARTILE" + /** Highest 25% of days of contributions. More contributions than the third quartile. */ + | "FOURTH_QUARTILE" + /** No contributions occurred. */ + | "NONE" + /** Second lowest 25% of days of contributions. More contributions than the first quartile. */ + | "SECOND_QUARTILE" + /** Second highest 25% of days of contributions. More contributions than second quartile, less than the fourth quartile. */ + | "THIRD_QUARTILE" + +/** Ordering options for contribution connections. */ +export type ContributionOrder = { + /** The ordering direction. */ + direction: OrderDirection +} + +/** + * A collection of contributions made by a user, including opened issues, commits, and pull requests. + * Contributions in private and internal repositories are only included with the optional read:user scope. + * + */ +export type ContributionsCollection = { + __typename?: "ContributionsCollection" + /** Commit contributions made by the user, grouped by repository. */ + commitContributionsByRepository: Array + /** A calendar of this user's contributions on GitHub. */ + contributionCalendar: ContributionCalendar + /** The years the user has been making contributions with the most recent year first. */ + contributionYears: Array + /** + * Determine if this collection's time span ends in the current month. + * + */ + doesEndInCurrentMonth: Scalars["Boolean"]["output"] + /** The date of the first restricted contribution the user made in this time period. Can only be non-null when the user has enabled private contribution counts. */ + earliestRestrictedContributionDate?: Maybe + /** The ending date and time of this collection. */ + endedAt: Scalars["DateTime"]["output"] + /** The first issue the user opened on GitHub. This will be null if that issue was opened outside the collection's time range and ignoreTimeRange is false. If the issue is not visible but the user has opted to show private contributions, a RestrictedContribution will be returned. */ + firstIssueContribution?: Maybe + /** The first pull request the user opened on GitHub. This will be null if that pull request was opened outside the collection's time range and ignoreTimeRange is not true. If the pull request is not visible but the user has opted to show private contributions, a RestrictedContribution will be returned. */ + firstPullRequestContribution?: Maybe + /** The first repository the user created on GitHub. This will be null if that first repository was created outside the collection's time range and ignoreTimeRange is false. If the repository is not visible, then a RestrictedContribution is returned. */ + firstRepositoryContribution?: Maybe + /** Does the user have any more activity in the timeline that occurred prior to the collection's time range? */ + hasActivityInThePast: Scalars["Boolean"]["output"] + /** Determine if there are any contributions in this collection. */ + hasAnyContributions: Scalars["Boolean"]["output"] + /** Determine if the user made any contributions in this time frame whose details are not visible because they were made in a private repository. Can only be true if the user enabled private contribution counts. */ + hasAnyRestrictedContributions: Scalars["Boolean"]["output"] + /** Whether or not the collector's time span is all within the same day. */ + isSingleDay: Scalars["Boolean"]["output"] + /** A list of issues the user opened. */ + issueContributions: CreatedIssueContributionConnection + /** Issue contributions made by the user, grouped by repository. */ + issueContributionsByRepository: Array + /** When the user signed up for GitHub. This will be null if that sign up date falls outside the collection's time range and ignoreTimeRange is false. */ + joinedGitHubContribution?: Maybe + /** The date of the most recent restricted contribution the user made in this time period. Can only be non-null when the user has enabled private contribution counts. */ + latestRestrictedContributionDate?: Maybe + /** + * When this collection's time range does not include any activity from the user, use this + * to get a different collection from an earlier time range that does have activity. + * + */ + mostRecentCollectionWithActivity?: Maybe + /** + * Returns a different contributions collection from an earlier time range than this one + * that does not have any contributions. + * + */ + mostRecentCollectionWithoutActivity?: Maybe + /** + * The issue the user opened on GitHub that received the most comments in the specified + * time frame. + * + */ + popularIssueContribution?: Maybe + /** + * The pull request the user opened on GitHub that received the most comments in the + * specified time frame. + * + */ + popularPullRequestContribution?: Maybe + /** Pull request contributions made by the user. */ + pullRequestContributions: CreatedPullRequestContributionConnection + /** Pull request contributions made by the user, grouped by repository. */ + pullRequestContributionsByRepository: Array + /** + * Pull request review contributions made by the user. Returns the most recently + * submitted review for each PR reviewed by the user. + * + */ + pullRequestReviewContributions: CreatedPullRequestReviewContributionConnection + /** Pull request review contributions made by the user, grouped by repository. */ + pullRequestReviewContributionsByRepository: Array + /** A list of repositories owned by the user that the user created in this time range. */ + repositoryContributions: CreatedRepositoryContributionConnection + /** A count of contributions made by the user that the viewer cannot access. Only non-zero when the user has chosen to share their private contribution counts. */ + restrictedContributionsCount: Scalars["Int"]["output"] + /** The beginning date and time of this collection. */ + startedAt: Scalars["DateTime"]["output"] + /** How many commits were made by the user in this time span. */ + totalCommitContributions: Scalars["Int"]["output"] + /** How many issues the user opened. */ + totalIssueContributions: Scalars["Int"]["output"] + /** How many pull requests the user opened. */ + totalPullRequestContributions: Scalars["Int"]["output"] + /** How many pull request reviews the user left. */ + totalPullRequestReviewContributions: Scalars["Int"]["output"] + /** How many different repositories the user committed to. */ + totalRepositoriesWithContributedCommits: Scalars["Int"]["output"] + /** How many different repositories the user opened issues in. */ + totalRepositoriesWithContributedIssues: Scalars["Int"]["output"] + /** How many different repositories the user left pull request reviews in. */ + totalRepositoriesWithContributedPullRequestReviews: Scalars["Int"]["output"] + /** How many different repositories the user opened pull requests in. */ + totalRepositoriesWithContributedPullRequests: Scalars["Int"]["output"] + /** How many repositories the user created. */ + totalRepositoryContributions: Scalars["Int"]["output"] + /** The user who made the contributions in this collection. */ + user: User +} + +/** + * A collection of contributions made by a user, including opened issues, commits, and pull requests. + * Contributions in private and internal repositories are only included with the optional read:user scope. + * + */ +export type ContributionsCollectionCommitContributionsByRepositoryArgs = { + maxRepositories?: InputMaybe +} + +/** + * A collection of contributions made by a user, including opened issues, commits, and pull requests. + * Contributions in private and internal repositories are only included with the optional read:user scope. + * + */ +export type ContributionsCollectionIssueContributionsArgs = { + after?: InputMaybe + before?: InputMaybe + excludeFirst?: InputMaybe + excludePopular?: InputMaybe + first?: InputMaybe + last?: InputMaybe + orderBy?: InputMaybe +} + +/** + * A collection of contributions made by a user, including opened issues, commits, and pull requests. + * Contributions in private and internal repositories are only included with the optional read:user scope. + * + */ +export type ContributionsCollectionIssueContributionsByRepositoryArgs = { + excludeFirst?: InputMaybe + excludePopular?: InputMaybe + maxRepositories?: InputMaybe +} + +/** + * A collection of contributions made by a user, including opened issues, commits, and pull requests. + * Contributions in private and internal repositories are only included with the optional read:user scope. + * + */ +export type ContributionsCollectionPullRequestContributionsArgs = { + after?: InputMaybe + before?: InputMaybe + excludeFirst?: InputMaybe + excludePopular?: InputMaybe + first?: InputMaybe + last?: InputMaybe + orderBy?: InputMaybe +} + +/** + * A collection of contributions made by a user, including opened issues, commits, and pull requests. + * Contributions in private and internal repositories are only included with the optional read:user scope. + * + */ +export type ContributionsCollectionPullRequestContributionsByRepositoryArgs = { + excludeFirst?: InputMaybe + excludePopular?: InputMaybe + maxRepositories?: InputMaybe +} + +/** + * A collection of contributions made by a user, including opened issues, commits, and pull requests. + * Contributions in private and internal repositories are only included with the optional read:user scope. + * + */ +export type ContributionsCollectionPullRequestReviewContributionsArgs = { + after?: InputMaybe + before?: InputMaybe + first?: InputMaybe + last?: InputMaybe + orderBy?: InputMaybe +} + +/** + * A collection of contributions made by a user, including opened issues, commits, and pull requests. + * Contributions in private and internal repositories are only included with the optional read:user scope. + * + */ +export type ContributionsCollectionPullRequestReviewContributionsByRepositoryArgs = + { + maxRepositories?: InputMaybe + } + +/** + * A collection of contributions made by a user, including opened issues, commits, and pull requests. + * Contributions in private and internal repositories are only included with the optional read:user scope. + * + */ +export type ContributionsCollectionRepositoryContributionsArgs = { + after?: InputMaybe + before?: InputMaybe + excludeFirst?: InputMaybe + first?: InputMaybe + last?: InputMaybe + orderBy?: InputMaybe +} + +/** + * A collection of contributions made by a user, including opened issues, commits, and pull requests. + * Contributions in private and internal repositories are only included with the optional read:user scope. + * + */ +export type ContributionsCollectionTotalIssueContributionsArgs = { + excludeFirst?: InputMaybe + excludePopular?: InputMaybe +} + +/** + * A collection of contributions made by a user, including opened issues, commits, and pull requests. + * Contributions in private and internal repositories are only included with the optional read:user scope. + * + */ +export type ContributionsCollectionTotalPullRequestContributionsArgs = { + excludeFirst?: InputMaybe + excludePopular?: InputMaybe +} + +/** + * A collection of contributions made by a user, including opened issues, commits, and pull requests. + * Contributions in private and internal repositories are only included with the optional read:user scope. + * + */ +export type ContributionsCollectionTotalRepositoriesWithContributedIssuesArgs = + { + excludeFirst?: InputMaybe + excludePopular?: InputMaybe + } + +/** + * A collection of contributions made by a user, including opened issues, commits, and pull requests. + * Contributions in private and internal repositories are only included with the optional read:user scope. + * + */ +export type ContributionsCollectionTotalRepositoriesWithContributedPullRequestsArgs = + { + excludeFirst?: InputMaybe + excludePopular?: InputMaybe + } + +/** + * A collection of contributions made by a user, including opened issues, commits, and pull requests. + * Contributions in private and internal repositories are only included with the optional read:user scope. + * + */ +export type ContributionsCollectionTotalRepositoryContributionsArgs = { + excludeFirst?: InputMaybe +} + +/** Autogenerated input type of ConvertProjectCardNoteToIssue */ +export type ConvertProjectCardNoteToIssueInput = { + /** The body of the newly created issue. */ + body?: InputMaybe + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The ProjectCard ID to convert. */ + projectCardId: Scalars["ID"]["input"] + /** The ID of the repository to create the issue in. */ + repositoryId: Scalars["ID"]["input"] + /** The title of the newly created issue. Defaults to the card's note text. */ + title?: InputMaybe +} + +/** Autogenerated return type of ConvertProjectCardNoteToIssue. */ +export type ConvertProjectCardNoteToIssuePayload = { + __typename?: "ConvertProjectCardNoteToIssuePayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The updated ProjectCard. */ + projectCard?: Maybe +} + +/** Autogenerated input type of ConvertProjectV2DraftIssueItemToIssue */ +export type ConvertProjectV2DraftIssueItemToIssueInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The ID of the draft issue ProjectV2Item to convert. */ + itemId: Scalars["ID"]["input"] + /** The ID of the repository to create the issue in. */ + repositoryId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of ConvertProjectV2DraftIssueItemToIssue. */ +export type ConvertProjectV2DraftIssueItemToIssuePayload = { + __typename?: "ConvertProjectV2DraftIssueItemToIssuePayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The updated project item. */ + item?: Maybe +} + +/** Autogenerated input type of ConvertPullRequestToDraft */ +export type ConvertPullRequestToDraftInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** ID of the pull request to convert to draft */ + pullRequestId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of ConvertPullRequestToDraft. */ +export type ConvertPullRequestToDraftPayload = { + __typename?: "ConvertPullRequestToDraftPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The pull request that is now a draft. */ + pullRequest?: Maybe +} + +/** Represents a 'convert_to_draft' event on a given pull request. */ +export type ConvertToDraftEvent = Node & + UniformResourceLocatable & { + __typename?: "ConvertToDraftEvent" + /** Identifies the actor who performed the event. */ + actor?: Maybe + /** Identifies the date and time when the object was created. */ + createdAt: Scalars["DateTime"]["output"] + /** The Node ID of the ConvertToDraftEvent object */ + id: Scalars["ID"]["output"] + /** PullRequest referenced by event. */ + pullRequest: PullRequest + /** The HTTP path for this convert to draft event. */ + resourcePath: Scalars["URI"]["output"] + /** The HTTP URL for this convert to draft event. */ + url: Scalars["URI"]["output"] + } + +/** Represents a 'converted_note_to_issue' event on a given issue or pull request. */ +export type ConvertedNoteToIssueEvent = Node & { + __typename?: "ConvertedNoteToIssueEvent" + /** Identifies the actor who performed the event. */ + actor?: Maybe + /** Identifies the date and time when the object was created. */ + createdAt: Scalars["DateTime"]["output"] + /** Identifies the primary key from the database. */ + databaseId?: Maybe + /** The Node ID of the ConvertedNoteToIssueEvent object */ + id: Scalars["ID"]["output"] + /** + * Project referenced by event. + * @deprecated Projects (classic) is being deprecated in favor of the new Projects experience, see: https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/. Removal on 2025-04-01 UTC. + */ + project?: Maybe + /** + * Project card referenced by this project event. + * @deprecated Projects (classic) is being deprecated in favor of the new Projects experience, see: https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/. Removal on 2025-04-01 UTC. + */ + projectCard?: Maybe + /** Column name referenced by this project event. */ + projectColumnName: Scalars["String"]["output"] +} + +/** Represents a 'converted_to_discussion' event on a given issue. */ +export type ConvertedToDiscussionEvent = Node & { + __typename?: "ConvertedToDiscussionEvent" + /** Identifies the actor who performed the event. */ + actor?: Maybe + /** Identifies the date and time when the object was created. */ + createdAt: Scalars["DateTime"]["output"] + /** The discussion that the issue was converted into. */ + discussion?: Maybe + /** The Node ID of the ConvertedToDiscussionEvent object */ + id: Scalars["ID"]["output"] +} + +/** Request Copilot code review for new pull requests automatically if the author has access to Copilot code review. */ +export type CopilotCodeReviewParameters = { + __typename?: "CopilotCodeReviewParameters" + /** Copilot automatically reviews draft pull requests before they are marked as ready for review. */ + reviewDraftPullRequests: Scalars["Boolean"]["output"] + /** Copilot automatically reviews each new push to the pull request. */ + reviewOnPush: Scalars["Boolean"]["output"] +} + +/** Request Copilot code review for new pull requests automatically if the author has access to Copilot code review. */ +export type CopilotCodeReviewParametersInput = { + /** Copilot automatically reviews draft pull requests before they are marked as ready for review. */ + reviewDraftPullRequests?: InputMaybe + /** Copilot automatically reviews each new push to the pull request. */ + reviewOnPush?: InputMaybe +} + +/** Copilot endpoint information */ +export type CopilotEndpoints = { + __typename?: "CopilotEndpoints" + /** Copilot API endpoint */ + api: Scalars["String"]["output"] + /** Copilot origin tracker endpoint */ + originTracker: Scalars["String"]["output"] + /** Copilot proxy endpoint */ + proxy: Scalars["String"]["output"] + /** Copilot telemetry endpoint */ + telemetry: Scalars["String"]["output"] +} + +/** Autogenerated input type of CopyProjectV2 */ +export type CopyProjectV2Input = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** Include draft issues in the new project */ + includeDraftIssues?: InputMaybe + /** The owner ID of the new project. */ + ownerId: Scalars["ID"]["input"] + /** The ID of the source Project to copy. */ + projectId: Scalars["ID"]["input"] + /** The title of the project. */ + title: Scalars["String"]["input"] +} + +/** Autogenerated return type of CopyProjectV2. */ +export type CopyProjectV2Payload = { + __typename?: "CopyProjectV2Payload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The copied project. */ + projectV2?: Maybe +} + +/** Autogenerated input type of CreateAttributionInvitation */ +export type CreateAttributionInvitationInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The Node ID of the owner scoping the reattributable data. */ + ownerId: Scalars["ID"]["input"] + /** The Node ID of the account owning the data to reattribute. */ + sourceId: Scalars["ID"]["input"] + /** The Node ID of the account which may claim the data. */ + targetId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of CreateAttributionInvitation. */ +export type CreateAttributionInvitationPayload = { + __typename?: "CreateAttributionInvitationPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The owner scoping the reattributable data. */ + owner?: Maybe + /** The account owning the data to reattribute. */ + source?: Maybe + /** The account which may claim the data. */ + target?: Maybe +} + +/** Autogenerated input type of CreateBranchProtectionRule */ +export type CreateBranchProtectionRuleInput = { + /** Can this branch be deleted. */ + allowsDeletions?: InputMaybe + /** Are force pushes allowed on this branch. */ + allowsForcePushes?: InputMaybe + /** Is branch creation a protected operation. */ + blocksCreations?: InputMaybe + /** A list of User, Team, or App IDs allowed to bypass force push targeting matching branches. */ + bypassForcePushActorIds?: InputMaybe> + /** A list of User, Team, or App IDs allowed to bypass pull requests targeting matching branches. */ + bypassPullRequestActorIds?: InputMaybe> + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** Will new commits pushed to matching branches dismiss pull request review approvals. */ + dismissesStaleReviews?: InputMaybe + /** Can admins override branch protection. */ + isAdminEnforced?: InputMaybe + /** Whether users can pull changes from upstream when the branch is locked. Set to `true` to allow fork syncing. Set to `false` to prevent fork syncing. */ + lockAllowsFetchAndMerge?: InputMaybe + /** Whether to set the branch as read-only. If this is true, users will not be able to push to the branch. */ + lockBranch?: InputMaybe + /** The glob-like pattern used to determine matching branches. */ + pattern: Scalars["String"]["input"] + /** A list of User, Team, or App IDs allowed to push to matching branches. */ + pushActorIds?: InputMaybe> + /** The global relay id of the repository in which a new branch protection rule should be created in. */ + repositoryId: Scalars["ID"]["input"] + /** Whether the most recent push must be approved by someone other than the person who pushed it */ + requireLastPushApproval?: InputMaybe + /** Number of approving reviews required to update matching branches. */ + requiredApprovingReviewCount?: InputMaybe + /** The list of required deployment environments */ + requiredDeploymentEnvironments?: InputMaybe> + /** List of required status check contexts that must pass for commits to be accepted to matching branches. */ + requiredStatusCheckContexts?: InputMaybe> + /** The list of required status checks */ + requiredStatusChecks?: InputMaybe> + /** Are approving reviews required to update matching branches. */ + requiresApprovingReviews?: InputMaybe + /** Are reviews from code owners required to update matching branches. */ + requiresCodeOwnerReviews?: InputMaybe + /** Are commits required to be signed. */ + requiresCommitSignatures?: InputMaybe + /** Are conversations required to be resolved before merging. */ + requiresConversationResolution?: InputMaybe + /** Are successful deployments required before merging. */ + requiresDeployments?: InputMaybe + /** Are merge commits prohibited from being pushed to this branch. */ + requiresLinearHistory?: InputMaybe + /** Are status checks required to update matching branches. */ + requiresStatusChecks?: InputMaybe + /** Are branches required to be up to date before merging. */ + requiresStrictStatusChecks?: InputMaybe + /** Is pushing to matching branches restricted. */ + restrictsPushes?: InputMaybe + /** Is dismissal of pull request reviews restricted. */ + restrictsReviewDismissals?: InputMaybe + /** A list of User, Team, or App IDs allowed to dismiss reviews on pull requests targeting matching branches. */ + reviewDismissalActorIds?: InputMaybe> +} + +/** Autogenerated return type of CreateBranchProtectionRule. */ +export type CreateBranchProtectionRulePayload = { + __typename?: "CreateBranchProtectionRulePayload" + /** The newly created BranchProtectionRule. */ + branchProtectionRule?: Maybe + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe +} + +/** Autogenerated input type of CreateCheckRun */ +export type CreateCheckRunInput = { + /** Possible further actions the integrator can perform, which a user may trigger. */ + actions?: InputMaybe> + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The time that the check run finished. */ + completedAt?: InputMaybe + /** The final conclusion of the check. */ + conclusion?: InputMaybe + /** The URL of the integrator's site that has the full details of the check. */ + detailsUrl?: InputMaybe + /** A reference for the run on the integrator's system. */ + externalId?: InputMaybe + /** The SHA of the head commit. */ + headSha: Scalars["GitObjectID"]["input"] + /** The name of the check. */ + name: Scalars["String"]["input"] + /** Descriptive details about the run. */ + output?: InputMaybe + /** The node ID of the repository. */ + repositoryId: Scalars["ID"]["input"] + /** The time that the check run began. */ + startedAt?: InputMaybe + /** The current status. */ + status?: InputMaybe +} + +/** Autogenerated return type of CreateCheckRun. */ +export type CreateCheckRunPayload = { + __typename?: "CreateCheckRunPayload" + /** The newly created check run. */ + checkRun?: Maybe + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe +} + +/** Autogenerated input type of CreateCheckSuite */ +export type CreateCheckSuiteInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The SHA of the head commit. */ + headSha: Scalars["GitObjectID"]["input"] + /** The Node ID of the repository. */ + repositoryId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of CreateCheckSuite. */ +export type CreateCheckSuitePayload = { + __typename?: "CreateCheckSuitePayload" + /** The newly created check suite. */ + checkSuite?: Maybe + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe +} + +/** Autogenerated input type of CreateCommitOnBranch */ +export type CreateCommitOnBranchInput = { + /** The Ref to be updated. Must be a branch. */ + branch: CommittableBranch + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The git commit oid expected at the head of the branch prior to the commit */ + expectedHeadOid: Scalars["GitObjectID"]["input"] + /** A description of changes to files in this commit. */ + fileChanges?: InputMaybe + /** The commit message the be included with the commit. */ + message: CommitMessage +} + +/** Autogenerated return type of CreateCommitOnBranch. */ +export type CreateCommitOnBranchPayload = { + __typename?: "CreateCommitOnBranchPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The new commit. */ + commit?: Maybe + /** The ref which has been updated to point to the new commit. */ + ref?: Maybe +} + +/** Autogenerated input type of CreateDeployment */ +export type CreateDeploymentInput = { + /** Attempt to automatically merge the default branch into the requested ref, defaults to true. */ + autoMerge?: InputMaybe + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** Short description of the deployment. */ + description?: InputMaybe + /** Name for the target deployment environment. */ + environment?: InputMaybe + /** JSON payload with extra information about the deployment. */ + payload?: InputMaybe + /** The node ID of the ref to be deployed. */ + refId: Scalars["ID"]["input"] + /** The node ID of the repository. */ + repositoryId: Scalars["ID"]["input"] + /** The status contexts to verify against commit status checks. To bypass required contexts, pass an empty array. Defaults to all unique contexts. */ + requiredContexts?: InputMaybe> + /** Specifies a task to execute. */ + task?: InputMaybe +} + +/** Autogenerated return type of CreateDeployment. */ +export type CreateDeploymentPayload = { + __typename?: "CreateDeploymentPayload" + /** True if the default branch has been auto-merged into the deployment ref. */ + autoMerged?: Maybe + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The new deployment. */ + deployment?: Maybe +} + +/** Autogenerated input type of CreateDeploymentStatus */ +export type CreateDeploymentStatusInput = { + /** Adds a new inactive status to all non-transient, non-production environment deployments with the same repository and environment name as the created status's deployment. */ + autoInactive?: InputMaybe + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The node ID of the deployment. */ + deploymentId: Scalars["ID"]["input"] + /** A short description of the status. Maximum length of 140 characters. */ + description?: InputMaybe + /** If provided, updates the environment of the deploy. Otherwise, does not modify the environment. */ + environment?: InputMaybe + /** Sets the URL for accessing your environment. */ + environmentUrl?: InputMaybe + /** The log URL to associate with this status. This URL should contain output to keep the user updated while the task is running or serve as historical information for what happened in the deployment. */ + logUrl?: InputMaybe + /** The state of the deployment. */ + state: DeploymentStatusState +} + +/** Autogenerated return type of CreateDeploymentStatus. */ +export type CreateDeploymentStatusPayload = { + __typename?: "CreateDeploymentStatusPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The new deployment status. */ + deploymentStatus?: Maybe +} + +/** Autogenerated input type of CreateDiscussion */ +export type CreateDiscussionInput = { + /** The body of the discussion. */ + body: Scalars["String"]["input"] + /** The id of the discussion category to associate with this discussion. */ + categoryId: Scalars["ID"]["input"] + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The id of the repository on which to create the discussion. */ + repositoryId: Scalars["ID"]["input"] + /** The title of the discussion. */ + title: Scalars["String"]["input"] +} + +/** Autogenerated return type of CreateDiscussion. */ +export type CreateDiscussionPayload = { + __typename?: "CreateDiscussionPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The discussion that was just created. */ + discussion?: Maybe +} + +/** Autogenerated input type of CreateEnterpriseOrganization */ +export type CreateEnterpriseOrganizationInput = { + /** The logins for the administrators of the new organization. */ + adminLogins: Array + /** The email used for sending billing receipts. */ + billingEmail: Scalars["String"]["input"] + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The ID of the enterprise owning the new organization. */ + enterpriseId: Scalars["ID"]["input"] + /** The login of the new organization. */ + login: Scalars["String"]["input"] + /** The profile name of the new organization. */ + profileName: Scalars["String"]["input"] +} + +/** Autogenerated return type of CreateEnterpriseOrganization. */ +export type CreateEnterpriseOrganizationPayload = { + __typename?: "CreateEnterpriseOrganizationPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The enterprise that owns the created organization. */ + enterprise?: Maybe + /** The organization that was created. */ + organization?: Maybe +} + +/** Autogenerated input type of CreateEnvironment */ +export type CreateEnvironmentInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The name of the environment. */ + name: Scalars["String"]["input"] + /** The node ID of the repository. */ + repositoryId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of CreateEnvironment. */ +export type CreateEnvironmentPayload = { + __typename?: "CreateEnvironmentPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The new or existing environment. */ + environment?: Maybe +} + +/** Autogenerated input type of CreateIpAllowListEntry */ +export type CreateIpAllowListEntryInput = { + /** An IP address or range of addresses in CIDR notation. */ + allowListValue: Scalars["String"]["input"] + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** Whether the IP allow list entry is active when an IP allow list is enabled. */ + isActive: Scalars["Boolean"]["input"] + /** An optional name for the IP allow list entry. */ + name?: InputMaybe + /** The ID of the owner for which to create the new IP allow list entry. */ + ownerId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of CreateIpAllowListEntry. */ +export type CreateIpAllowListEntryPayload = { + __typename?: "CreateIpAllowListEntryPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The IP allow list entry that was created. */ + ipAllowListEntry?: Maybe +} + +/** Autogenerated input type of CreateIssue */ +export type CreateIssueInput = { + /** The Node ID of assignees for this issue. */ + assigneeIds?: InputMaybe> + /** The body for the issue description. */ + body?: InputMaybe + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** The name of an issue template in the repository, assigns labels and assignees from the template to the issue */ + issueTemplate?: InputMaybe + /** The Node ID of the issue type for this issue */ + issueTypeId?: InputMaybe + /** An array of Node IDs of labels for this issue. */ + labelIds?: InputMaybe> + /** The Node ID of the milestone for this issue. */ + milestoneId?: InputMaybe + /** The Node ID of the parent issue to add this new issue to */ + parentIssueId?: InputMaybe + /** An array of Node IDs for projects associated with this issue. */ + projectIds?: InputMaybe> + /** The Node ID of the repository. */ + repositoryId: Scalars["ID"]["input"] + /** The title for the issue. */ + title: Scalars["String"]["input"] +} + +/** Autogenerated return type of CreateIssue. */ +export type CreateIssuePayload = { + __typename?: "CreateIssuePayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The new issue. */ + issue?: Maybe +} + +/** Autogenerated input type of CreateIssueType */ +export type CreateIssueTypeInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** Color for the issue type */ + color?: InputMaybe + /** Description of the new issue type */ + description?: InputMaybe + /** Whether or not the issue type is enabled on the org level */ + isEnabled: Scalars["Boolean"]["input"] + /** Name of the new issue type */ + name: Scalars["String"]["input"] + /** The ID for the organization on which the issue type is created */ + ownerId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of CreateIssueType. */ +export type CreateIssueTypePayload = { + __typename?: "CreateIssueTypePayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The newly created issue type */ + issueType?: Maybe +} + +/** Autogenerated input type of CreateLabel */ +export type CreateLabelInput = { + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: InputMaybe + /** A 6 character hex code, without the leading #, identifying the color of the label. */ + color: Scalars["String"]["input"] + /** A brief description of the label, such as its purpose. */ + description?: InputMaybe + /** The name of the label. */ + name: Scalars["String"]["input"] + /** The Node ID of the repository. */ + repositoryId: Scalars["ID"]["input"] +} + +/** Autogenerated return type of CreateLabel. */ +export type CreateLabelPayload = { + __typename?: "CreateLabelPayload" + /** A unique identifier for the client performing the mutation. */ + clientMutationId?: Maybe + /** The new label. */ + label?: Maybe