diff --git a/.gitignore b/.gitignore index 6f986d167..05238d16a 100644 --- a/.gitignore +++ b/.gitignore @@ -5,21 +5,12 @@ build/ # Dependency directories node_modules/ +# Generated GraphQL Files +schema.graphql + # Coverage directory used by tools like istanbul coverage *.lcov -# Logs -logs -*.log -npm-debug.log* - -# Optional npm cache directory -.npm - -# Temporary folders -tmp/ -temp/ - # Mac Files .DS_Store \ No newline at end of file diff --git a/biome.json b/biome.json index dc075b9d8..9ed6dbe3a 100644 --- a/biome.json +++ b/biome.json @@ -36,8 +36,7 @@ "rules": { "recommended": true, "a11y": { - "useKeyWithClickEvents": "off", - "useSemanticElements": "off" + "useKeyWithClickEvents": "off" }, "correctness": { "noUnusedFunctionParameters": "error", @@ -51,8 +50,7 @@ } ] } - }, - "useUniqueElementIds": "warn" + } }, "style": { "useDefaultSwitchClause": "error", @@ -69,8 +67,7 @@ "noUselessElse": "error" }, "suspicious": { - "noConsole": "error", - "noUnknownAtRules": "warn" + "noConsole": "error" } } }, @@ -94,5 +91,8 @@ "parser": { "allowComments": true } + }, + "files": { + "includes": ["**", "!**/generated/**/*"] } } diff --git a/codegen.ts b/codegen.ts new file mode 100644 index 000000000..1473185e9 --- /dev/null +++ b/codegen.ts @@ -0,0 +1,27 @@ +import type { CodegenConfig } from '@graphql-codegen/cli'; + +const config: CodegenConfig = { + overwrite: true, + schema: 'https://docs.github.com/public/fpt/schema.docs.graphql', + documents: [ + 'src/renderer/utils/api/**/*.ts', + '!src/renderer/utils/api/graphql/generated/**', + '!src/renderer/utils/api/**/*.test.ts', + ], + generates: { + 'src/renderer/utils/api/graphql/generated/': { + preset: 'client', + config: { + documentMode: 'string', + }, + }, + 'src/renderer/utils/api/graphql/generated/schema.graphql': { + plugins: ['schema-ast'], + config: { + includeDirectives: true, + }, + }, + }, +}; + +export default config; diff --git a/package.json b/package.json index 98736c557..94c7dd637 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,8 @@ "build:main": "webpack --config ./config/webpack.config.main.prod.ts", "build:preload": "webpack --config ./config/webpack.config.preload.prod.ts", "build:renderer": "webpack --config ./config/webpack.config.renderer.prod.ts", - "watch": "concurrently --names \"main,preload,renderer\" --prefix-colors \"blue,magenta,green\" \"pnpm watch:main\" \"pnpm watch:preload\" \"pnpm watch:renderer\"", + "watch": "concurrently --names \"main,preload,renderer,codegen\" --prefix-colors \"blue,magenta,green,cyan\" \"pnpm watch:main\" \"pnpm watch:preload\" \"pnpm watch:renderer\" \"pnpm watch:codegen\"", + "watch:codegen": "pnpm codegen --watch", "watch:main": "webpack --watch --config ./config/webpack.config.main.base.ts", "watch:preload": "webpack --watch --config ./config/webpack.config.preload.base.ts", "watch:renderer": "webpack --watch --config ./config/webpack.config.renderer.base.ts", @@ -20,7 +21,8 @@ "lint": "biome check --fix", "test": "jest", "start": "electron . --enable-logging", - "prepare": "husky" + "prepare": "husky", + "codegen": "graphql-codegen --config codegen.ts" }, "engines": { "node": ">=22" @@ -74,9 +76,14 @@ "react-router-dom": "7.8.2" }, "devDependencies": { + "@0no-co/graphqlsp": "1.15.0", "@biomejs/biome": "2.2.4", "@discordapp/twemoji": "16.0.1", "@electron/notarize": "3.1.0", + "@graphql-codegen/cli": "6.0.0", + "@graphql-codegen/client-preset": "5.0.0", + "@graphql-codegen/schema-ast": "5.0.0", + "@parcel/watcher": "2.5.1", "@primer/css": "22.0.2", "@primer/octicons-react": "19.18.0", "@primer/primitives": "11.1.0", @@ -102,7 +109,7 @@ "electron": "38.1.0", "electron-builder": "26.0.12", "final-form": "5.0.0", - "graphql-tag": "2.12.6", + "graphql": "16.11.0", "html-webpack-plugin": "5.6.4", "husky": "9.1.7", "jest": "30.1.3", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 645a01b1b..437d4d2bf 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -27,6 +27,9 @@ importers: specifier: 7.8.2 version: 7.8.2(react-dom@19.1.1(react@19.1.1))(react@19.1.1) devDependencies: + '@0no-co/graphqlsp': + specifier: 1.15.0 + version: 1.15.0(graphql@16.11.0)(typescript@5.9.2) '@biomejs/biome': specifier: 2.2.4 version: 2.2.4 @@ -36,6 +39,18 @@ importers: '@electron/notarize': specifier: 3.1.0 version: 3.1.0 + '@graphql-codegen/cli': + specifier: 6.0.0 + version: 6.0.0(@parcel/watcher@2.5.1)(@types/node@22.18.1)(encoding@0.1.13)(graphql@16.11.0)(typescript@5.9.2) + '@graphql-codegen/client-preset': + specifier: 5.0.0 + version: 5.0.0(encoding@0.1.13)(graphql@16.11.0) + '@graphql-codegen/schema-ast': + specifier: 5.0.0 + version: 5.0.0(graphql@16.11.0) + '@parcel/watcher': + specifier: 2.5.1 + version: 2.5.1 '@primer/css': specifier: 22.0.2 version: 22.0.2(@primer/primitives@11.1.0) @@ -108,9 +123,9 @@ importers: final-form: specifier: 5.0.0 version: 5.0.0 - graphql-tag: - specifier: 2.12.6 - version: 2.12.6(graphql@16.8.1) + graphql: + specifier: 16.11.0 + version: 16.11.0 html-webpack-plugin: specifier: 5.6.4 version: 5.6.4(webpack@5.101.3) @@ -183,6 +198,20 @@ packages: 7zip-bin@5.2.0: resolution: {integrity: sha512-ukTPVhqG4jNzMro2qA9HSCSSVJN3aN7tlb+hfqYCt3ER0yWroeA2VR38MNrOHLQ/cVj+DaIMad0kFCtWWowh/A==} + '@0no-co/graphql.web@1.2.0': + resolution: {integrity: sha512-/1iHy9TTr63gE1YcR5idjx8UREz1s0kFhydf3bBLCXyqjhkIc6igAzTOx3zPifCwFR87tsh/4Pa9cNts6d2otw==} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 + peerDependenciesMeta: + graphql: + optional: true + + '@0no-co/graphqlsp@1.15.0': + resolution: {integrity: sha512-SReJAGmOeXrHGod+9Odqrz4s43liK0b2DFUetb/jmYvxFpWmeNfFYo0seCh0jz8vG3p1pnYMav0+Tm7XwWtOJw==} + peerDependencies: + graphql: ^15.5.0 || ^16.0.0 || ^17.0.0 + typescript: ^5.0.0 + '@adobe/css-tools@4.4.2': resolution: {integrity: sha512-baYZExFpsdkBNuvGKTKWCwKH57HRZLVtycZS05WTQNVOiXVSeAki3nU35zlRbToeMW8aHlJfyS+1C4BOv27q0A==} @@ -194,6 +223,12 @@ packages: resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} engines: {node: '>=6.0.0'} + '@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==} @@ -273,6 +308,12 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/plugin-syntax-import-assertions@7.27.1': + resolution: {integrity: sha512-UT/Jrhw57xg4ILHLFnzFpPDlMbcdEicaAtjPQpbj9wa8T4r5KVWCimHcL/460g8Ht0DMxDyjsLgiWSkVjnwPFg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/plugin-syntax-import-attributes@7.27.1': resolution: {integrity: sha512-oFT0FrKHgF53f4vOsZGi2Hh3I35PfSmVs4IBFLFj4dnafP+hIWDLg3VyKmUHfLoLHlyxY4C7DGtmHuJgn+IGww==} engines: {node: '>=6.9.0'} @@ -347,6 +388,10 @@ packages: resolution: {integrity: sha512-+BIznRzyqBf+2wCTxcKE3wDjfGeCoVE61KSHGpkzqrLi8qxqFwBeUFyId2cxkTmm55fzDGnm0+yCxaxygrLUnQ==} engines: {node: '>=6.9.0'} + '@babel/runtime@7.28.4': + resolution: {integrity: sha512-Q/N6JNWvIvPnLDvjlE1OUBLPQHH6l3CltCEsHIujp45zQUSSh8K+gHnaEX45yAT1nyngnINhvWtzN+Nb9D8RAQ==} + engines: {node: '>=6.9.0'} + '@babel/template@7.27.2': resolution: {integrity: sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==} engines: {node: '>=6.9.0'} @@ -530,6 +575,21 @@ packages: '@emotion/unitless@0.8.1': resolution: {integrity: sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ==} + '@envelop/core@5.3.1': + resolution: {integrity: sha512-n29V3vRqXvPcG76C8zE482LQykk0P66zv1mjpk7aHeGe9qnh8AzB/RvoX5SVFwApJQPp0ixob8NoYXg4FHKMGA==} + engines: {node: '>=18.0.0'} + + '@envelop/instrumentation@1.0.0': + resolution: {integrity: sha512-cxgkB66RQB95H3X27jlnxCRNTmPuSTgmBAq6/4n2Dtv4hsk4yz8FadA1ggmd0uZzvKqWD6CR+WFgTjhDqg7eyw==} + engines: {node: '>=18.0.0'} + + '@envelop/types@5.2.1': + resolution: {integrity: sha512-CsFmA3u3c2QoLDTfEpGr4t25fjMU31nyvse7IzWTvb0ZycuPjMjb0fjlheh+PbhBYb9YLugnT2uY6Mwcg1o+Zg==} + engines: {node: '>=18.0.0'} + + '@fastify/busboy@3.2.0': + resolution: {integrity: sha512-m9FVDXU3GT2ITSe0UaMA5rU3QkfC/UXtCU8y0gSN/GugTqtVldOBWIB5V6V3sbmenVZUIpU6f+mPEO2+m5iTaA==} + '@gar/promisify@1.1.3': resolution: {integrity: sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==} @@ -539,6 +599,380 @@ packages: '@github/tab-container-element@4.8.2': resolution: {integrity: sha512-WkaM4mfs8x7dXRWEaDb5deC0OhH6sGQ5cw8i/sVw25gikl4f8C7mHj0kihL5k3eKIIqmGT1Fdswdoi+9ZLDpRA==} + '@gql.tada/internal@1.0.8': + resolution: {integrity: sha512-XYdxJhtHC5WtZfdDqtKjcQ4d7R1s0d1rnlSs3OcBEUbYiPoJJfZU7tWsVXuv047Z6msvmr4ompJ7eLSK5Km57g==} + peerDependencies: + graphql: ^15.5.0 || ^16.0.0 || ^17.0.0 + typescript: ^5.0.0 + + '@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.0': + resolution: {integrity: sha512-nVBgJDVahYm/uAVzm2v3tucdqk5iABke+boHPIofj3AzrYZnjTeTvEybqHo9RsEvKyTVKBi6NktkU9fKrOQMQw==} + 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/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-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'} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + + '@graphql-tools/code-file-loader@8.1.22': + resolution: {integrity: sha512-FSka29kqFkfFmw36CwoQ+4iyhchxfEzPbXOi37lCEjWLHudGaPkXc3RyB9LdmBxx3g3GHEu43a5n5W8gfcrMdA==} + engines: {node: '>=16.0.0'} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + + '@graphql-tools/delegate@10.2.23': + resolution: {integrity: sha512-xrPtl7f1LxS+B6o+W7ueuQh67CwRkfl+UKJncaslnqYdkxKmNBB4wnzVcW8ZsRdwbsla/v43PtwAvSlzxCzq2w==} + engines: {node: '>=18.0.0'} + 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'} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + + '@graphql-tools/executor-common@0.0.6': + resolution: {integrity: sha512-JAH/R1zf77CSkpYATIJw+eOJwsbWocdDjY+avY7G+P5HCXxwQjAjWVkJI1QJBQYjPQDVxwf1fmTZlIN3VOadow==} + engines: {node: '>=18.0.0'} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + + '@graphql-tools/executor-graphql-ws@2.0.7': + resolution: {integrity: sha512-J27za7sKF6RjhmvSOwOQFeNhNHyP4f4niqPnerJmq73OtLx9Y2PGOhkXOEB0PjhvPJceuttkD2O1yMgEkTGs3Q==} + engines: {node: '>=18.0.0'} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + + '@graphql-tools/executor-http@1.3.3': + resolution: {integrity: sha512-LIy+l08/Ivl8f8sMiHW2ebyck59JzyzO/yF9SFS4NH6MJZUezA1xThUXCDIKhHiD56h/gPojbkpcFvM2CbNE7A==} + engines: {node: '>=18.0.0'} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + + '@graphql-tools/executor-legacy-ws@1.1.19': + resolution: {integrity: sha512-bEbv/SlEdhWQD0WZLUX1kOenEdVZk1yYtilrAWjRUgfHRZoEkY9s+oiqOxnth3z68wC2MWYx7ykkS5hhDamixg==} + engines: {node: '>=16.0.0'} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + + '@graphql-tools/executor@1.4.9': + resolution: {integrity: sha512-SAUlDT70JAvXeqV87gGzvDzUGofn39nvaVcVhNf12Dt+GfWHtNNO/RCn/Ea4VJaSLGzraUd41ObnN3i80EBU7w==} + engines: {node: '>=16.0.0'} + 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.1.1': + resolution: {integrity: sha512-5JaUE3zMHW21Oh3bGSNKcr/Mi6oZ9/QWlBCNYbGy+09U23EOZmhPn9a44zP3gXcnnj0C+YVEr8dsMaoaB3UVGQ==} + engines: {node: '>=16.0.0'} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + + '@graphql-tools/graphql-tag-pluck@8.3.21': + resolution: {integrity: sha512-TJhELNvR1tmghXMi6HVKp/Swxbx1rcSp/zdkuJZT0DCM3vOY11FXY6NW3aoxumcuYDNN3jqXcCPKstYGFPi5GQ==} + engines: {node: '>=16.0.0'} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + + '@graphql-tools/import@7.1.1': + resolution: {integrity: sha512-zhlhaUmeTfV76vMoLRn9xCVMVc7sLf10ve5GKEhXFFDcWA6+vEZGk9CCm1VlPf2kyKGlF7bwLVzfepb3ZoOU9Q==} + engines: {node: '>=16.0.0'} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + + '@graphql-tools/json-file-loader@8.0.20': + resolution: {integrity: sha512-5v6W+ZLBBML5SgntuBDLsYoqUvwfNboAwL6BwPHi3z/hH1f8BS9/0+MCW9OGY712g7E4pc3y9KqS67mWF753eA==} + engines: {node: '>=16.0.0'} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + + '@graphql-tools/load@8.1.2': + resolution: {integrity: sha512-WhDPv25/jRND+0uripofMX0IEwo6mrv+tJg6HifRmDu8USCD7nZhufT0PP7lIcuutqjIQFyogqT70BQsy6wOgw==} + engines: {node: '>=16.0.0'} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + + '@graphql-tools/merge@9.1.1': + resolution: {integrity: sha512-BJ5/7Y7GOhTuvzzO5tSBFL4NGr7PVqTJY3KeIDlVTT8YLcTXtBR+hlrC3uyEym7Ragn+zyWdHeJ9ev+nRX1X2w==} + engines: {node: '>=16.0.0'} + 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'} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + + '@graphql-tools/url-loader@8.0.33': + resolution: {integrity: sha512-Fu626qcNHcqAj8uYd7QRarcJn5XZ863kmxsg1sm0fyjyfBJnsvC7ddFt6Hayz5kxVKfsnjxiDfPMXanvsQVBKw==} + engines: {node: '>=16.0.0'} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + + '@graphql-tools/utils@10.9.1': + resolution: {integrity: sha512-B1wwkXk9UvU7LCBkPs8513WxOQ2H8Fo5p8HR1+Id9WmYE5+bd51vqN+MbrqvWczHCH2gwkREgHJN88tE0n1FCw==} + engines: {node: '>=16.0.0'} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + + '@graphql-tools/wrap@10.1.4': + resolution: {integrity: sha512-7pyNKqXProRjlSdqOtrbnFRMQAVamCmEREilOXtZujxY6kYit3tvWWSjUrcIOheltTffoRh7EQSjpy2JDCzasg==} + engines: {node: '>=18.0.0'} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + + '@graphql-typed-document-node/core@3.2.0': + resolution: {integrity: sha512-mB9oAsNCm9aM3/SOv4YtBMqZbYj10R7dkq8byBqxGY/ncFwhf2oQzMV+LCRlWoDSEBJ3COiR1yeDvMtsoOsuFQ==} + 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 || ^17.0.0 + + '@inquirer/checkbox@4.2.2': + resolution: {integrity: sha512-E+KExNurKcUJJdxmjglTl141EwxWyAHplvsYJQgSwXf8qiNWkTxTuCCqmhFEmbIXd4zLaGMfQFJ6WrZ7fSeV3g==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/confirm@5.1.16': + resolution: {integrity: sha512-j1a5VstaK5KQy8Mu8cHmuQvN1Zc62TbLhjJxwHvKPPKEoowSF6h/0UdOpA9DNdWZ+9Inq73+puRq1df6OJ8Sag==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/core@10.2.0': + resolution: {integrity: sha512-NyDSjPqhSvpZEMZrLCYUquWNl+XC/moEcVFqS55IEYIYsY0a1cUCevSqk7ctOlnm/RaSBU5psFryNlxcmGrjaA==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/editor@4.2.18': + resolution: {integrity: sha512-yeQN3AXjCm7+Hmq5L6Dm2wEDeBRdAZuyZ4I7tWSSanbxDzqM0KqzoDbKM7p4ebllAYdoQuPJS6N71/3L281i6w==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/expand@4.0.18': + resolution: {integrity: sha512-xUjteYtavH7HwDMzq4Cn2X4Qsh5NozoDHCJTdoXg9HfZ4w3R6mxV1B9tL7DGJX2eq/zqtsFjhm0/RJIMGlh3ag==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/external-editor@1.0.1': + resolution: {integrity: sha512-Oau4yL24d2B5IL4ma4UpbQigkVhzPDXLoqy1ggK4gnHg/stmkffJE4oOXHXF3uz0UEpywG68KcyXsyYpA1Re/Q==} + 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.2': + resolution: {integrity: sha512-hqOvBZj/MhQCpHUuD3MVq18SSoDNHy7wEnQ8mtvs71K8OPZVXJinOzcvQna33dNYLYE4LkA9BlhAhK6MJcsVbw==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/number@3.0.18': + resolution: {integrity: sha512-7exgBm52WXZRczsydCVftozFTrrwbG5ySE0GqUd2zLNSBXyIucs2Wnm7ZKLe/aUu6NUg9dg7Q80QIHCdZJiY4A==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/password@4.0.18': + resolution: {integrity: sha512-zXvzAGxPQTNk/SbT3carAD4Iqi6A2JS2qtcqQjsL22uvD+JfQzUrDEtPjLL7PLn8zlSNyPdY02IiQjzoL9TStA==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/prompts@7.8.4': + resolution: {integrity: sha512-MuxVZ1en1g5oGamXV3DWP89GEkdD54alcfhHd7InUW5BifAdKQEK9SLFa/5hlWbvuhMPlobF0WAx7Okq988Jxg==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/rawlist@4.1.6': + resolution: {integrity: sha512-KOZqa3QNr3f0pMnufzL7K+nweFFCCBs6LCXZzXDrVGTyssjLeudn5ySktZYv1XiSqobyHRYYK0c6QsOxJEhXKA==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/search@3.1.1': + resolution: {integrity: sha512-TkMUY+A2p2EYVY3GCTItYGvqT6LiLzHBnqsU1rJbrpXUijFfM6zvUx0R4civofVwFCmJZcKqOVwwWAjplKkhxA==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/select@4.3.2': + resolution: {integrity: sha512-nwous24r31M+WyDEHV+qckXkepvihxhnyIaod2MG7eCE6G0Zm/HUF6jgN8GXgf4U7AU6SLseKdanY195cwvU6w==} + 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'} @@ -733,6 +1167,18 @@ packages: '@napi-rs/wasm-runtime@0.2.11': resolution: {integrity: sha512-9DPkXtvHydrcOsopiYpUgPHpmj0HWZKMUnL2dZqpvC42lsratuBG06V5ipyno0fUek5VlFsNQ+AcFATSrJXgMA==} + '@nodelib/fs.scandir@2.1.5': + resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} + engines: {node: '>= 8'} + + '@nodelib/fs.stat@2.0.5': + resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} + engines: {node: '>= 8'} + + '@nodelib/fs.walk@1.2.8': + resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} + engines: {node: '>= 8'} + '@npmcli/fs@2.1.2': resolution: {integrity: sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==} engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} @@ -745,19 +1191,101 @@ packages: '@oddbird/popover-polyfill@0.5.2': resolution: {integrity: sha512-iFrvar5SOMtKFOSjYvs4z9UlLqDdJbMx0mgISLcPedv+g0ac5sgeETLGtipHCVIae6HJPclNEH5aCyD1RZaEHw==} - '@pkgjs/parseargs@0.11.0': - resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} - engines: {node: '>=14'} + '@parcel/watcher-android-arm64@2.5.1': + resolution: {integrity: sha512-KF8+j9nNbUN8vzOFDpRMsaKBHZ/mcjEjMToVMJOhTozkDonQFFrRcfdLWn6yWKCmJKmdVxSgHiYvTCef4/qcBA==} + engines: {node: '>= 10.0.0'} + cpu: [arm64] + os: [android] - '@pkgr/core@0.2.7': - resolution: {integrity: sha512-YLT9Zo3oNPJoBjBc4q8G2mjU4tqIbf5CEOORbUUr48dCD9q3umJ3IPlVqOqDakPfd2HuwccBaqlGhN4Gmr5OWg==} - engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} + '@parcel/watcher-darwin-arm64@2.5.1': + resolution: {integrity: sha512-eAzPv5osDmZyBhou8PoF4i6RQXAfeKL9tjb3QzYuccXFMQU0ruIc/POh30ePnaOyD1UXdlKguHBmsTs53tVoPw==} + engines: {node: '>= 10.0.0'} + cpu: [arm64] + os: [darwin] - '@primer/behaviors@1.8.0': - resolution: {integrity: sha512-ZUfhWVY4ZBKc2Fh3fIa2Qwwa3SnOi914lY5wcmN+UNtsBxeXsjWNwpohJbwRwWZm+nJ3C1n9qJFWpHuBlDVU1A==} + '@parcel/watcher-darwin-x64@2.5.1': + resolution: {integrity: sha512-1ZXDthrnNmwv10A0/3AJNZ9JGlzrF82i3gNQcWOzd7nJ8aj+ILyW1MTxVk35Db0u91oD5Nlk9MBiujMlwmeXZg==} + engines: {node: '>= 10.0.0'} + cpu: [x64] + os: [darwin] - '@primer/css@22.0.2': - resolution: {integrity: sha512-FfXd1ga05oewKjDRi9cPmy7BSnb/6QOjTIxAtDj94Hoyk+qJxHhgvhbcnZwBfL3WKP6HeUT3PnsT9k+43Bmg3Q==} + '@parcel/watcher-freebsd-x64@2.5.1': + resolution: {integrity: sha512-SI4eljM7Flp9yPuKi8W0ird8TI/JK6CSxju3NojVI6BjHsTyK7zxA9urjVjEKJ5MBYC+bLmMcbAWlZ+rFkLpJQ==} + engines: {node: '>= 10.0.0'} + cpu: [x64] + os: [freebsd] + + '@parcel/watcher-linux-arm-glibc@2.5.1': + resolution: {integrity: sha512-RCdZlEyTs8geyBkkcnPWvtXLY44BCeZKmGYRtSgtwwnHR4dxfHRG3gR99XdMEdQ7KeiDdasJwwvNSF5jKtDwdA==} + engines: {node: '>= 10.0.0'} + cpu: [arm] + os: [linux] + + '@parcel/watcher-linux-arm-musl@2.5.1': + resolution: {integrity: sha512-6E+m/Mm1t1yhB8X412stiKFG3XykmgdIOqhjWj+VL8oHkKABfu/gjFj8DvLrYVHSBNC+/u5PeNrujiSQ1zwd1Q==} + engines: {node: '>= 10.0.0'} + cpu: [arm] + os: [linux] + + '@parcel/watcher-linux-arm64-glibc@2.5.1': + resolution: {integrity: sha512-LrGp+f02yU3BN9A+DGuY3v3bmnFUggAITBGriZHUREfNEzZh/GO06FF5u2kx8x+GBEUYfyTGamol4j3m9ANe8w==} + engines: {node: '>= 10.0.0'} + cpu: [arm64] + os: [linux] + + '@parcel/watcher-linux-arm64-musl@2.5.1': + resolution: {integrity: sha512-cFOjABi92pMYRXS7AcQv9/M1YuKRw8SZniCDw0ssQb/noPkRzA+HBDkwmyOJYp5wXcsTrhxO0zq1U11cK9jsFg==} + engines: {node: '>= 10.0.0'} + cpu: [arm64] + os: [linux] + + '@parcel/watcher-linux-x64-glibc@2.5.1': + resolution: {integrity: sha512-GcESn8NZySmfwlTsIur+49yDqSny2IhPeZfXunQi48DMugKeZ7uy1FX83pO0X22sHntJ4Ub+9k34XQCX+oHt2A==} + engines: {node: '>= 10.0.0'} + cpu: [x64] + os: [linux] + + '@parcel/watcher-linux-x64-musl@2.5.1': + resolution: {integrity: sha512-n0E2EQbatQ3bXhcH2D1XIAANAcTZkQICBPVaxMeaCVBtOpBZpWJuf7LwyWPSBDITb7In8mqQgJ7gH8CILCURXg==} + engines: {node: '>= 10.0.0'} + cpu: [x64] + os: [linux] + + '@parcel/watcher-win32-arm64@2.5.1': + resolution: {integrity: sha512-RFzklRvmc3PkjKjry3hLF9wD7ppR4AKcWNzH7kXR7GUe0Igb3Nz8fyPwtZCSquGrhU5HhUNDr/mKBqj7tqA2Vw==} + engines: {node: '>= 10.0.0'} + cpu: [arm64] + os: [win32] + + '@parcel/watcher-win32-ia32@2.5.1': + resolution: {integrity: sha512-c2KkcVN+NJmuA7CGlaGD1qJh1cLfDnQsHjE89E60vUEMlqduHGCdCLJCID5geFVM0dOtA3ZiIO8BoEQmzQVfpQ==} + engines: {node: '>= 10.0.0'} + cpu: [ia32] + os: [win32] + + '@parcel/watcher-win32-x64@2.5.1': + resolution: {integrity: sha512-9lHBdJITeNR++EvSQVUcaZoWupyHfXe1jZvGZ06O/5MflPcuPLtEphScIBL+AiCWBO46tDSHzWyD0uDmmZqsgA==} + engines: {node: '>= 10.0.0'} + cpu: [x64] + os: [win32] + + '@parcel/watcher@2.5.1': + resolution: {integrity: sha512-dfUnCxiN9H4ap84DvD2ubjw+3vUNpstxa0TneY/Paat8a3R4uQZDLSvWjmznAY/DoahqTHl9V46HF/Zs3F29pg==} + engines: {node: '>= 10.0.0'} + + '@pkgjs/parseargs@0.11.0': + resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} + engines: {node: '>=14'} + + '@pkgr/core@0.2.7': + resolution: {integrity: sha512-YLT9Zo3oNPJoBjBc4q8G2mjU4tqIbf5CEOORbUUr48dCD9q3umJ3IPlVqOqDakPfd2HuwccBaqlGhN4Gmr5OWg==} + engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} + + '@primer/behaviors@1.8.0': + resolution: {integrity: sha512-ZUfhWVY4ZBKc2Fh3fIa2Qwwa3SnOi914lY5wcmN+UNtsBxeXsjWNwpohJbwRwWZm+nJ3C1n9qJFWpHuBlDVU1A==} + + '@primer/css@22.0.2': + resolution: {integrity: sha512-FfXd1ga05oewKjDRi9cPmy7BSnb/6QOjTIxAtDj94Hoyk+qJxHhgvhbcnZwBfL3WKP6HeUT3PnsT9k+43Bmg3Q==} engines: {node: '>=16.0.0'} peerDependencies: '@primer/primitives': 10.x || 11.x @@ -796,6 +1324,9 @@ packages: '@types/styled-components': optional: true + '@repeaterjs/repeater@3.0.6': + resolution: {integrity: sha512-Javneu5lsuhwNCryN+pXH93VPQ8g0dBX7wItHFgYiwQmzE1sVdg5tWHiOgHywzL2W21XQopa7IwIEnNbmeUJYA==} + '@sinclair/typebox@0.27.8': resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} @@ -978,6 +1509,12 @@ packages: peerDependencies: '@testing-library/dom': '>=7.21.4' + '@theguild/federation-composition@0.19.1': + resolution: {integrity: sha512-E4kllHSRYh+FsY0VR+fwl0rmWhDV8xUgWawLZTXmy15nCWQwj0BDsoEpdEXjPh7xes+75cRaeJcSbZ4jkBuSdg==} + engines: {node: '>=18'} + peerDependencies: + graphql: ^16.0.0 + '@tootallnate/once@2.0.0': resolution: {integrity: sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==} engines: {node: '>= 10'} @@ -1120,6 +1657,9 @@ packages: '@types/verror@1.10.10': resolution: {integrity: sha512-l4MM0Jppn18hb9xmM6wwD1uTdShpf9Pn80aXTStnK1C94gtPvJcV2FrDmbOQUAQfJ1cKZHktkQUDwEqaAKXMMg==} + '@types/ws@8.18.1': + resolution: {integrity: sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==} + '@types/yargs-parser@21.0.3': resolution: {integrity: sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==} @@ -1287,6 +1827,22 @@ packages: webpack-dev-server: optional: true + '@whatwg-node/disposablestack@0.0.6': + resolution: {integrity: sha512-LOtTn+JgJvX8WfBVJtF08TGrdjuFzGJc4mkP8EdDI8ADbvO7kiexYep1o8dwnt0okb0jYclCDXF13xU7Ge4zSw==} + engines: {node: '>=18.0.0'} + + '@whatwg-node/fetch@0.10.10': + resolution: {integrity: sha512-watz4i/Vv4HpoJ+GranJ7HH75Pf+OkPQ63NoVmru6Srgc8VezTArB00i/oQlnn0KWh14gM42F22Qcc9SU9mo/w==} + engines: {node: '>=18.0.0'} + + '@whatwg-node/node-fetch@0.7.25': + resolution: {integrity: sha512-szCTESNJV+Xd56zU6ShOi/JWROxE9IwCic8o5D9z5QECZloas6Ez5tUuKqXTAdu6fHFx1t6C+5gwj8smzOLjtg==} + engines: {node: '>=18.0.0'} + + '@whatwg-node/promise-helpers@1.3.2': + resolution: {integrity: sha512-Nst5JdK47VIl9UcGwtv2Rcgyn5lWtZ0/mhRQ4G8NN2isxpq2TO30iqHzmwoJycjWuyUfg3GFXqP/gFHXeV57IA==} + engines: {node: '>=16.0.0'} + '@xmldom/xmldom@0.8.10': resolution: {integrity: sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==} engines: {node: '>=10.0.0'} @@ -1369,6 +1925,10 @@ packages: resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} engines: {node: '>=8'} + ansi-escapes@7.1.0: + resolution: {integrity: sha512-YdhtCd19sKRKfAAUsrcC1wzm4JuzJoiX4pOJqIoW2qmKj5WzG/dL8uUJ0361zaXtHqK7gEhOwtAtz7t3Yq3X5g==} + engines: {node: '>=18'} + ansi-regex@5.0.1: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} @@ -1437,6 +1997,13 @@ packages: aria-query@5.3.0: resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==} + array-union@2.1.0: + resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} + engines: {node: '>=8'} + + asap@2.0.6: + resolution: {integrity: sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==} + assert-plus@1.0.0: resolution: {integrity: sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==} engines: {node: '>=0.8'} @@ -1459,6 +2026,10 @@ packages: resolution: {integrity: sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==} engines: {node: '>= 4.0.0'} + auto-bind@4.0.0: + resolution: {integrity: sha512-Hdw8qdNiqdJ8LqT0iK0sVzkFbzg6fhnQqqfWhBDxcHZvU75+B+ayzTy8x+k5Ix0Y92XOhOUlx74ps+bA6BeYMQ==} + engines: {node: '>=8'} + axios@1.11.0: resolution: {integrity: sha512-1Lx3WLFQWm3ooKDYZD1eXmoGO9fxYQjrycfHFC8P0sCfQVXyROp0p9PFWBehewBOdCwHc+f/b8I0fMto5eSfwA==} @@ -1598,14 +2169,26 @@ packages: caniuse-lite@1.0.30001676: resolution: {integrity: sha512-Qz6zwGCiPghQXGJvgQAem79esjitvJ+CxSbSQkW9H/UX5hg8XM88d4lp2W+MEQ81j+Hip58Il+jGVdazk1z9cw==} + capital-case@1.0.4: + resolution: {integrity: sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A==} + chalk@4.1.2: resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} engines: {node: '>=10'} + change-case-all@1.0.15: + resolution: {integrity: sha512-3+GIFhk3sNuvFAJKU46o26OdzudQlPNBCu1ZQi3cMeMHhty1bhDxu2WrEilVNYaGvqUtR1VSigFcJOiS13dRhQ==} + + change-case@4.1.2: + resolution: {integrity: sha512-bSxY2ws9OtviILG1EiY5K7NNxkqg/JnRnFxLtKQ96JaviiIxi7djMrSd0ECT9AC+lttClmYwKw53BWpOMblo7A==} + char-regex@1.0.2: resolution: {integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==} engines: {node: '>=10'} + chardet@2.1.0: + resolution: {integrity: sha512-bNFETTG/pM5ryzQ9Ad0lJOTa6HWD/YsScAR3EnCPZRPlQh77JocYktSHOUHelyhm8IARL+o4c4F1bP5KVOjiRA==} + chownr@2.0.0: resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==} engines: {node: '>=10'} @@ -1644,6 +2227,10 @@ packages: resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==} engines: {node: '>=8'} + cli-cursor@5.0.0: + resolution: {integrity: sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==} + engines: {node: '>=18'} + cli-spinners@2.9.2: resolution: {integrity: sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==} engines: {node: '>=6'} @@ -1652,6 +2239,14 @@ packages: resolution: {integrity: sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==} engines: {node: '>=8'} + cli-truncate@4.0.0: + resolution: {integrity: sha512-nPdaFdQ0h/GEigbPClz11D0v/ZJEwxmeVZGeMo3Z5StPtUTkA9o1lD6QwoirYiSDzbcwn2XcjwmCp68W1IS4TA==} + engines: {node: '>=18'} + + cli-width@4.1.0: + resolution: {integrity: sha512-ouuZd4/dm2Sw5Gmqy6bGyNNNe1qt9RpmxveLSO7KcgsTnU7RXfsw+/bukWGo1abgBiMAic068rclZsO4IWmmxQ==} + engines: {node: '>= 12'} + cliui@8.0.1: resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} engines: {node: '>=12'} @@ -1717,6 +2312,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'} + compare-version@0.1.2: resolution: {integrity: sha512-pJDh5/4wrEnXX/VWRZvruAGHkzKdr46z11OlTPN+VrATlWWhSKewNCJ1futCO5C7eJB3nPMFZA1LeYtcFboZ2A==} engines: {node: '>=0.10.0'} @@ -1739,6 +2338,9 @@ packages: config-file-ts@0.2.8-rc1: resolution: {integrity: sha512-GtNECbVI82bT4RiDIzBSVuTKoSHufnU7Ce7/42bkWZJZFLjmDF2WBpVsvRkhKCfKBnTBb3qZrBwPpFBU/Myvhg==} + constant-case@3.0.4: + resolution: {integrity: sha512-I2hSBi7Vvs7BEuJDr5dDHfzb/Ruj3FyvFyh7KLilAjNQw3Be+xgqUBA2W6scVEcL0hL1dwPRtIqEPVUCKkSsyQ==} + convert-source-map@2.0.0: resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} @@ -1758,6 +2360,15 @@ packages: core-util-is@1.0.3: resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} + cosmiconfig@8.3.6: + resolution: {integrity: sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==} + engines: {node: '>=14'} + peerDependencies: + typescript: '>=4.9.5' + peerDependenciesMeta: + typescript: + optional: true + cosmiconfig@9.0.0: resolution: {integrity: sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==} engines: {node: '>=14'} @@ -1782,6 +2393,13 @@ packages: create-require@1.1.1: resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} + 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'} + cross-spawn@7.0.6: resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} engines: {node: '>= 8'} @@ -1891,13 +2509,24 @@ packages: csstype@3.1.3: resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} + data-uri-to-buffer@4.0.1: + resolution: {integrity: sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==} + engines: {node: '>= 12'} + data-urls@5.0.0: resolution: {integrity: sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==} engines: {node: '>=18'} + dataloader@2.2.3: + resolution: {integrity: sha512-y2krtASINtPFS1rSDjacrFgn1dcUuoREVabwlOGOe4SdxenREqwjwjElAdwvbGM7kgZz9a3KVicWR7vcz8rnzA==} + date-fns@4.1.0: resolution: {integrity: sha512-Ukq0owbQXxa/U3EGtsdVBkR1w7KOQ5gIBqdH2hkvknzZPYvBxb/aa6E8L7tmjFtkwZBu3UXBbjIgPo/Ez4xaNg==} + debounce@2.2.0: + resolution: {integrity: sha512-Xks6RUDLZFdz8LIdR6q0MTH44k7FikOmnh5xkSjMig6ch45afc8sjTjRQf3P6ax8dMgcQrYO/AR2RGWURrruqw==} + engines: {node: '>=18'} + debug@4.3.4: resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} engines: {node: '>=6.0'} @@ -1916,6 +2545,15 @@ packages: supports-color: optional: true + debug@4.4.1: + resolution: {integrity: sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + decimal.js@10.5.0: resolution: {integrity: sha512-8vDa8Qxvr/+d94hSh5P3IJwI5t8/c0KsMp+g8bNw9cY2icONa5aPfvKeieW1WlG0WQYwwhJ7mjui2xtiePQSXw==} @@ -1954,10 +2592,23 @@ packages: resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} engines: {node: '>=0.4.0'} + 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@1.0.3: + resolution: {integrity: sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==} + engines: {node: '>=0.10'} + hasBin: true + detect-libc@2.0.4: resolution: {integrity: sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==} engines: {node: '>=8'} @@ -1979,6 +2630,10 @@ packages: dir-compare@4.2.0: resolution: {integrity: sha512-2xMCmOoMrdQIPHdsTawECdNPwlVFB9zGcz3kuhmBO6U3oU+UQjsue0i8ayLKpgBcm+hcXPMVSGUN9d+pvJ6+VQ==} + dir-glob@3.0.1: + resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} + engines: {node: '>=8'} + dmg-builder@26.0.12: resolution: {integrity: sha512-59CAAjAhTaIMCN8y9kD573vDkxbs1uhDcrFLHSgutYdPcGOU35Rf95725snvzEOy4BFB7+eLJ8djCNPmGwG67w==} @@ -2038,6 +2693,10 @@ packages: resolution: {integrity: sha512-I9OvvrHp4pIARv4+x9iuewrWycX6CcZtoAu1XrzPxc5UygMJXJZYmBsynku8IkrJwgypE5DGNjDPmPRhDCptUg==} engines: {node: '>=10'} + dset@3.1.4: + resolution: {integrity: sha512-2QF/g9/zTaPDc3BjNcVTGoBbXBgYfMTTceLaYcFJ/W9kggFUkhxD/hMEeuLKbugyef9SqAx8cpgwlIP/jinUTA==} + engines: {node: '>=4'} + dunder-proto@1.0.1: resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} engines: {node: '>= 0.4'} @@ -2086,6 +2745,9 @@ packages: resolution: {integrity: sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==} engines: {node: '>=12'} + emoji-regex@10.5.0: + resolution: {integrity: sha512-lb49vf1Xzfx080OKA0o6l8DQQpV+6Vg95zyCJX9VB/BqKYlhG7N4wgROUUHRA+ZPUefLnteQOad7z1kT2bV7bg==} + emoji-regex@8.0.0: resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} @@ -2122,6 +2784,10 @@ packages: engines: {node: '>=4'} hasBin: true + 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==} @@ -2183,6 +2849,9 @@ packages: resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} engines: {node: '>=4.0'} + eventemitter3@5.0.1: + resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==} + events@3.3.0: resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==} engines: {node: '>=0.8.x'} @@ -2218,6 +2887,10 @@ packages: fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + fast-glob@3.3.3: + resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} + engines: {node: '>=8.6.0'} + fast-json-stable-stringify@2.1.0: resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} @@ -2228,9 +2901,18 @@ packages: resolution: {integrity: sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==} engines: {node: '>= 4.9.1'} + fastq@1.19.1: + resolution: {integrity: sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==} + 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==} + fd-slicer@1.1.0: resolution: {integrity: sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==} @@ -2242,6 +2924,10 @@ packages: picomatch: optional: true + fetch-blob@3.2.0: + resolution: {integrity: sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==} + engines: {node: ^12.20 || >= 14.13} + filelist@1.0.4: resolution: {integrity: sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==} @@ -2281,6 +2967,10 @@ packages: resolution: {integrity: sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow==} engines: {node: '>= 6'} + formdata-polyfill@4.0.10: + resolution: {integrity: sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==} + engines: {node: '>=12.20.0'} + fs-constants@1.0.0: resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} @@ -2323,6 +3013,10 @@ packages: 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'} @@ -2343,6 +3037,10 @@ packages: resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} engines: {node: '>=10'} + glob-parent@5.1.2: + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} + engines: {node: '>= 6'} + glob-parent@6.0.2: resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} engines: {node: '>=10.13.0'} @@ -2380,6 +3078,10 @@ packages: resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==} engines: {node: '>= 0.4'} + globby@11.1.0: + resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} + engines: {node: '>=10'} + gopd@1.2.0: resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} engines: {node: '>= 0.4'} @@ -2391,14 +3093,43 @@ packages: graceful-fs@4.2.11: resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} + graphql-config@5.1.5: + resolution: {integrity: sha512-mG2LL1HccpU8qg5ajLROgdsBzx/o2M6kgI3uAmoaXiSH9PCUbtIyLomLqUtCFaAeG2YCFsl0M5cfQ9rKmDoMVA==} + engines: {node: '>= 16.0.0'} + peerDependencies: + cosmiconfig-toml-loader: ^1.0.0 + graphql: ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 + peerDependenciesMeta: + cosmiconfig-toml-loader: + optional: true + 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@16.8.1: - resolution: {integrity: sha512-59LZHPdGZVh695Ud9lRzPBVTtlX9ZCV150Er2W43ro37wVof0ctenSaskPPjN7lVTIN8mSZt8PHUNKZuNQUuxw==} + graphql-ws@6.0.6: + resolution: {integrity: sha512-zgfER9s+ftkGKUZgc0xbx8T7/HMO4AV5/YuYiFc+AtgcO5T0v8AxYYNQ+ltzuzDZgNkYJaFspm5MMYLjQzrkmw==} + engines: {node: '>=20'} + peerDependencies: + '@fastify/websocket': ^10 || ^11 + crossws: ~0.3 + graphql: ^15.10.1 || ^16 + uWebSockets.js: ^20 + ws: ^8 + peerDependenciesMeta: + '@fastify/websocket': + optional: true + crossws: + optional: true + uWebSockets.js: + optional: true + ws: + optional: true + + graphql@16.11.0: + resolution: {integrity: sha512-mS1lbMsxgQj6hge1XZ6p7GPhbrtFwUFYi3wRzXAC/FmYnyXMTvvI3td3rjmQ2u8ewXueaSvRPWaEcgVVOT9Jnw==} engines: {node: ^12.22.0 || ^14.16.0 || ^16.0.0 || >=17.0.0} handlebars@4.7.8: @@ -2436,6 +3167,9 @@ packages: resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} hasBin: true + header-case@2.0.4: + resolution: {integrity: sha512-H/vuk5TEEVZwrR0lp2zed9OCo1uAILMlx0JEMgC26rzyJJ3N1v6XkwHHXJQdR2doSjcGPM6OKPYoJgf0plJ11Q==} + history@5.3.0: resolution: {integrity: sha512-ZqaKwjjrAYUYfLG+htGaIIZ4nioX2L70ZUMIFysS3xvBsSG4x/n1V6TXV3N8ZYNuFGlDirFg32T7B6WOUPDYcQ==} @@ -2530,10 +3264,22 @@ packages: ieee754@1.2.1: resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} + ignore@5.3.2: + resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} + engines: {node: '>= 4'} + + immutable@3.7.6: + resolution: {integrity: sha512-AizQPcaofEtO11RZhPPHBOJRdo/20MKQF9mBLnVkBoyHi1/zXK8fzVdnEpSV9gxqtnh6Qomfp3F0xT5qP/vThw==} + engines: {node: '>=0.8.0'} + import-fresh@3.3.0: resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} engines: {node: '>=6'} + import-from@4.0.0: + resolution: {integrity: sha512-P9J71vT5nLlDeV8FHs5nNxaLbrpfAV5cF5srvbZfpwpcJoM/xZR3hiv+q+SAnuSmuGbXMWud063iIMx/V/EWZQ==} + engines: {node: '>=12.2'} + import-local@3.1.0: resolution: {integrity: sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==} engines: {node: '>=8'} @@ -2566,10 +3312,17 @@ packages: resolution: {integrity: sha512-6xwYfHbajpoF0xLW+iwLkhwgvLoZDfjYfoFNu8ftMoXINzwuymNLd9u/KmwtdT2GbR+/Cz66otEGEVVUHX9QLQ==} engines: {node: '>=10.13.0'} + invariant@2.2.4: + resolution: {integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==} + ip-address@9.0.5: resolution: {integrity: sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==} engines: {node: '>= 12'} + is-absolute@1.0.0: + resolution: {integrity: sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==} + engines: {node: '>=0.10.0'} + is-arrayish@0.2.1: resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} @@ -2588,6 +3341,14 @@ packages: resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} engines: {node: '>=8'} + is-fullwidth-code-point@4.0.0: + resolution: {integrity: sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==} + engines: {node: '>=12'} + + is-fullwidth-code-point@5.1.0: + resolution: {integrity: sha512-5XHYaSyiqADb4RnZ1Bdad6cPp8Toise4TzEjcOYDHZkTCbKgiUl7WTUCpNWHuxmDt91wnsZBc9xinNzopv3JMQ==} + engines: {node: '>=18'} + is-generator-fn@2.1.0: resolution: {integrity: sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==} engines: {node: '>=6'} @@ -2603,6 +3364,9 @@ packages: is-lambda@1.0.1: resolution: {integrity: sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==} + is-lower-case@2.0.2: + resolution: {integrity: sha512-bVcMJy4X5Og6VZfdOZstSexlEy20Sr0k/p/b2IlQJlfdKAQuMpiv5w2Ccxb8sKdRUNAG1PnHVHjFSdRDVS6NlQ==} + is-number@7.0.0: resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} engines: {node: '>=0.12.0'} @@ -2614,14 +3378,29 @@ packages: is-potential-custom-element-name@1.0.1: resolution: {integrity: sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==} + is-relative@1.0.0: + resolution: {integrity: sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==} + engines: {node: '>=0.10.0'} + is-stream@2.0.1: resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} engines: {node: '>=8'} + 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-windows@1.0.2: + resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==} + engines: {node: '>=0.10.0'} + isarray@1.0.0: resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} @@ -2640,6 +3419,11 @@ packages: resolution: {integrity: sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==} engines: {node: '>=0.10.0'} + isomorphic-ws@5.0.0: + resolution: {integrity: sha512-muId7Zzn9ywDsyXgTIafTry2sV3nySZeUDe6YedVd1Hvuuep5AsIlqK+XefWpYTyJG5e503F2xIuT2lcU6rCSw==} + peerDependencies: + ws: '*' + istanbul-lib-coverage@3.2.2: resolution: {integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==} engines: {node: '>=8'} @@ -2892,6 +3676,10 @@ packages: json-stringify-safe@5.0.1: resolution: {integrity: sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==} + 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'} @@ -2995,6 +3783,10 @@ packages: lines-and-columns@1.2.4: resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} + listr2@9.0.3: + resolution: {integrity: sha512-0aeh5HHHgmq1KRdMMDHfhMWQmIT/m7nRDTlxlFqni2Sp0had9baqsjJRvDGdlvgd6NmPE0nPloOipiQJGFtTHQ==} + engines: {node: '>=20.0.0'} + loader-runner@4.3.0: resolution: {integrity: sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==} engines: {node: '>=6.11.5'} @@ -3031,6 +3823,9 @@ packages: lodash.memoize@4.1.2: resolution: {integrity: sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==} + lodash.sortby@4.7.0: + resolution: {integrity: sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==} + lodash.union@4.6.0: resolution: {integrity: sha512-c4pB2CdGrGdjMKYLA+XiRDO7Y0PRQbm/Gzg8qMj+QH+pFVAoTp5sBpO0odL3FjoPCGjK96p6qsP+yQoiLoOBcw==} @@ -3044,6 +3839,17 @@ packages: 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'} + + loose-envify@1.4.0: + 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==} @@ -3090,6 +3896,10 @@ packages: makeerror@1.0.12: resolution: {integrity: sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==} + map-cache@0.2.2: + resolution: {integrity: sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==} + engines: {node: '>=0.10.0'} + matcher@3.0.0: resolution: {integrity: sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==} engines: {node: '>=10'} @@ -3112,6 +3922,19 @@ packages: merge-stream@2.0.0: resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} + merge2@1.4.1: + resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} + engines: {node: '>= 8'} + + meros@1.3.1: + resolution: {integrity: sha512-eV7dRObfTrckdmAz4/n7pT1njIsIJXRIZkgCiX43xEsPNy4gjXQzOYYxmGcolAMtF7HyfqRuDBh3Lgs4hmhVEw==} + engines: {node: '>=13'} + peerDependencies: + '@types/node': '>=13' + peerDependenciesMeta: + '@types/node': + optional: true + micromatch@4.0.8: resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} engines: {node: '>=8.6'} @@ -3133,6 +3956,10 @@ packages: resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} engines: {node: '>=6'} + mimic-function@5.0.1: + resolution: {integrity: sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==} + engines: {node: '>=18'} + mimic-response@1.0.1: resolution: {integrity: sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==} engines: {node: '>=4'} @@ -3225,6 +4052,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} + nanoid@3.3.11: resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} @@ -3259,9 +4090,30 @@ packages: node-addon-api@1.7.2: resolution: {integrity: sha512-ibPK3iA+vaY1eEjESkQkM0BbCqFOaZMiXRTtdB0u7b4djtY6JnsjvPdUHVMg6xQt3B8fpTTWHI9A+ADjM9frzg==} + node-addon-api@7.1.1: + resolution: {integrity: sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==} + node-api-version@0.2.0: resolution: {integrity: sha512-fthTTsi8CxaBXMaBAD7ST2uylwvsnYxh2PfaScwpMhos6KlSFajXQPcM4ogNE1q2s3Lbz9GCGqeIHC+C6OZnKg==} + node-domexception@1.0.0: + resolution: {integrity: sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==} + 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==} @@ -3273,6 +4125,10 @@ packages: engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} hasBin: true + normalize-path@2.1.1: + resolution: {integrity: sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==} + engines: {node: '>=0.10.0'} + normalize-path@3.0.0: resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} engines: {node: '>=0.10.0'} @@ -3288,6 +4144,9 @@ packages: nth-check@2.1.1: resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} + nullthrows@1.1.1: + resolution: {integrity: sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw==} + nwsapi@2.2.20: resolution: {integrity: sha512-/ieB+mDe4MrrKMT8z+mQL8klXydZWGR5Dowt4RAGKbJ3kIGEx3X4ljUo+6V73IXtUPWgfOlU5B9MlGxFO5T+cA==} @@ -3306,6 +4165,10 @@ packages: resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} engines: {node: '>=6'} + onetime@7.0.0: + resolution: {integrity: sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==} + engines: {node: '>=18'} + ora@5.4.1: resolution: {integrity: sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==} engines: {node: '>=10'} @@ -3344,6 +4207,10 @@ packages: resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} engines: {node: '>=6'} + 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'} @@ -3354,6 +4221,9 @@ packages: pascal-case@3.1.2: resolution: {integrity: sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==} + path-case@3.0.4: + resolution: {integrity: sha512-qO4qCFjXqVTrcbPt/hQfhTQ+VhFsqNKOPtytgNKkKxSoEp3XPUQ8ObFuePylOIok5gjn69ry8XiULxCwot3Wfg==} + path-exists@4.0.0: resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} engines: {node: '>=8'} @@ -3369,6 +4239,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'} @@ -3377,6 +4255,10 @@ packages: resolution: {integrity: sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==} engines: {node: 20 || >=22} + path-type@4.0.0: + resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} + engines: {node: '>=8'} + pe-library@0.4.1: resolution: {integrity: sha512-eRWB5LBz7PpDu4PUlwT0PhnQfTQJlDDdPa35urV4Osrm0t0AqQFGn+UIkU3klZvwJ8KPO3VbBFsXquA6p6kqZw==} engines: {node: '>=12', npm: '>=6'} @@ -3667,6 +4549,9 @@ packages: resolution: {integrity: sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==} engines: {node: '>=10'} + promise@7.3.1: + resolution: {integrity: sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==} + propagate@2.0.1: resolution: {integrity: sha512-vGrhOavPSTz4QVNuBNdcNXePNdNMaO1xj9yBeH1ScQPjk/rhg9sSlCXPhMkFuaNNW/syTvYqsnbIJxMBfRbbag==} engines: {node: '>= 8'} @@ -3684,6 +4569,9 @@ packages: pure-rand@7.0.1: resolution: {integrity: sha512-oTUZM/NAZS8p7ANR3SHh30kXB+zK2r2BPcEn/awJIbOvq82WoMN4p62AWWp3Hhw50G0xMsw1mhIBLqHw64EcNQ==} + queue-microtask@1.2.3: + resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + quick-lru@5.1.1: resolution: {integrity: sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==} engines: {node: '>=10'} @@ -3770,6 +4658,18 @@ packages: resolution: {integrity: sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==} engines: {node: '>= 0.10'} + relay-runtime@12.0.0: + resolution: {integrity: sha512-QU6JKr1tMsry22DXNy9Whsq5rmvwr3LSZiiWV/9+DFpuTWvp+WFhobWMc8TC4OjKFfNhEZy7mOiqUAn5atQtug==} + + 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==} + renderkid@3.0.0: resolution: {integrity: sha512-q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg==} @@ -3811,10 +4711,21 @@ packages: resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==} engines: {node: '>=8'} + restore-cursor@5.1.0: + resolution: {integrity: sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==} + engines: {node: '>=18'} + retry@0.12.0: resolution: {integrity: sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==} engines: {node: '>= 4'} + reusify@1.1.0: + resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==} + engines: {iojs: '>=1.0.0', node: '>=0.10.0'} + + rfdc@1.4.1: + resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==} + rimraf@3.0.2: resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} deprecated: Rimraf versions prior to v4 are no longer supported @@ -3832,6 +4743,9 @@ packages: rrweb-cssom@0.8.0: resolution: {integrity: sha512-guoltQEx+9aMf2gDZ0s62EcV8lsXR+0w8915TC3ITdn2YueuNjdAYh/levpU9nFaoChh9RUS5ZdQMrKfVEN9tw==} + run-parallel@1.2.0: + resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} + rxjs@7.8.2: resolution: {integrity: sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==} @@ -3881,6 +4795,9 @@ packages: engines: {node: '>=10'} hasBin: true + sentence-case@3.0.4: + resolution: {integrity: sha512-8LS0JInaQMCRoQ7YUytAo/xUu5W2XnQxV2HI/6uM6U7CITS1RqPElr30V6uIqyMKM9lJGRVFy5/4CuzcixNYSg==} + serialize-error@7.0.1: resolution: {integrity: sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==} engines: {node: '>=10'} @@ -3891,6 +4808,9 @@ packages: set-cookie-parser@2.7.1: resolution: {integrity: sha512-IOc8uWeOZgnb3ptbCURJWNjWUPcO3ZnTTdzsurqERrP6nPyv+paC55vJM0LpOlT2ne+Ix+9+CRG1MNLlyZ4GjQ==} + 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'} @@ -3917,6 +4837,9 @@ packages: resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} engines: {node: '>=14'} + signedsource@1.0.0: + resolution: {integrity: sha512-6+eerH9fEnNmi/hyM1DXcRK3pWdoMQtlkQ+ns0ntzunjKqp5i3sKCc80ym8Fib3iaYhdJUOPdhlJWj1tvge2Ww==} + simple-update-notifier@2.0.0: resolution: {integrity: sha512-a2B9Y0KlNXl9u/vsW6sTIu9vGEpfKu2wRV6l1H3XEas/0gUIzGzBoP/IouTcUQbm9JWZLH3COxyn03TYlFax6w==} engines: {node: '>=10'} @@ -3929,10 +4852,21 @@ packages: resolution: {integrity: sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==} engines: {node: '>=8'} + slice-ansi@5.0.0: + resolution: {integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==} + engines: {node: '>=12'} + + slice-ansi@7.1.2: + resolution: {integrity: sha512-iOBWFgUX7caIZiuutICxVgX1SdxwAVFFKwt1EvMYYec/NWO5meOJ6K5uQxhrYBdQJne4KxiqZc+KptFOWFSI9w==} + engines: {node: '>=18'} + smart-buffer@4.2.0: resolution: {integrity: sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==} engines: {node: '>= 6.0.0', npm: '>= 3.0.0'} + snake-case@3.0.4: + resolution: {integrity: sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==} + socks-proxy-agent@7.0.0: resolution: {integrity: sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==} engines: {node: '>= 10'} @@ -3959,6 +4893,9 @@ packages: resolution: {integrity: sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==} engines: {node: '>= 8'} + sponge-case@1.0.1: + resolution: {integrity: sha512-dblb9Et4DAtiZ5YSUZHLl4XhH4uK80GhAZrVXdN4O2P4gQ40Wa5UIOPUHlA/nFd2PLblBZWUioLMMAVrgpoYcA==} + sprintf-js@1.0.3: resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} @@ -3977,6 +4914,9 @@ packages: resolution: {integrity: sha512-jH9EhtKIjuXZ2cWxmXS8ZP80XyC3iasQxMDV8jzhNJpfDb7VbQLVW4Wvsxz9QZvzV+G4YoSfBUVKDOyxLzi/sg==} engines: {node: '>= 6'} + string-env-interpolation@1.0.1: + resolution: {integrity: sha512-78lwMoCcn0nNu8LszbP1UA7g55OeE4v7rCeWnM5B453rnNr4aq+5it3FEYtZrSEiMvHZOZ9Jlqb0OD0M2VInqg==} + string-length@4.0.2: resolution: {integrity: sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==} engines: {node: '>=10'} @@ -3989,6 +4929,10 @@ packages: resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} engines: {node: '>=12'} + string-width@7.2.0: + resolution: {integrity: sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==} + engines: {node: '>=18'} + string_decoder@1.1.1: resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} @@ -4059,9 +5003,16 @@ 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==} + sync-fetch@0.6.0-2: + resolution: {integrity: sha512-c7AfkZ9udatCuAy9RSfiGPpeOKKUAUK5e1cXadLOGUjasdxqYqAK0jTNkM/FSEyJ3a5Ra27j/tw/PS0qLmaF/A==} + engines: {node: '>=18'} + synckit@0.11.8: resolution: {integrity: sha512-+XZ+r1XGIJGeQk3VvXhT6xx/VpbHsRzsTkGgF6E5RX9TTXD0118l87puaEBZ566FhqblC6U0d4XnubznJDm30A==} engines: {node: ^14.18.0 || >=16.0.0} @@ -4116,6 +5067,10 @@ packages: resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==} engines: {node: '>=8'} + timeout-signal@2.0.0: + resolution: {integrity: sha512-YBGpG4bWsHoPvofT6y/5iqulfXIiIErl5B0LdtHT1mGXDFTAhhRrbUpTvBgYbovr+3cKblya2WAOcpoy90XguA==} + engines: {node: '>=16'} + tiny-async-pool@1.3.0: resolution: {integrity: sha512-01EAw5EDrcVrdgyCLgoSPvqznC0sVxDSVeiOz09FUpjh71G79VCqneOr+xvt7T1r76CF6ZZfPjHorN2+d+3mqA==} @@ -4126,6 +5081,9 @@ packages: resolution: {integrity: sha512-qkf4trmKSIiMTs/E63cxH+ojC2unam7rJ0WrauAzpT3ECNTxGRMlaXxVbfxMUC/w0LaYk6jQ4y/nGR9uBO3tww==} engines: {node: '>=12.0.0'} + title-case@3.0.3: + resolution: {integrity: sha512-e1zGYRvbffpcHIrnuqT0Dh+gEJtDaxDSoG4JAIpq4oDFyooziLBIiYQv0GBT4FUAnUop5uZ1hiIAj7oAF6sOCA==} + tldts-core@6.1.86: resolution: {integrity: sha512-Je6p7pkk+KMzMv2XXKmAE3McmolOQFdxkKw0R8EYNr7sELW46JqnNeTX8ybPiQgvg1ymCoF8LXs5fzFaZvJPTA==} @@ -4151,6 +5109,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'} @@ -4196,6 +5157,9 @@ packages: typescript: '*' webpack: ^5.0.0 + ts-log@2.2.7: + resolution: {integrity: sha512-320x5Ggei84AxzlXp91QkIGSw5wgaLT6GeAH0KsqDmRZdVWW2OiSeVvElVoatk3f7nicwXlElXsoFkARiGE2yg==} + ts-node@10.9.2: resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==} hasBin: true @@ -4213,6 +5177,9 @@ packages: tslib@2.6.2: resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} + tslib@2.8.1: + resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} + type-check@0.4.0: resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} engines: {node: '>= 0.8.0'} @@ -4238,11 +5205,19 @@ packages: engines: {node: '>=14.17'} hasBin: true + ua-parser-js@1.0.41: + resolution: {integrity: sha512-LbBDqdIC5s8iROCUjMbW1f5dJQTEFB1+KO9ogbvlb3nm9n4YHa5p4KTvFPWvh2Hs8gZMBuiB1/8+pdfe/tDPug==} + hasBin: true + uglify-js@3.19.3: resolution: {integrity: sha512-v3Xu+yuwBXisp6QYTcH4UbH+xYJXqnq2m/LtQVWKWzYc1iehYnLixoQDN9FH6/j9/oybfd6W9Ghwkl8+UMKTKQ==} engines: {node: '>=0.8.0'} hasBin: true + 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==} @@ -4262,6 +5237,10 @@ packages: resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} engines: {node: '>= 10.0.0'} + unixify@1.0.0: + resolution: {integrity: sha512-6bc58dPYhCMHHuwxldQxO3RRNZ4eCogZ/st++0+fcC1nr0jiGUtAdBJ2qzmLQWSxbtz42pWt4QQMiZ9HvZf5cg==} + engines: {node: '>=0.10.0'} + unrs-resolver@1.8.1: resolution: {integrity: sha512-M5++xH5Tu/m3NNAc0+dBHidXfF6bTC08mfhQ3AB5UTonEzQSH9ASC/a7EbZN3WU5m0OWMTvf12GHVJZ3uUmPtA==} @@ -4271,9 +5250,18 @@ 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==} + uri-js@4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} + urlpattern-polyfill@10.1.0: + resolution: {integrity: sha512-IGjKp/o0NL3Bso1PymYURCJxMPNAf/ILOpendP9f5B6e1rTJgdgiOvgfoT8VxCAdY+Wisb9uhGaJJf3yZ2V9nw==} + utf8-byte-length@1.0.4: resolution: {integrity: sha512-4+wkEYLBbWxqTahEsWrhxepcoVOJ+1z5PGIjPZxRkytcdSUaNjIjBM7Xn8E+pdSuV7SzvWovBFA54FO0JSoqhA==} @@ -4308,6 +5296,13 @@ packages: wcwidth@1.0.1: resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==} + web-streams-polyfill@3.3.3: + 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'} @@ -4356,6 +5351,9 @@ packages: resolution: {integrity: sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==} engines: {node: '>=18'} + whatwg-url@5.0.0: + resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} + which@2.0.2: resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} engines: {node: '>= 8'} @@ -4367,6 +5365,10 @@ packages: wordwrap@1.0.0: resolution: {integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==} + 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'} @@ -4375,6 +5377,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==} @@ -4394,6 +5400,18 @@ packages: utf-8-validate: optional: true + ws@8.18.3: + resolution: {integrity: sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==} + engines: {node: '>=10.0.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: '>=5.0.2' + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + xml-name-validator@5.0.0: resolution: {integrity: sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==} engines: {node: '>=18'} @@ -4419,6 +5437,11 @@ packages: resolution: {integrity: sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==} engines: {node: '>=18'} + yaml@2.8.1: + resolution: {integrity: sha512-lcYcMxX2PO9XMGvAJkJ3OsNMw+/7FKes7/hgerGUYWIoWu5j/+YQqcZr5JnPZWzOsEBgMbSbiSTn/dv/69Mkpw==} + engines: {node: '>= 14.6'} + hasBin: true + yargs-parser@21.1.1: resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} engines: {node: '>=12'} @@ -4438,6 +5461,10 @@ packages: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} + yoctocolors-cjs@2.1.3: + resolution: {integrity: sha512-U/PBtDf35ff0D8X8D0jfdzHYEPFxAI7jJlxZXwCSez5M3190m+QobIfh+sWDWSHMCWWJN2AWamkegn6vr6YBTw==} + engines: {node: '>=18'} + zip-stream@4.1.1: resolution: {integrity: sha512-9qv4rlDiopXg4E69k+vMHjNN63YFMe9sZMrdlvKnCjlCRWeCBswPPMPUfx+ipsAWq1LXHe70RcbaHdJJpS6hyQ==} engines: {node: '>= 10'} @@ -4446,6 +5473,16 @@ snapshots: 7zip-bin@5.2.0: {} + '@0no-co/graphql.web@1.2.0(graphql@16.11.0)': + optionalDependencies: + graphql: 16.11.0 + + '@0no-co/graphqlsp@1.15.0(graphql@16.11.0)(typescript@5.9.2)': + dependencies: + '@gql.tada/internal': 1.0.8(graphql@16.11.0)(typescript@5.9.2) + graphql: 16.11.0 + typescript: 5.9.2 + '@adobe/css-tools@4.4.2': {} '@alloc/quick-lru@5.2.0': {} @@ -4455,6 +5492,22 @@ snapshots: '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 + '@ardatan/relay-compiler@12.0.3(encoding@0.1.13)(graphql@16.11.0)': + dependencies: + '@babel/generator': 7.27.5 + '@babel/parser': 7.27.5 + '@babel/runtime': 7.28.4 + chalk: 4.1.2 + fb-watchman: 2.0.2 + graphql: 16.11.0 + immutable: 3.7.6 + invariant: 2.2.4 + nullthrows: 1.1.1 + relay-runtime: 12.0.0(encoding@0.1.13) + 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) @@ -4560,6 +5613,11 @@ snapshots: '@babel/core': 7.27.4 '@babel/helper-plugin-utils': 7.27.1 + '@babel/plugin-syntax-import-assertions@7.27.1(@babel/core@7.27.4)': + dependencies: + '@babel/core': 7.27.4 + '@babel/helper-plugin-utils': 7.27.1 + '@babel/plugin-syntax-import-attributes@7.27.1(@babel/core@7.27.4)': dependencies: '@babel/core': 7.27.4 @@ -4629,6 +5687,8 @@ snapshots: dependencies: regenerator-runtime: 0.14.1 + '@babel/runtime@7.28.4': {} + '@babel/template@7.27.2': dependencies: '@babel/code-frame': 7.27.1 @@ -4727,166 +5787,738 @@ snapshots: '@discoveryjs/json-ext@0.6.3': {} - '@electron/asar@3.2.18': + '@electron/asar@3.2.18': + dependencies: + commander: 5.1.0 + glob: 7.2.3 + minimatch: 3.1.2 + + '@electron/fuses@1.8.0': + dependencies: + chalk: 4.1.2 + fs-extra: 9.1.0 + minimist: 1.2.8 + + '@electron/get@2.0.3': + dependencies: + debug: 4.4.0 + env-paths: 2.2.1 + fs-extra: 8.1.0 + got: 11.8.6 + progress: 2.0.3 + semver: 6.3.1 + sumchecker: 3.0.1 + optionalDependencies: + global-agent: 3.0.0 + transitivePeerDependencies: + - supports-color + + '@electron/node-gyp@https://codeload.github.com/electron/node-gyp/tar.gz/06b29aafb7708acef8b3669835c8a7857ebc92d2': + dependencies: + env-paths: 2.2.1 + exponential-backoff: 3.1.1 + glob: 8.1.0 + graceful-fs: 4.2.11 + make-fetch-happen: 10.2.1 + nopt: 6.0.0 + proc-log: 2.0.1 + semver: 7.7.2 + tar: 6.2.1 + which: 2.0.2 + transitivePeerDependencies: + - bluebird + - supports-color + + '@electron/notarize@2.2.1': + dependencies: + debug: 4.4.1 + fs-extra: 9.1.0 + promise-retry: 2.0.1 + transitivePeerDependencies: + - supports-color + + '@electron/notarize@2.5.0': + dependencies: + debug: 4.4.0 + fs-extra: 9.1.0 + promise-retry: 2.0.1 + transitivePeerDependencies: + - supports-color + + '@electron/notarize@3.1.0': + dependencies: + debug: 4.4.0 + promise-retry: 2.0.1 + transitivePeerDependencies: + - supports-color + + '@electron/osx-sign@1.0.5': + dependencies: + compare-version: 0.1.2 + debug: 4.4.1 + fs-extra: 10.1.0 + isbinaryfile: 4.0.10 + minimist: 1.2.8 + plist: 3.1.0 + transitivePeerDependencies: + - supports-color + + '@electron/osx-sign@1.3.1': + dependencies: + compare-version: 0.1.2 + debug: 4.4.0 + fs-extra: 10.1.0 + isbinaryfile: 4.0.10 + minimist: 1.2.8 + plist: 3.1.0 + transitivePeerDependencies: + - supports-color + + '@electron/rebuild@3.7.0': + dependencies: + '@electron/node-gyp': https://codeload.github.com/electron/node-gyp/tar.gz/06b29aafb7708acef8b3669835c8a7857ebc92d2 + '@malept/cross-spawn-promise': 2.0.0 + chalk: 4.1.2 + debug: 4.4.0 + detect-libc: 2.0.4 + fs-extra: 10.1.0 + got: 11.8.6 + node-abi: 3.67.0 + node-api-version: 0.2.0 + ora: 5.4.1 + read-binary-file-arch: 1.0.6 + semver: 7.7.2 + tar: 6.2.1 + yargs: 17.7.2 + transitivePeerDependencies: + - bluebird + - supports-color + + '@electron/universal@1.5.1': + dependencies: + '@electron/asar': 3.2.18 + '@malept/cross-spawn-promise': 1.1.1 + debug: 4.4.1 + dir-compare: 3.3.0 + fs-extra: 9.1.0 + minimatch: 3.1.2 + plist: 3.1.0 + transitivePeerDependencies: + - supports-color + + '@electron/universal@2.0.1': + dependencies: + '@electron/asar': 3.2.18 + '@malept/cross-spawn-promise': 2.0.0 + debug: 4.4.0 + dir-compare: 4.2.0 + fs-extra: 11.2.0 + minimatch: 9.0.5 + plist: 3.1.0 + transitivePeerDependencies: + - supports-color + + '@emnapi/core@1.4.3': + dependencies: + '@emnapi/wasi-threads': 1.0.2 + tslib: 2.6.2 + optional: true + + '@emnapi/runtime@1.4.3': + dependencies: + tslib: 2.6.2 + optional: true + + '@emnapi/wasi-threads@1.0.2': + dependencies: + tslib: 2.6.2 + optional: true + + '@emotion/is-prop-valid@1.2.2': + dependencies: + '@emotion/memoize': 0.8.1 + + '@emotion/memoize@0.8.1': {} + + '@emotion/unitless@0.8.1': {} + + '@envelop/core@5.3.1': + dependencies: + '@envelop/instrumentation': 1.0.0 + '@envelop/types': 5.2.1 + '@whatwg-node/promise-helpers': 1.3.2 + tslib: 2.8.1 + + '@envelop/instrumentation@1.0.0': + dependencies: + '@whatwg-node/promise-helpers': 1.3.2 + tslib: 2.8.1 + + '@envelop/types@5.2.1': + dependencies: + '@whatwg-node/promise-helpers': 1.3.2 + tslib: 2.8.1 + + '@fastify/busboy@3.2.0': {} + + '@gar/promisify@1.1.3': {} + + '@github/relative-time-element@4.4.8': {} + + '@github/tab-container-element@4.8.2': {} + + '@gql.tada/internal@1.0.8(graphql@16.11.0)(typescript@5.9.2)': + dependencies: + '@0no-co/graphql.web': 1.2.0(graphql@16.11.0) + graphql: 16.11.0 + typescript: 5.9.2 + + '@graphql-codegen/add@6.0.0(graphql@16.11.0)': + dependencies: + '@graphql-codegen/plugin-helpers': 6.0.0(graphql@16.11.0) + graphql: 16.11.0 + tslib: 2.6.2 + + '@graphql-codegen/cli@6.0.0(@parcel/watcher@2.5.1)(@types/node@22.18.1)(encoding@0.1.13)(graphql@16.11.0)(typescript@5.9.2)': + dependencies: + '@babel/generator': 7.27.5 + '@babel/template': 7.27.2 + '@babel/types': 7.27.6 + '@graphql-codegen/client-preset': 5.0.0(encoding@0.1.13)(graphql@16.11.0) + '@graphql-codegen/core': 5.0.0(graphql@16.11.0) + '@graphql-codegen/plugin-helpers': 6.0.0(graphql@16.11.0) + '@graphql-tools/apollo-engine-loader': 8.0.22(graphql@16.11.0) + '@graphql-tools/code-file-loader': 8.1.22(graphql@16.11.0) + '@graphql-tools/git-loader': 8.0.26(graphql@16.11.0) + '@graphql-tools/github-loader': 8.0.22(@types/node@22.18.1)(graphql@16.11.0) + '@graphql-tools/graphql-file-loader': 8.1.1(graphql@16.11.0) + '@graphql-tools/json-file-loader': 8.0.20(graphql@16.11.0) + '@graphql-tools/load': 8.1.2(graphql@16.11.0) + '@graphql-tools/url-loader': 8.0.33(@types/node@22.18.1)(graphql@16.11.0) + '@graphql-tools/utils': 10.9.1(graphql@16.11.0) + '@inquirer/prompts': 7.8.4(@types/node@22.18.1) + '@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.11.0 + graphql-config: 5.1.5(@types/node@22.18.1)(graphql@16.11.0)(typescript@5.9.2) + is-glob: 4.0.3 + jiti: 2.5.1 + json-to-pretty-yaml: 1.2.2 + listr2: 9.0.3 + 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.6.2 + yaml: 2.8.1 + yargs: 17.7.2 + optionalDependencies: + '@parcel/watcher': 2.5.1 + 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.0(encoding@0.1.13)(graphql@16.11.0)': + dependencies: + '@babel/helper-plugin-utils': 7.27.1 + '@babel/template': 7.27.2 + '@graphql-codegen/add': 6.0.0(graphql@16.11.0) + '@graphql-codegen/gql-tag-operations': 5.0.0(encoding@0.1.13)(graphql@16.11.0) + '@graphql-codegen/plugin-helpers': 6.0.0(graphql@16.11.0) + '@graphql-codegen/typed-document-node': 6.0.0(encoding@0.1.13)(graphql@16.11.0) + '@graphql-codegen/typescript': 5.0.0(encoding@0.1.13)(graphql@16.11.0) + '@graphql-codegen/typescript-operations': 5.0.0(encoding@0.1.13)(graphql@16.11.0) + '@graphql-codegen/visitor-plugin-common': 6.0.0(encoding@0.1.13)(graphql@16.11.0) + '@graphql-tools/documents': 1.0.1(graphql@16.11.0) + '@graphql-tools/utils': 10.9.1(graphql@16.11.0) + '@graphql-typed-document-node/core': 3.2.0(graphql@16.11.0) + graphql: 16.11.0 + tslib: 2.6.2 + transitivePeerDependencies: + - encoding + + '@graphql-codegen/core@5.0.0(graphql@16.11.0)': + dependencies: + '@graphql-codegen/plugin-helpers': 6.0.0(graphql@16.11.0) + '@graphql-tools/schema': 10.0.25(graphql@16.11.0) + '@graphql-tools/utils': 10.9.1(graphql@16.11.0) + graphql: 16.11.0 + tslib: 2.6.2 + + '@graphql-codegen/gql-tag-operations@5.0.0(encoding@0.1.13)(graphql@16.11.0)': + dependencies: + '@graphql-codegen/plugin-helpers': 6.0.0(graphql@16.11.0) + '@graphql-codegen/visitor-plugin-common': 6.0.0(encoding@0.1.13)(graphql@16.11.0) + '@graphql-tools/utils': 10.9.1(graphql@16.11.0) + auto-bind: 4.0.0 + graphql: 16.11.0 + tslib: 2.6.2 + transitivePeerDependencies: + - encoding + + '@graphql-codegen/plugin-helpers@6.0.0(graphql@16.11.0)': + dependencies: + '@graphql-tools/utils': 10.9.1(graphql@16.11.0) + change-case-all: 1.0.15 + common-tags: 1.8.2 + graphql: 16.11.0 + import-from: 4.0.0 + lodash: 4.17.21 + tslib: 2.6.2 + + '@graphql-codegen/schema-ast@5.0.0(graphql@16.11.0)': + dependencies: + '@graphql-codegen/plugin-helpers': 6.0.0(graphql@16.11.0) + '@graphql-tools/utils': 10.9.1(graphql@16.11.0) + graphql: 16.11.0 + tslib: 2.6.2 + + '@graphql-codegen/typed-document-node@6.0.0(encoding@0.1.13)(graphql@16.11.0)': + dependencies: + '@graphql-codegen/plugin-helpers': 6.0.0(graphql@16.11.0) + '@graphql-codegen/visitor-plugin-common': 6.0.0(encoding@0.1.13)(graphql@16.11.0) + auto-bind: 4.0.0 + change-case-all: 1.0.15 + graphql: 16.11.0 + tslib: 2.6.2 + transitivePeerDependencies: + - encoding + + '@graphql-codegen/typescript-operations@5.0.0(encoding@0.1.13)(graphql@16.11.0)': + dependencies: + '@graphql-codegen/plugin-helpers': 6.0.0(graphql@16.11.0) + '@graphql-codegen/typescript': 5.0.0(encoding@0.1.13)(graphql@16.11.0) + '@graphql-codegen/visitor-plugin-common': 6.0.0(encoding@0.1.13)(graphql@16.11.0) + auto-bind: 4.0.0 + graphql: 16.11.0 + tslib: 2.6.2 + transitivePeerDependencies: + - encoding + + '@graphql-codegen/typescript@5.0.0(encoding@0.1.13)(graphql@16.11.0)': + dependencies: + '@graphql-codegen/plugin-helpers': 6.0.0(graphql@16.11.0) + '@graphql-codegen/schema-ast': 5.0.0(graphql@16.11.0) + '@graphql-codegen/visitor-plugin-common': 6.0.0(encoding@0.1.13)(graphql@16.11.0) + auto-bind: 4.0.0 + graphql: 16.11.0 + tslib: 2.6.2 + transitivePeerDependencies: + - encoding + + '@graphql-codegen/visitor-plugin-common@6.0.0(encoding@0.1.13)(graphql@16.11.0)': + dependencies: + '@graphql-codegen/plugin-helpers': 6.0.0(graphql@16.11.0) + '@graphql-tools/optimize': 2.0.0(graphql@16.11.0) + '@graphql-tools/relay-operation-optimizer': 7.0.21(encoding@0.1.13)(graphql@16.11.0) + '@graphql-tools/utils': 10.9.1(graphql@16.11.0) + auto-bind: 4.0.0 + change-case-all: 1.0.15 + dependency-graph: 1.0.0 + graphql: 16.11.0 + graphql-tag: 2.12.6(graphql@16.11.0) + parse-filepath: 1.0.2 + tslib: 2.6.2 + transitivePeerDependencies: + - encoding + + '@graphql-hive/signal@1.0.0': {} + + '@graphql-tools/apollo-engine-loader@8.0.22(graphql@16.11.0)': + dependencies: + '@graphql-tools/utils': 10.9.1(graphql@16.11.0) + '@whatwg-node/fetch': 0.10.10 + graphql: 16.11.0 + sync-fetch: 0.6.0-2 + tslib: 2.6.2 + + '@graphql-tools/batch-execute@9.0.19(graphql@16.11.0)': + dependencies: + '@graphql-tools/utils': 10.9.1(graphql@16.11.0) + '@whatwg-node/promise-helpers': 1.3.2 + dataloader: 2.2.3 + graphql: 16.11.0 + tslib: 2.8.1 + + '@graphql-tools/code-file-loader@8.1.22(graphql@16.11.0)': + dependencies: + '@graphql-tools/graphql-tag-pluck': 8.3.21(graphql@16.11.0) + '@graphql-tools/utils': 10.9.1(graphql@16.11.0) + globby: 11.1.0 + graphql: 16.11.0 + tslib: 2.6.2 + unixify: 1.0.0 + transitivePeerDependencies: + - supports-color + + '@graphql-tools/delegate@10.2.23(graphql@16.11.0)': + dependencies: + '@graphql-tools/batch-execute': 9.0.19(graphql@16.11.0) + '@graphql-tools/executor': 1.4.9(graphql@16.11.0) + '@graphql-tools/schema': 10.0.25(graphql@16.11.0) + '@graphql-tools/utils': 10.9.1(graphql@16.11.0) + '@repeaterjs/repeater': 3.0.6 + '@whatwg-node/promise-helpers': 1.3.2 + dataloader: 2.2.3 + dset: 3.1.4 + graphql: 16.11.0 + tslib: 2.8.1 + + '@graphql-tools/documents@1.0.1(graphql@16.11.0)': + dependencies: + graphql: 16.11.0 + lodash.sortby: 4.7.0 + tslib: 2.6.2 + + '@graphql-tools/executor-common@0.0.4(graphql@16.11.0)': + dependencies: + '@envelop/core': 5.3.1 + '@graphql-tools/utils': 10.9.1(graphql@16.11.0) + graphql: 16.11.0 + + '@graphql-tools/executor-common@0.0.6(graphql@16.11.0)': + dependencies: + '@envelop/core': 5.3.1 + '@graphql-tools/utils': 10.9.1(graphql@16.11.0) + graphql: 16.11.0 + + '@graphql-tools/executor-graphql-ws@2.0.7(graphql@16.11.0)': + dependencies: + '@graphql-tools/executor-common': 0.0.6(graphql@16.11.0) + '@graphql-tools/utils': 10.9.1(graphql@16.11.0) + '@whatwg-node/disposablestack': 0.0.6 + graphql: 16.11.0 + graphql-ws: 6.0.6(graphql@16.11.0)(ws@8.18.3) + isomorphic-ws: 5.0.0(ws@8.18.3) + tslib: 2.8.1 + ws: 8.18.3 + transitivePeerDependencies: + - '@fastify/websocket' + - bufferutil + - crossws + - uWebSockets.js + - utf-8-validate + + '@graphql-tools/executor-http@1.3.3(@types/node@22.18.1)(graphql@16.11.0)': + dependencies: + '@graphql-hive/signal': 1.0.0 + '@graphql-tools/executor-common': 0.0.4(graphql@16.11.0) + '@graphql-tools/utils': 10.9.1(graphql@16.11.0) + '@repeaterjs/repeater': 3.0.6 + '@whatwg-node/disposablestack': 0.0.6 + '@whatwg-node/fetch': 0.10.10 + '@whatwg-node/promise-helpers': 1.3.2 + graphql: 16.11.0 + meros: 1.3.1(@types/node@22.18.1) + tslib: 2.8.1 + transitivePeerDependencies: + - '@types/node' + + '@graphql-tools/executor-legacy-ws@1.1.19(graphql@16.11.0)': dependencies: - commander: 5.1.0 - glob: 7.2.3 - minimatch: 3.1.2 + '@graphql-tools/utils': 10.9.1(graphql@16.11.0) + '@types/ws': 8.18.1 + graphql: 16.11.0 + isomorphic-ws: 5.0.0(ws@8.18.0) + tslib: 2.6.2 + ws: 8.18.0 + transitivePeerDependencies: + - bufferutil + - utf-8-validate - '@electron/fuses@1.8.0': + '@graphql-tools/executor@1.4.9(graphql@16.11.0)': dependencies: - chalk: 4.1.2 - fs-extra: 9.1.0 - minimist: 1.2.8 + '@graphql-tools/utils': 10.9.1(graphql@16.11.0) + '@graphql-typed-document-node/core': 3.2.0(graphql@16.11.0) + '@repeaterjs/repeater': 3.0.6 + '@whatwg-node/disposablestack': 0.0.6 + '@whatwg-node/promise-helpers': 1.3.2 + graphql: 16.11.0 + tslib: 2.8.1 - '@electron/get@2.0.3': + '@graphql-tools/git-loader@8.0.26(graphql@16.11.0)': dependencies: - debug: 4.4.0 - env-paths: 2.2.1 - fs-extra: 8.1.0 - got: 11.8.6 - progress: 2.0.3 - semver: 6.3.1 - sumchecker: 3.0.1 - optionalDependencies: - global-agent: 3.0.0 + '@graphql-tools/graphql-tag-pluck': 8.3.21(graphql@16.11.0) + '@graphql-tools/utils': 10.9.1(graphql@16.11.0) + graphql: 16.11.0 + is-glob: 4.0.3 + micromatch: 4.0.8 + tslib: 2.6.2 + unixify: 1.0.0 transitivePeerDependencies: - supports-color - '@electron/node-gyp@https://codeload.github.com/electron/node-gyp/tar.gz/06b29aafb7708acef8b3669835c8a7857ebc92d2': + '@graphql-tools/github-loader@8.0.22(@types/node@22.18.1)(graphql@16.11.0)': dependencies: - env-paths: 2.2.1 - exponential-backoff: 3.1.1 - glob: 8.1.0 - graceful-fs: 4.2.11 - make-fetch-happen: 10.2.1 - nopt: 6.0.0 - proc-log: 2.0.1 - semver: 7.7.2 - tar: 6.2.1 - which: 2.0.2 + '@graphql-tools/executor-http': 1.3.3(@types/node@22.18.1)(graphql@16.11.0) + '@graphql-tools/graphql-tag-pluck': 8.3.21(graphql@16.11.0) + '@graphql-tools/utils': 10.9.1(graphql@16.11.0) + '@whatwg-node/fetch': 0.10.10 + '@whatwg-node/promise-helpers': 1.3.2 + graphql: 16.11.0 + sync-fetch: 0.6.0-2 + tslib: 2.6.2 transitivePeerDependencies: - - bluebird + - '@types/node' - supports-color - '@electron/notarize@2.2.1': + '@graphql-tools/graphql-file-loader@8.1.1(graphql@16.11.0)': dependencies: - debug: 4.4.0 - fs-extra: 9.1.0 - promise-retry: 2.0.1 + '@graphql-tools/import': 7.1.1(graphql@16.11.0) + '@graphql-tools/utils': 10.9.1(graphql@16.11.0) + globby: 11.1.0 + graphql: 16.11.0 + tslib: 2.6.2 + unixify: 1.0.0 transitivePeerDependencies: - supports-color - '@electron/notarize@2.5.0': + '@graphql-tools/graphql-tag-pluck@8.3.21(graphql@16.11.0)': dependencies: - debug: 4.4.0 - fs-extra: 9.1.0 - promise-retry: 2.0.1 + '@babel/core': 7.27.4 + '@babel/parser': 7.27.5 + '@babel/plugin-syntax-import-assertions': 7.27.1(@babel/core@7.27.4) + '@babel/traverse': 7.27.4 + '@babel/types': 7.27.6 + '@graphql-tools/utils': 10.9.1(graphql@16.11.0) + graphql: 16.11.0 + tslib: 2.6.2 transitivePeerDependencies: - supports-color - '@electron/notarize@3.1.0': + '@graphql-tools/import@7.1.1(graphql@16.11.0)': dependencies: - debug: 4.4.0 - promise-retry: 2.0.1 + '@graphql-tools/utils': 10.9.1(graphql@16.11.0) + '@theguild/federation-composition': 0.19.1(graphql@16.11.0) + graphql: 16.11.0 + resolve-from: 5.0.0 + tslib: 2.6.2 transitivePeerDependencies: - supports-color - '@electron/osx-sign@1.0.5': + '@graphql-tools/json-file-loader@8.0.20(graphql@16.11.0)': dependencies: - compare-version: 0.1.2 - debug: 4.4.0 - fs-extra: 10.1.0 - isbinaryfile: 4.0.10 - minimist: 1.2.8 - plist: 3.1.0 - transitivePeerDependencies: - - supports-color + '@graphql-tools/utils': 10.9.1(graphql@16.11.0) + globby: 11.1.0 + graphql: 16.11.0 + tslib: 2.6.2 + unixify: 1.0.0 - '@electron/osx-sign@1.3.1': + '@graphql-tools/load@8.1.2(graphql@16.11.0)': dependencies: - compare-version: 0.1.2 - debug: 4.4.0 - fs-extra: 10.1.0 - isbinaryfile: 4.0.10 - minimist: 1.2.8 - plist: 3.1.0 - transitivePeerDependencies: - - supports-color + '@graphql-tools/schema': 10.0.25(graphql@16.11.0) + '@graphql-tools/utils': 10.9.1(graphql@16.11.0) + graphql: 16.11.0 + p-limit: 3.1.0 + tslib: 2.6.2 - '@electron/rebuild@3.7.0': + '@graphql-tools/merge@9.1.1(graphql@16.11.0)': dependencies: - '@electron/node-gyp': https://codeload.github.com/electron/node-gyp/tar.gz/06b29aafb7708acef8b3669835c8a7857ebc92d2 - '@malept/cross-spawn-promise': 2.0.0 - chalk: 4.1.2 - debug: 4.4.0 - detect-libc: 2.0.4 - fs-extra: 10.1.0 - got: 11.8.6 - node-abi: 3.67.0 - node-api-version: 0.2.0 - ora: 5.4.1 - read-binary-file-arch: 1.0.6 - semver: 7.7.2 - tar: 6.2.1 - yargs: 17.7.2 - transitivePeerDependencies: - - bluebird - - supports-color + '@graphql-tools/utils': 10.9.1(graphql@16.11.0) + graphql: 16.11.0 + tslib: 2.6.2 - '@electron/universal@1.5.1': + '@graphql-tools/optimize@2.0.0(graphql@16.11.0)': dependencies: - '@electron/asar': 3.2.18 - '@malept/cross-spawn-promise': 1.1.1 - debug: 4.4.0 - dir-compare: 3.3.0 - fs-extra: 9.1.0 - minimatch: 3.1.2 - plist: 3.1.0 - transitivePeerDependencies: - - supports-color + graphql: 16.11.0 + tslib: 2.6.2 - '@electron/universal@2.0.1': + '@graphql-tools/relay-operation-optimizer@7.0.21(encoding@0.1.13)(graphql@16.11.0)': dependencies: - '@electron/asar': 3.2.18 - '@malept/cross-spawn-promise': 2.0.0 - debug: 4.4.0 - dir-compare: 4.2.0 - fs-extra: 11.2.0 - minimatch: 9.0.5 - plist: 3.1.0 + '@ardatan/relay-compiler': 12.0.3(encoding@0.1.13)(graphql@16.11.0) + '@graphql-tools/utils': 10.9.1(graphql@16.11.0) + graphql: 16.11.0 + tslib: 2.6.2 transitivePeerDependencies: - - supports-color + - encoding - '@emnapi/core@1.4.3': + '@graphql-tools/schema@10.0.25(graphql@16.11.0)': dependencies: - '@emnapi/wasi-threads': 1.0.2 + '@graphql-tools/merge': 9.1.1(graphql@16.11.0) + '@graphql-tools/utils': 10.9.1(graphql@16.11.0) + graphql: 16.11.0 tslib: 2.6.2 - optional: true - '@emnapi/runtime@1.4.3': - dependencies: + '@graphql-tools/url-loader@8.0.33(@types/node@22.18.1)(graphql@16.11.0)': + dependencies: + '@graphql-tools/executor-graphql-ws': 2.0.7(graphql@16.11.0) + '@graphql-tools/executor-http': 1.3.3(@types/node@22.18.1)(graphql@16.11.0) + '@graphql-tools/executor-legacy-ws': 1.1.19(graphql@16.11.0) + '@graphql-tools/utils': 10.9.1(graphql@16.11.0) + '@graphql-tools/wrap': 10.1.4(graphql@16.11.0) + '@types/ws': 8.18.1 + '@whatwg-node/fetch': 0.10.10 + '@whatwg-node/promise-helpers': 1.3.2 + graphql: 16.11.0 + isomorphic-ws: 5.0.0(ws@8.18.0) + sync-fetch: 0.6.0-2 tslib: 2.6.2 - optional: true + ws: 8.18.0 + transitivePeerDependencies: + - '@fastify/websocket' + - '@types/node' + - bufferutil + - crossws + - uWebSockets.js + - utf-8-validate - '@emnapi/wasi-threads@1.0.2': + '@graphql-tools/utils@10.9.1(graphql@16.11.0)': dependencies: + '@graphql-typed-document-node/core': 3.2.0(graphql@16.11.0) + '@whatwg-node/promise-helpers': 1.3.2 + cross-inspect: 1.0.1 + dset: 3.1.4 + graphql: 16.11.0 tslib: 2.6.2 - optional: true - '@emotion/is-prop-valid@1.2.2': + '@graphql-tools/wrap@10.1.4(graphql@16.11.0)': dependencies: - '@emotion/memoize': 0.8.1 + '@graphql-tools/delegate': 10.2.23(graphql@16.11.0) + '@graphql-tools/schema': 10.0.25(graphql@16.11.0) + '@graphql-tools/utils': 10.9.1(graphql@16.11.0) + '@whatwg-node/promise-helpers': 1.3.2 + graphql: 16.11.0 + tslib: 2.8.1 - '@emotion/memoize@0.8.1': {} + '@graphql-typed-document-node/core@3.2.0(graphql@16.11.0)': + dependencies: + graphql: 16.11.0 - '@emotion/unitless@0.8.1': {} + '@inquirer/checkbox@4.2.2(@types/node@22.18.1)': + dependencies: + '@inquirer/core': 10.2.0(@types/node@22.18.1) + '@inquirer/figures': 1.0.13 + '@inquirer/type': 3.0.8(@types/node@22.18.1) + ansi-escapes: 4.3.2 + yoctocolors-cjs: 2.1.3 + optionalDependencies: + '@types/node': 22.18.1 - '@gar/promisify@1.1.3': {} + '@inquirer/confirm@5.1.16(@types/node@22.18.1)': + dependencies: + '@inquirer/core': 10.2.0(@types/node@22.18.1) + '@inquirer/type': 3.0.8(@types/node@22.18.1) + optionalDependencies: + '@types/node': 22.18.1 - '@github/relative-time-element@4.4.8': {} + '@inquirer/core@10.2.0(@types/node@22.18.1)': + dependencies: + '@inquirer/figures': 1.0.13 + '@inquirer/type': 3.0.8(@types/node@22.18.1) + ansi-escapes: 4.3.2 + 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.1 - '@github/tab-container-element@4.8.2': {} + '@inquirer/editor@4.2.18(@types/node@22.18.1)': + dependencies: + '@inquirer/core': 10.2.0(@types/node@22.18.1) + '@inquirer/external-editor': 1.0.1(@types/node@22.18.1) + '@inquirer/type': 3.0.8(@types/node@22.18.1) + optionalDependencies: + '@types/node': 22.18.1 + + '@inquirer/expand@4.0.18(@types/node@22.18.1)': + dependencies: + '@inquirer/core': 10.2.0(@types/node@22.18.1) + '@inquirer/type': 3.0.8(@types/node@22.18.1) + yoctocolors-cjs: 2.1.3 + optionalDependencies: + '@types/node': 22.18.1 + + '@inquirer/external-editor@1.0.1(@types/node@22.18.1)': + dependencies: + chardet: 2.1.0 + iconv-lite: 0.6.3 + optionalDependencies: + '@types/node': 22.18.1 + + '@inquirer/figures@1.0.13': {} + + '@inquirer/input@4.2.2(@types/node@22.18.1)': + dependencies: + '@inquirer/core': 10.2.0(@types/node@22.18.1) + '@inquirer/type': 3.0.8(@types/node@22.18.1) + optionalDependencies: + '@types/node': 22.18.1 + + '@inquirer/number@3.0.18(@types/node@22.18.1)': + dependencies: + '@inquirer/core': 10.2.0(@types/node@22.18.1) + '@inquirer/type': 3.0.8(@types/node@22.18.1) + optionalDependencies: + '@types/node': 22.18.1 + + '@inquirer/password@4.0.18(@types/node@22.18.1)': + dependencies: + '@inquirer/core': 10.2.0(@types/node@22.18.1) + '@inquirer/type': 3.0.8(@types/node@22.18.1) + ansi-escapes: 4.3.2 + optionalDependencies: + '@types/node': 22.18.1 + + '@inquirer/prompts@7.8.4(@types/node@22.18.1)': + dependencies: + '@inquirer/checkbox': 4.2.2(@types/node@22.18.1) + '@inquirer/confirm': 5.1.16(@types/node@22.18.1) + '@inquirer/editor': 4.2.18(@types/node@22.18.1) + '@inquirer/expand': 4.0.18(@types/node@22.18.1) + '@inquirer/input': 4.2.2(@types/node@22.18.1) + '@inquirer/number': 3.0.18(@types/node@22.18.1) + '@inquirer/password': 4.0.18(@types/node@22.18.1) + '@inquirer/rawlist': 4.1.6(@types/node@22.18.1) + '@inquirer/search': 3.1.1(@types/node@22.18.1) + '@inquirer/select': 4.3.2(@types/node@22.18.1) + optionalDependencies: + '@types/node': 22.18.1 + + '@inquirer/rawlist@4.1.6(@types/node@22.18.1)': + dependencies: + '@inquirer/core': 10.2.0(@types/node@22.18.1) + '@inquirer/type': 3.0.8(@types/node@22.18.1) + yoctocolors-cjs: 2.1.3 + optionalDependencies: + '@types/node': 22.18.1 + + '@inquirer/search@3.1.1(@types/node@22.18.1)': + dependencies: + '@inquirer/core': 10.2.0(@types/node@22.18.1) + '@inquirer/figures': 1.0.13 + '@inquirer/type': 3.0.8(@types/node@22.18.1) + yoctocolors-cjs: 2.1.3 + optionalDependencies: + '@types/node': 22.18.1 + + '@inquirer/select@4.3.2(@types/node@22.18.1)': + dependencies: + '@inquirer/core': 10.2.0(@types/node@22.18.1) + '@inquirer/figures': 1.0.13 + '@inquirer/type': 3.0.8(@types/node@22.18.1) + ansi-escapes: 4.3.2 + yoctocolors-cjs: 2.1.3 + optionalDependencies: + '@types/node': 22.18.1 + + '@inquirer/type@3.0.8(@types/node@22.18.1)': + optionalDependencies: + '@types/node': 22.18.1 '@isaacs/cliui@8.0.2': dependencies: @@ -5205,6 +6837,18 @@ snapshots: '@tybys/wasm-util': 0.9.0 optional: true + '@nodelib/fs.scandir@2.1.5': + dependencies: + '@nodelib/fs.stat': 2.0.5 + run-parallel: 1.2.0 + + '@nodelib/fs.stat@2.0.5': {} + + '@nodelib/fs.walk@1.2.8': + dependencies: + '@nodelib/fs.scandir': 2.1.5 + fastq: 1.19.1 + '@npmcli/fs@2.1.2': dependencies: '@gar/promisify': 1.1.3 @@ -5217,6 +6861,66 @@ snapshots: '@oddbird/popover-polyfill@0.5.2': {} + '@parcel/watcher-android-arm64@2.5.1': + optional: true + + '@parcel/watcher-darwin-arm64@2.5.1': + optional: true + + '@parcel/watcher-darwin-x64@2.5.1': + optional: true + + '@parcel/watcher-freebsd-x64@2.5.1': + optional: true + + '@parcel/watcher-linux-arm-glibc@2.5.1': + optional: true + + '@parcel/watcher-linux-arm-musl@2.5.1': + optional: true + + '@parcel/watcher-linux-arm64-glibc@2.5.1': + optional: true + + '@parcel/watcher-linux-arm64-musl@2.5.1': + optional: true + + '@parcel/watcher-linux-x64-glibc@2.5.1': + optional: true + + '@parcel/watcher-linux-x64-musl@2.5.1': + optional: true + + '@parcel/watcher-win32-arm64@2.5.1': + optional: true + + '@parcel/watcher-win32-ia32@2.5.1': + optional: true + + '@parcel/watcher-win32-x64@2.5.1': + optional: true + + '@parcel/watcher@2.5.1': + dependencies: + detect-libc: 1.0.3 + is-glob: 4.0.3 + micromatch: 4.0.8 + node-addon-api: 7.1.1 + optionalDependencies: + '@parcel/watcher-android-arm64': 2.5.1 + '@parcel/watcher-darwin-arm64': 2.5.1 + '@parcel/watcher-darwin-x64': 2.5.1 + '@parcel/watcher-freebsd-x64': 2.5.1 + '@parcel/watcher-linux-arm-glibc': 2.5.1 + '@parcel/watcher-linux-arm-musl': 2.5.1 + '@parcel/watcher-linux-arm64-glibc': 2.5.1 + '@parcel/watcher-linux-arm64-musl': 2.5.1 + '@parcel/watcher-linux-x64-glibc': 2.5.1 + '@parcel/watcher-linux-x64-musl': 2.5.1 + '@parcel/watcher-win32-arm64': 2.5.1 + '@parcel/watcher-win32-ia32': 2.5.1 + '@parcel/watcher-win32-x64': 2.5.1 + '@pkgjs/parseargs@0.11.0': optional: true @@ -5275,6 +6979,8 @@ snapshots: '@types/react-dom': 19.1.9(@types/react@19.1.12) '@types/react-is': 18.3.0 + '@repeaterjs/repeater@3.0.6': {} + '@sinclair/typebox@0.27.8': {} '@sinclair/typebox@0.34.33': {} @@ -5427,7 +7133,7 @@ snapshots: '@testing-library/dom@10.0.0': dependencies: '@babel/code-frame': 7.27.1 - '@babel/runtime': 7.24.1 + '@babel/runtime': 7.28.4 '@types/aria-query': 5.0.4 aria-query: 5.3.0 chalk: 4.1.2 @@ -5458,6 +7164,16 @@ snapshots: dependencies: '@testing-library/dom': 10.0.0 + '@theguild/federation-composition@0.19.1(graphql@16.11.0)': + dependencies: + constant-case: 3.0.4 + debug: 4.4.1 + graphql: 16.11.0 + json5: 2.2.3 + lodash.sortby: 4.7.0 + transitivePeerDependencies: + - supports-color + '@tootallnate/once@2.0.0': {} '@trysound/sax@0.2.0': {} @@ -5621,6 +7337,10 @@ snapshots: '@types/verror@1.10.10': optional: true + '@types/ws@8.18.1': + dependencies: + '@types/node': 22.18.1 + '@types/yargs-parser@21.0.3': {} '@types/yargs@17.0.33': @@ -5775,8 +7495,29 @@ snapshots: '@webpack-cli/serve@3.0.1(webpack-cli@6.0.1)(webpack@5.101.3)': dependencies: - webpack: 5.101.3(webpack-cli@6.0.1) - webpack-cli: 6.0.1(webpack@5.101.3) + webpack: 5.101.3(webpack-cli@6.0.1) + webpack-cli: 6.0.1(webpack@5.101.3) + + '@whatwg-node/disposablestack@0.0.6': + dependencies: + '@whatwg-node/promise-helpers': 1.3.2 + tslib: 2.8.1 + + '@whatwg-node/fetch@0.10.10': + dependencies: + '@whatwg-node/node-fetch': 0.7.25 + urlpattern-polyfill: 10.1.0 + + '@whatwg-node/node-fetch@0.7.25': + dependencies: + '@fastify/busboy': 3.2.0 + '@whatwg-node/disposablestack': 0.0.6 + '@whatwg-node/promise-helpers': 1.3.2 + tslib: 2.8.1 + + '@whatwg-node/promise-helpers@1.3.2': + dependencies: + tslib: 2.8.1 '@xmldom/xmldom@0.8.10': {} @@ -5800,7 +7541,7 @@ snapshots: agent-base@6.0.2: dependencies: - debug: 4.4.0 + debug: 4.4.1 transitivePeerDependencies: - supports-color @@ -5846,6 +7587,10 @@ snapshots: dependencies: type-fest: 0.21.3 + ansi-escapes@7.1.0: + dependencies: + environment: 1.1.0 + ansi-regex@5.0.1: {} ansi-regex@6.0.1: {} @@ -5880,7 +7625,7 @@ snapshots: builder-util: 24.13.1 builder-util-runtime: 9.2.4 chromium-pickle-js: 0.2.0 - debug: 4.4.0 + debug: 4.4.1 dmg-builder: 26.0.12(electron-builder-squirrel-windows@24.13.3) ejs: 3.1.10 electron-builder-squirrel-windows: 24.13.3(dmg-builder@26.0.12) @@ -5990,6 +7735,10 @@ snapshots: dependencies: dequal: 2.0.3 + array-union@2.1.0: {} + + asap@2.0.6: {} + assert-plus@1.0.0: optional: true @@ -6004,6 +7753,8 @@ snapshots: at-least-node@1.0.0: {} + auto-bind@4.0.0: {} + axios@1.11.0: dependencies: follow-redirects: 1.15.6 @@ -6128,7 +7879,7 @@ snapshots: builder-util-runtime@9.2.4: dependencies: - debug: 4.4.0 + debug: 4.4.1 sax: 1.3.0 transitivePeerDependencies: - supports-color @@ -6149,7 +7900,7 @@ snapshots: builder-util-runtime: 9.2.4 chalk: 4.1.2 cross-spawn: 7.0.6 - debug: 4.4.0 + debug: 4.4.1 fs-extra: 10.1.0 http-proxy-agent: 5.0.0 https-proxy-agent: 5.0.1 @@ -6245,13 +7996,49 @@ snapshots: caniuse-lite@1.0.30001676: {} + capital-case@1.0.4: + dependencies: + no-case: 3.0.4 + tslib: 2.6.2 + upper-case-first: 2.0.2 + chalk@4.1.2: dependencies: ansi-styles: 4.3.0 supports-color: 7.2.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.6.2 + char-regex@1.0.2: {} + chardet@2.1.0: {} + chownr@2.0.0: {} chownr@3.0.0: {} @@ -6276,6 +8063,10 @@ snapshots: dependencies: restore-cursor: 3.1.0 + cli-cursor@5.0.0: + dependencies: + restore-cursor: 5.1.0 + cli-spinners@2.9.2: {} cli-truncate@2.1.0: @@ -6284,6 +8075,13 @@ snapshots: string-width: 4.2.3 optional: true + cli-truncate@4.0.0: + dependencies: + slice-ansi: 5.0.0 + string-width: 7.2.0 + + cli-width@4.1.0: {} + cliui@8.0.1: dependencies: string-width: 4.2.3 @@ -6334,6 +8132,8 @@ snapshots: commander@8.3.0: {} + common-tags@1.8.2: {} + compare-version@0.1.2: {} compress-commons@4.1.2: @@ -6364,6 +8164,12 @@ snapshots: glob: 10.4.5 typescript: 5.9.2 + constant-case@3.0.4: + dependencies: + no-case: 3.0.4 + tslib: 2.6.2 + upper-case: 2.0.2 + convert-source-map@2.0.0: {} cookie@1.0.2: {} @@ -6382,6 +8188,15 @@ snapshots: core-util-is@1.0.3: {} + cosmiconfig@8.3.6(typescript@5.9.2): + dependencies: + import-fresh: 3.3.0 + js-yaml: 4.1.0 + parse-json: 5.2.0 + path-type: 4.0.0 + optionalDependencies: + typescript: 5.9.2 + cosmiconfig@9.0.0(typescript@5.9.2): dependencies: env-paths: 2.2.1 @@ -6405,6 +8220,16 @@ snapshots: create-require@1.1.1: {} + cross-fetch@3.2.0(encoding@0.1.13): + dependencies: + node-fetch: 2.7.0(encoding@0.1.13) + transitivePeerDependencies: + - encoding + + cross-inspect@1.0.1: + dependencies: + tslib: 2.6.2 + cross-spawn@7.0.6: dependencies: path-key: 3.1.1 @@ -6533,13 +8358,19 @@ snapshots: csstype@3.1.3: {} + data-uri-to-buffer@4.0.1: {} + data-urls@5.0.0: dependencies: whatwg-mimetype: 4.0.0 whatwg-url: 14.2.0 + dataloader@2.2.3: {} + date-fns@4.1.0: {} + debounce@2.2.0: {} + debug@4.3.4: dependencies: ms: 2.1.2 @@ -6548,6 +8379,10 @@ snapshots: dependencies: ms: 2.1.3 + debug@4.4.1: + dependencies: + ms: 2.1.3 + decimal.js@10.5.0: {} decompress-response@6.0.0: @@ -6580,8 +8415,14 @@ snapshots: delayed-stream@1.0.0: {} + dependency-graph@1.0.0: {} + dequal@2.0.3: {} + detect-indent@6.1.0: {} + + detect-libc@1.0.3: {} + detect-libc@2.0.4: {} detect-newline@3.1.0: {} @@ -6601,6 +8442,10 @@ snapshots: minimatch: 3.1.2 p-limit: 3.1.0 + dir-glob@3.0.1: + dependencies: + path-type: 4.0.0 + dmg-builder@26.0.12(electron-builder-squirrel-windows@24.13.3): dependencies: app-builder-lib: 26.0.12(dmg-builder@26.0.12)(electron-builder-squirrel-windows@24.13.3) @@ -6685,6 +8530,8 @@ snapshots: dotenv@9.0.2: {} + dset@3.1.4: {} + dunder-proto@1.0.1: dependencies: call-bind-apply-helpers: 1.0.2 @@ -6778,6 +8625,8 @@ snapshots: emittery@0.13.1: {} + emoji-regex@10.5.0: {} + emoji-regex@8.0.0: {} emoji-regex@9.2.2: {} @@ -6806,6 +8655,8 @@ snapshots: envinfo@7.14.0: {} + environment@1.1.0: {} + err-code@2.0.3: {} error-ex@1.3.2: @@ -6854,6 +8705,8 @@ snapshots: estraverse@5.3.0: {} + eventemitter3@5.0.1: {} + events@3.3.0: {} execa@5.1.1: @@ -6905,16 +8758,42 @@ snapshots: fast-deep-equal@3.1.3: {} + fast-glob@3.3.3: + dependencies: + '@nodelib/fs.stat': 2.0.5 + '@nodelib/fs.walk': 1.2.8 + glob-parent: 5.1.2 + merge2: 1.4.1 + micromatch: 4.0.8 + fast-json-stable-stringify@2.1.0: {} fast-uri@3.0.2: {} fastest-levenshtein@1.0.16: {} + fastq@1.19.1: + dependencies: + reusify: 1.1.0 + fb-watchman@2.0.2: dependencies: bser: 2.1.1 + fbjs-css-vars@1.0.2: {} + + fbjs@3.0.5(encoding@0.1.13): + dependencies: + cross-fetch: 3.2.0(encoding@0.1.13) + 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 + fd-slicer@1.1.0: dependencies: pend: 1.2.0 @@ -6923,6 +8802,11 @@ snapshots: optionalDependencies: picomatch: 4.0.2 + fetch-blob@3.2.0: + dependencies: + node-domexception: 1.0.0 + web-streams-polyfill: 3.3.3 + filelist@1.0.4: dependencies: minimatch: 5.1.6 @@ -6959,6 +8843,10 @@ snapshots: hasown: 2.0.2 mime-types: 2.1.35 + formdata-polyfill@4.0.10: + dependencies: + fetch-blob: 3.2.0 + fs-constants@1.0.0: {} fs-extra@10.1.0: @@ -7001,6 +8889,8 @@ snapshots: 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 @@ -7027,6 +8917,10 @@ snapshots: get-stream@6.0.1: {} + glob-parent@5.1.2: + dependencies: + is-glob: 4.0.3 + glob-parent@6.0.2: dependencies: is-glob: 4.0.3 @@ -7085,6 +8979,15 @@ snapshots: define-properties: 1.2.1 optional: true + globby@11.1.0: + dependencies: + array-union: 2.1.0 + dir-glob: 3.0.1 + fast-glob: 3.3.3 + ignore: 5.3.2 + merge2: 1.4.1 + slash: 3.0.0 + gopd@1.2.0: {} got@11.8.6: @@ -7103,12 +9006,42 @@ snapshots: graceful-fs@4.2.11: {} - graphql-tag@2.12.6(graphql@16.8.1): + graphql-config@5.1.5(@types/node@22.18.1)(graphql@16.11.0)(typescript@5.9.2): + dependencies: + '@graphql-tools/graphql-file-loader': 8.1.1(graphql@16.11.0) + '@graphql-tools/json-file-loader': 8.0.20(graphql@16.11.0) + '@graphql-tools/load': 8.1.2(graphql@16.11.0) + '@graphql-tools/merge': 9.1.1(graphql@16.11.0) + '@graphql-tools/url-loader': 8.0.33(@types/node@22.18.1)(graphql@16.11.0) + '@graphql-tools/utils': 10.9.1(graphql@16.11.0) + cosmiconfig: 8.3.6(typescript@5.9.2) + graphql: 16.11.0 + jiti: 2.5.1 + minimatch: 9.0.5 + string-env-interpolation: 1.0.1 + tslib: 2.6.2 + transitivePeerDependencies: + - '@fastify/websocket' + - '@types/node' + - bufferutil + - crossws + - supports-color + - typescript + - uWebSockets.js + - utf-8-validate + + graphql-tag@2.12.6(graphql@16.11.0): dependencies: - graphql: 16.8.1 + graphql: 16.11.0 tslib: 2.6.2 - graphql@16.8.1: {} + graphql-ws@6.0.6(graphql@16.11.0)(ws@8.18.3): + dependencies: + graphql: 16.11.0 + optionalDependencies: + ws: 8.18.3 + + graphql@16.11.0: {} handlebars@4.7.8: dependencies: @@ -7142,6 +9075,11 @@ snapshots: he@1.2.0: {} + header-case@2.0.4: + dependencies: + capital-case: 1.0.4 + tslib: 2.6.2 + history@5.3.0: dependencies: '@babel/runtime': 7.24.1 @@ -7191,7 +9129,7 @@ snapshots: dependencies: '@tootallnate/once': 2.0.0 agent-base: 6.0.2 - debug: 4.4.0 + debug: 4.4.1 transitivePeerDependencies: - supports-color @@ -7210,7 +9148,7 @@ snapshots: https-proxy-agent@5.0.1: dependencies: agent-base: 6.0.2 - debug: 4.4.0 + debug: 4.4.1 transitivePeerDependencies: - supports-color @@ -7249,11 +9187,17 @@ snapshots: ieee754@1.2.1: {} + ignore@5.3.2: {} + + immutable@3.7.6: {} + import-fresh@3.3.0: dependencies: parent-module: 1.0.1 resolve-from: 4.0.0 + import-from@4.0.0: {} + import-local@3.1.0: dependencies: pkg-dir: 4.2.0 @@ -7279,11 +9223,20 @@ snapshots: interpret@3.1.1: {} + invariant@2.2.4: + dependencies: + loose-envify: 1.4.0 + ip-address@9.0.5: dependencies: jsbn: 1.1.0 sprintf-js: 1.1.3 + is-absolute@1.0.0: + dependencies: + is-relative: 1.0.0 + is-windows: 1.0.2 + is-arrayish@0.2.1: {} is-ci@3.0.1: @@ -7298,6 +9251,12 @@ snapshots: is-fullwidth-code-point@3.0.0: {} + is-fullwidth-code-point@4.0.0: {} + + is-fullwidth-code-point@5.1.0: + dependencies: + get-east-asian-width: 1.4.0 + is-generator-fn@2.1.0: {} is-glob@4.0.3: @@ -7308,6 +9267,10 @@ snapshots: is-lambda@1.0.1: {} + is-lower-case@2.0.2: + dependencies: + tslib: 2.6.2 + is-number@7.0.0: {} is-plain-object@2.0.4: @@ -7316,10 +9279,24 @@ snapshots: is-potential-custom-element-name@1.0.1: {} + is-relative@1.0.0: + dependencies: + is-unc-path: 1.0.0 + is-stream@2.0.1: {} + 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.6.2 + + is-windows@1.0.2: {} + isarray@1.0.0: {} isbinaryfile@4.0.10: {} @@ -7330,6 +9307,14 @@ snapshots: isobject@3.0.1: {} + isomorphic-ws@5.0.0(ws@8.18.0): + dependencies: + ws: 8.18.0 + + isomorphic-ws@5.0.0(ws@8.18.3): + dependencies: + ws: 8.18.3 + istanbul-lib-coverage@3.2.2: {} istanbul-lib-instrument@6.0.2: @@ -7823,6 +9808,11 @@ snapshots: json-stringify-safe@5.0.1: {} + json-to-pretty-yaml@1.2.2: + dependencies: + remedial: 1.0.8 + remove-trailing-spaces: 1.0.9 + json5@2.2.3: {} jsonfile@4.0.0: @@ -7904,6 +9894,15 @@ snapshots: lines-and-columns@1.2.4: {} + listr2@9.0.3: + dependencies: + cli-truncate: 4.0.0 + colorette: 2.0.20 + eventemitter3: 5.0.1 + log-update: 6.1.0 + rfdc: 1.4.1 + wrap-ansi: 9.0.2 + loader-runner@4.3.0: {} locate-path@5.0.0: @@ -7928,6 +9927,8 @@ snapshots: lodash.memoize@4.1.2: {} + lodash.sortby@4.7.0: {} + lodash.union@4.6.0: {} lodash.uniq@4.5.0: {} @@ -7939,6 +9940,22 @@ snapshots: chalk: 4.1.2 is-unicode-supported: 0.1.0 + log-update@6.1.0: + dependencies: + ansi-escapes: 7.1.0 + cli-cursor: 5.0.0 + slice-ansi: 7.1.2 + strip-ansi: 7.1.0 + wrap-ansi: 9.0.2 + + loose-envify@1.4.0: + dependencies: + js-tokens: 4.0.0 + + lower-case-first@2.0.2: + dependencies: + tslib: 2.6.2 + lower-case@2.0.2: dependencies: tslib: 2.6.2 @@ -7997,6 +10014,8 @@ snapshots: dependencies: tmpl: 1.0.5 + map-cache@0.2.2: {} + matcher@3.0.0: dependencies: escape-string-regexp: 4.0.0 @@ -8015,6 +10034,12 @@ snapshots: merge-stream@2.0.0: {} + merge2@1.4.1: {} + + meros@1.3.1(@types/node@22.18.1): + optionalDependencies: + '@types/node': 22.18.1 + micromatch@4.0.8: dependencies: braces: 3.0.3 @@ -8030,6 +10055,8 @@ snapshots: mimic-fn@2.1.0: {} + mimic-function@5.0.1: {} + mimic-response@1.0.1: {} mimic-response@3.1.0: {} @@ -8109,6 +10136,8 @@ snapshots: ms@2.1.3: {} + mute-stream@2.0.0: {} + nanoid@3.3.11: {} napi-postinstall@0.2.4: {} @@ -8139,10 +10168,26 @@ snapshots: node-addon-api@1.7.2: optional: true + node-addon-api@7.1.1: {} + node-api-version@0.2.0: dependencies: semver: 7.7.2 + node-domexception@1.0.0: {} + + node-fetch@2.7.0(encoding@0.1.13): + dependencies: + whatwg-url: 5.0.0 + optionalDependencies: + encoding: 0.1.13 + + 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.18: {} @@ -8151,6 +10196,10 @@ snapshots: dependencies: abbrev: 1.1.1 + normalize-path@2.1.1: + dependencies: + remove-trailing-separator: 1.1.0 + normalize-path@3.0.0: {} normalize-url@6.1.0: {} @@ -8163,6 +10212,8 @@ snapshots: dependencies: boolbase: 1.0.0 + nullthrows@1.1.1: {} + nwsapi@2.2.20: {} object-assign@4.1.1: {} @@ -8178,6 +10229,10 @@ snapshots: dependencies: mimic-fn: 2.1.0 + onetime@7.0.0: + dependencies: + mimic-function: 5.0.1 + ora@5.4.1: dependencies: bl: 4.1.0 @@ -8221,6 +10276,12 @@ snapshots: dependencies: callsites: 3.1.0 + 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 @@ -8237,6 +10298,11 @@ snapshots: no-case: 3.0.4 tslib: 2.6.2 + path-case@3.0.4: + dependencies: + dot-case: 3.0.4 + tslib: 2.6.2 + path-exists@4.0.0: {} path-is-absolute@1.0.1: {} @@ -8245,6 +10311,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 @@ -8255,6 +10327,8 @@ snapshots: lru-cache: 11.0.0 minipass: 7.1.2 + path-type@4.0.0: {} + pe-library@0.4.1: {} pend@1.2.0: {} @@ -8520,6 +10594,10 @@ snapshots: err-code: 2.0.3 retry: 0.12.0 + promise@7.3.1: + dependencies: + asap: 2.0.6 + propagate@2.0.1: {} proxy-from-env@1.1.0: {} @@ -8533,6 +10611,8 @@ snapshots: pure-rand@7.0.1: {} + queue-microtask@1.2.3: {} + quick-lru@5.1.1: {} randombytes@2.1.0: @@ -8622,6 +10702,20 @@ snapshots: relateurl@0.2.7: {} + relay-runtime@12.0.0(encoding@0.1.13): + dependencies: + '@babel/runtime': 7.28.4 + fbjs: 3.0.5(encoding@0.1.13) + invariant: 2.2.4 + transitivePeerDependencies: + - encoding + + remedial@1.0.8: {} + + remove-trailing-separator@1.1.0: {} + + remove-trailing-spaces@1.0.9: {} + renderkid@3.0.0: dependencies: css-select: 4.3.0 @@ -8663,8 +10757,17 @@ snapshots: onetime: 5.1.2 signal-exit: 3.0.7 + restore-cursor@5.1.0: + dependencies: + onetime: 7.0.0 + signal-exit: 4.1.0 + retry@0.12.0: {} + reusify@1.1.0: {} + + rfdc@1.4.1: {} + rimraf@3.0.2: dependencies: glob: 7.2.3 @@ -8686,6 +10789,10 @@ snapshots: rrweb-cssom@0.8.0: {} + run-parallel@1.2.0: + dependencies: + queue-microtask: 1.2.3 + rxjs@7.8.2: dependencies: tslib: 2.6.2 @@ -8731,6 +10838,12 @@ snapshots: semver@7.7.2: {} + sentence-case@3.0.4: + dependencies: + no-case: 3.0.4 + tslib: 2.6.2 + upper-case-first: 2.0.2 + serialize-error@7.0.1: dependencies: type-fest: 0.13.1 @@ -8742,6 +10855,8 @@ snapshots: set-cookie-parser@2.7.1: {} + setimmediate@1.0.5: {} + shallow-clone@3.0.1: dependencies: kind-of: 6.0.3 @@ -8760,6 +10875,8 @@ snapshots: signal-exit@4.1.0: {} + signedsource@1.0.0: {} + simple-update-notifier@2.0.0: dependencies: semver: 7.7.2 @@ -8773,12 +10890,27 @@ snapshots: is-fullwidth-code-point: 3.0.0 optional: true + slice-ansi@5.0.0: + dependencies: + ansi-styles: 6.2.1 + is-fullwidth-code-point: 4.0.0 + + slice-ansi@7.1.2: + dependencies: + ansi-styles: 6.2.1 + is-fullwidth-code-point: 5.1.0 + smart-buffer@4.2.0: {} + snake-case@3.0.4: + dependencies: + dot-case: 3.0.4 + tslib: 2.6.2 + socks-proxy-agent@7.0.0: dependencies: agent-base: 6.0.2 - debug: 4.4.0 + debug: 4.4.1 socks: 2.8.3 transitivePeerDependencies: - supports-color @@ -8804,6 +10936,10 @@ snapshots: source-map@0.7.4: {} + sponge-case@1.0.1: + dependencies: + tslib: 2.6.2 + sprintf-js@1.0.3: {} sprintf-js@1.1.3: {} @@ -8818,6 +10954,8 @@ snapshots: stat-mode@1.0.0: {} + string-env-interpolation@1.0.1: {} + string-length@4.0.2: dependencies: char-regex: 1.0.2 @@ -8835,6 +10973,12 @@ snapshots: emoji-regex: 9.2.2 strip-ansi: 7.1.0 + string-width@7.2.0: + dependencies: + emoji-regex: 10.5.0 + get-east-asian-width: 1.4.0 + strip-ansi: 7.1.0 + string_decoder@1.1.1: dependencies: safe-buffer: 5.1.2 @@ -8925,8 +11069,18 @@ snapshots: csso: 5.0.5 picocolors: 1.1.1 + swap-case@2.0.2: + dependencies: + tslib: 2.6.2 + symbol-tree@3.2.4: {} + sync-fetch@0.6.0-2: + dependencies: + node-fetch: 3.3.2 + timeout-signal: 2.0.0 + whatwg-mimetype: 4.0.0 + synckit@0.11.8: dependencies: '@pkgr/core': 0.2.7 @@ -8990,6 +11144,8 @@ snapshots: glob: 7.2.3 minimatch: 3.1.2 + timeout-signal@2.0.0: {} + tiny-async-pool@1.3.0: dependencies: semver: 5.7.2 @@ -9001,6 +11157,10 @@ snapshots: fdir: 6.4.3(picomatch@4.0.2) picomatch: 4.0.2 + title-case@3.0.3: + dependencies: + tslib: 2.6.2 + tldts-core@6.1.86: {} tldts@6.1.86: @@ -9023,6 +11183,8 @@ snapshots: dependencies: tldts: 6.1.86 + tr46@0.0.3: {} + tr46@5.1.1: dependencies: punycode: 2.3.1 @@ -9063,6 +11225,8 @@ snapshots: typescript: 5.9.2 webpack: 5.101.3(webpack-cli@6.0.1) + ts-log@2.2.7: {} + ts-node@10.9.2(@types/node@22.18.1)(typescript@5.9.2): dependencies: '@cspotcode/source-map-support': 0.8.1 @@ -9083,6 +11247,8 @@ snapshots: tslib@2.6.2: {} + tslib@2.8.1: {} + type-check@0.4.0: dependencies: prelude-ls: 1.2.1 @@ -9098,9 +11264,13 @@ snapshots: typescript@5.9.2: {} + ua-parser-js@1.0.41: {} + uglify-js@3.19.3: optional: true + unc-path-regex@0.1.2: {} + undici-types@6.21.0: {} unique-filename@2.0.1: @@ -9115,6 +11285,10 @@ snapshots: universalify@2.0.1: {} + unixify@1.0.0: + dependencies: + normalize-path: 2.1.1 + unrs-resolver@1.8.1: dependencies: napi-postinstall: 0.2.4 @@ -9143,10 +11317,20 @@ snapshots: escalade: 3.2.0 picocolors: 1.1.1 + upper-case-first@2.0.2: + dependencies: + tslib: 2.6.2 + + upper-case@2.0.2: + dependencies: + tslib: 2.6.2 + uri-js@4.4.1: dependencies: punycode: 2.3.1 + urlpattern-polyfill@10.1.0: {} + utf8-byte-length@1.0.4: {} util-deprecate@1.0.2: {} @@ -9185,6 +11369,10 @@ snapshots: dependencies: defaults: 1.0.4 + web-streams-polyfill@3.3.3: {} + + webidl-conversions@3.0.1: {} + webidl-conversions@7.0.0: {} webpack-cli@6.0.1(webpack@5.101.3): @@ -9257,6 +11445,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@2.0.2: dependencies: isexe: 2.0.0 @@ -9265,6 +11458,12 @@ snapshots: wordwrap@1.0.0: {} + 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 @@ -9277,6 +11476,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: {} write-file-atomic@5.0.1: @@ -9286,6 +11491,8 @@ snapshots: ws@8.18.0: {} + ws@8.18.3: {} + xml-name-validator@5.0.0: {} xmlbuilder@15.1.1: {} @@ -9300,6 +11507,8 @@ snapshots: yallist@5.0.0: {} + yaml@2.8.1: {} + yargs-parser@21.1.1: {} yargs@17.7.2: @@ -9321,6 +11530,8 @@ snapshots: yocto-queue@0.1.0: {} + yoctocolors-cjs@2.1.3: {} + zip-stream@4.1.1: dependencies: archiver-utils: 3.0.4 diff --git a/src/renderer/App.css b/src/renderer/App.css index dca3a8cb0..f81c142e4 100644 --- a/src/renderer/App.css +++ b/src/renderer/App.css @@ -1,3 +1,5 @@ +/* biome-ignore-all lint/suspicious/noUnknownAtRules: Tailwind CSS directives */ + /** Tailwind CSS */ @import "https://github.com/tailwindcss"; diff --git a/src/renderer/typesGitHub.ts b/src/renderer/typesGitHub.ts index d38ff2c27..bbed2ce88 100644 --- a/src/renderer/typesGitHub.ts +++ b/src/renderer/typesGitHub.ts @@ -488,12 +488,13 @@ export interface Release { published_at: string | null; } -export interface GraphQLSearch { - data: { - search: { - nodes: T[]; - }; - }; +export interface GitHubGraphQLResponse { + data: TData; + errors?: GitHubGraphQLError[]; +} + +interface GitHubGraphQLError { + message: string; } export interface Discussion { diff --git a/src/renderer/utils/api/__mocks__/response-mocks.ts b/src/renderer/utils/api/__mocks__/response-mocks.ts index 6aa43e4a9..dae4b3b6c 100644 --- a/src/renderer/utils/api/__mocks__/response-mocks.ts +++ b/src/renderer/utils/api/__mocks__/response-mocks.ts @@ -8,11 +8,13 @@ import type { DiscussionAuthor, DiscussionComments, DiscussionLabels, + GitHubGraphQLResponse, GraphQLSearch, Notification, Repository, User, } from '../../../typesGitHub'; +import type { FetchDiscussionsQuery } from '../graphql/generated/graphql'; export const mockNotificationUser: User = { login: 'octocat', @@ -414,29 +416,30 @@ export const mockDiscussionLabels: DiscussionLabels = { ], }; -export const mockGraphQLResponse: GraphQLSearch = { - data: { - search: { - nodes: [ - { - number: 123, - title: '1.16.0', - isAnswered: false, - stateReason: 'OPEN', - url: 'https://github.com/gitify-app/notifications-test/discussions/612' as Link, - author: { - login: 'discussion-creator', - url: 'https://github.com/discussion-creator' as Link, - avatar_url: - 'https://avatars.githubusercontent.com/u/123456789?v=4' as Link, - type: 'User', +export const mockGraphQLResponse: GitHubGraphQLResponse = + { + data: { + search: { + nodes: [ + { + number: 123, + title: '1.16.0', + isAnswered: false, + stateReason: 'OPEN', + url: 'https://github.com/gitify-app/notifications-test/discussions/612' as Link, + author: { + login: 'discussion-creator', + url: 'https://github.com/discussion-creator' as Link, + avatar_url: + 'https://avatars.githubusercontent.com/u/123456789?v=4' as Link, + type: 'User', + }, + comments: mockDiscussionComments, + labels: mockDiscussionLabels, }, - comments: mockDiscussionComments, - labels: mockDiscussionLabels, - }, - ], + ], + }, }, - }, -}; + }; export const mockSingleNotification: Notification = mockGitHubNotifications[0]; diff --git a/src/renderer/utils/api/client.ts b/src/renderer/utils/api/client.ts index fa6eb1b12..3238f0401 100644 --- a/src/renderer/utils/api/client.ts +++ b/src/renderer/utils/api/client.ts @@ -1,5 +1,4 @@ import type { AxiosPromise } from 'axios'; -import { print } from 'graphql/language/printer'; import type { Account, @@ -12,7 +11,7 @@ import type { Commit, CommitComment, Discussion, - GraphQLSearch, + GitHubGraphQLResponse, Issue, IssueOrPullRequestComment, Notification, @@ -25,6 +24,7 @@ import type { import { isAnsweredDiscussionFeatureSupported } from '../features'; import { rendererLogError } from '../logger'; import { QUERY_SEARCH_DISCUSSIONS } from './graphql/discussions'; +import type { FetchDiscussionsQuery } from './graphql/generated/graphql'; import { formatAsGitHubSearchSyntax } from './graphql/utils'; import { apiRequestAuth } from './request'; import { getGitHubAPIBaseUrl, getGitHubGraphQLUrl } from './utils'; @@ -234,14 +234,14 @@ export async function getHtmlUrl(url: Link, token: Token): Promise { */ export async function searchDiscussions( notification: Notification, -): AxiosPromise> { +): AxiosPromise> { const url = getGitHubGraphQLUrl(notification.account.hostname); return apiRequestAuth( url.toString() as Link, 'POST', notification.account.token, { - query: print(QUERY_SEARCH_DISCUSSIONS), + query: QUERY_SEARCH_DISCUSSIONS, variables: { queryStatement: formatAsGitHubSearchSyntax( notification.repository.full_name, diff --git a/src/renderer/utils/api/graphql/discussions.ts b/src/renderer/utils/api/graphql/discussions.ts index f51befad5..9957da3d8 100644 --- a/src/renderer/utils/api/graphql/discussions.ts +++ b/src/renderer/utils/api/graphql/discussions.ts @@ -1,15 +1,15 @@ -import gql from 'graphql-tag'; +import { graphql } from './generated/gql'; -const FRAGMENT_AUTHOR = gql` +export const FRAGMENT_AUTHOR = graphql(` fragment AuthorFields on Actor { login url avatar_url: avatarUrl type: __typename } -`; +`); -const FRAGMENT_COMMENTS = gql` +export const FRAGMENT_COMMENTS = graphql(` fragment CommentFields on DiscussionComment { databaseId createdAt @@ -17,11 +17,9 @@ const FRAGMENT_COMMENTS = gql` ...AuthorFields } } +`); - ${FRAGMENT_AUTHOR} -`; - -export const QUERY_SEARCH_DISCUSSIONS = gql` +export const QUERY_SEARCH_DISCUSSIONS = graphql(` query fetchDiscussions( $queryStatement: String! $firstDiscussions: Int @@ -61,7 +59,4 @@ export const QUERY_SEARCH_DISCUSSIONS = gql` } } } - - ${FRAGMENT_AUTHOR} - ${FRAGMENT_COMMENTS} -`; +`); diff --git a/src/renderer/utils/api/graphql/generated/README.md b/src/renderer/utils/api/graphql/generated/README.md new file mode 100644 index 000000000..8c54320c5 --- /dev/null +++ b/src/renderer/utils/api/graphql/generated/README.md @@ -0,0 +1,3 @@ +# GraphQL Code Generated Types + +The files within this folder are generated by [graphql-codegen](https://the-guild.dev/graphql/codegen) \ No newline at end of file diff --git a/src/renderer/utils/api/graphql/generated/fragment-masking.ts b/src/renderer/utils/api/graphql/generated/fragment-masking.ts new file mode 100644 index 000000000..f347f50e1 --- /dev/null +++ b/src/renderer/utils/api/graphql/generated/fragment-masking.ts @@ -0,0 +1,83 @@ +/* eslint-disable */ +import { ResultOf, DocumentTypeDecoration } from '@graphql-typed-document-node/core'; +import { Incremental, TypedDocumentString } from './graphql'; + + +export type FragmentType> = TDocumentType extends DocumentTypeDecoration< + infer TType, + any +> + ? [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; + 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/src/renderer/utils/api/graphql/generated/gql.ts b/src/renderer/utils/api/graphql/generated/gql.ts new file mode 100644 index 000000000..f256ab8b1 --- /dev/null +++ b/src/renderer/utils/api/graphql/generated/gql.ts @@ -0,0 +1,44 @@ +/* eslint-disable */ +import * as types from './graphql'; + + + +/** + * 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 fragment AuthorFields on Actor {\n login\n url\n avatar_url: avatarUrl\n type: __typename\n }\n": typeof types.AuthorFieldsFragmentDoc, + "\n fragment CommentFields on DiscussionComment {\n databaseId\n createdAt\n author {\n ...AuthorFields\n }\n }\n": typeof types.CommentFieldsFragmentDoc, + "\n query fetchDiscussions(\n $queryStatement: String!\n $firstDiscussions: Int\n $lastComments: Int\n $lastReplies: Int\n $firstLabels: Int\n $includeIsAnswered: Boolean!\n ) {\n search(query: $queryStatement, type: DISCUSSION, first: $firstDiscussions) {\n nodes {\n ... on Discussion {\n number\n title\n stateReason\n isAnswered @include(if: $includeIsAnswered)\n url\n author {\n ...AuthorFields\n }\n comments(last: $lastComments) {\n totalCount\n nodes {\n ...CommentFields\n replies(last: $lastReplies) {\n nodes {\n ...CommentFields\n }\n }\n }\n }\n labels(first: $firstLabels) {\n nodes {\n name\n }\n }\n }\n }\n }\n }\n": typeof types.FetchDiscussionsDocument, +}; +const documents: Documents = { + "\n fragment AuthorFields on Actor {\n login\n url\n avatar_url: avatarUrl\n type: __typename\n }\n": types.AuthorFieldsFragmentDoc, + "\n fragment CommentFields on DiscussionComment {\n databaseId\n createdAt\n author {\n ...AuthorFields\n }\n }\n": types.CommentFieldsFragmentDoc, + "\n query fetchDiscussions(\n $queryStatement: String!\n $firstDiscussions: Int\n $lastComments: Int\n $lastReplies: Int\n $firstLabels: Int\n $includeIsAnswered: Boolean!\n ) {\n search(query: $queryStatement, type: DISCUSSION, first: $firstDiscussions) {\n nodes {\n ... on Discussion {\n number\n title\n stateReason\n isAnswered @include(if: $includeIsAnswered)\n url\n author {\n ...AuthorFields\n }\n comments(last: $lastComments) {\n totalCount\n nodes {\n ...CommentFields\n replies(last: $lastReplies) {\n nodes {\n ...CommentFields\n }\n }\n }\n }\n labels(first: $firstLabels) {\n nodes {\n name\n }\n }\n }\n }\n }\n }\n": types.FetchDiscussionsDocument, +}; + +/** + * The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients. + */ +export function graphql(source: "\n fragment AuthorFields on Actor {\n login\n url\n avatar_url: avatarUrl\n type: __typename\n }\n"): typeof import('./graphql').AuthorFieldsFragmentDoc; +/** + * The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients. + */ +export function graphql(source: "\n fragment CommentFields on DiscussionComment {\n databaseId\n createdAt\n author {\n ...AuthorFields\n }\n }\n"): typeof import('./graphql').CommentFieldsFragmentDoc; +/** + * 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 fetchDiscussions(\n $queryStatement: String!\n $firstDiscussions: Int\n $lastComments: Int\n $lastReplies: Int\n $firstLabels: Int\n $includeIsAnswered: Boolean!\n ) {\n search(query: $queryStatement, type: DISCUSSION, first: $firstDiscussions) {\n nodes {\n ... on Discussion {\n number\n title\n stateReason\n isAnswered @include(if: $includeIsAnswered)\n url\n author {\n ...AuthorFields\n }\n comments(last: $lastComments) {\n totalCount\n nodes {\n ...CommentFields\n replies(last: $lastReplies) {\n nodes {\n ...CommentFields\n }\n }\n }\n }\n labels(first: $firstLabels) {\n nodes {\n name\n }\n }\n }\n }\n }\n }\n"): typeof import('./graphql').FetchDiscussionsDocument; + + +export function graphql(source: string) { + return (documents as any)[source] ?? {}; +} diff --git a/src/renderer/utils/api/graphql/generated/graphql.ts b/src/renderer/utils/api/graphql/generated/graphql.ts new file mode 100644 index 000000000..0a51b0e2f --- /dev/null +++ b/src/renderer/utils/api/graphql/generated/graphql.ts @@ -0,0 +1,36663 @@ +/* eslint-disable */ +import { 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 = { [_ 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 enum ActorType { + /** Indicates a team actor. */ + Team = 'TEAM', + /** Indicates a user actor. */ + User = '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 enum AuditLogOrderField { + /** Order audit log entries by timestamp */ + CreatedAt = '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>>; + /** 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 enum CheckAnnotationLevel { + /** An annotation indicating an inescapable error. */ + Failure = 'FAILURE', + /** An annotation indicating some information. */ + Notice = 'NOTICE', + /** An annotation indicating an ignorable error. */ + Warning = '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 enum CheckConclusionState { + /** The check suite or run requires action. */ + ActionRequired = 'ACTION_REQUIRED', + /** The check suite or run has been cancelled. */ + Cancelled = 'CANCELLED', + /** The check suite or run has failed. */ + Failure = 'FAILURE', + /** The check suite or run was neutral. */ + Neutral = 'NEUTRAL', + /** The check suite or run was skipped. */ + Skipped = 'SKIPPED', + /** The check suite or run was marked stale by GitHub. Only GitHub can use this conclusion. */ + Stale = 'STALE', + /** The check suite or run has failed at startup. */ + StartupFailure = 'STARTUP_FAILURE', + /** The check suite or run has succeeded. */ + Success = 'SUCCESS', + /** The check suite or run has timed out. */ + TimedOut = '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 enum CheckRunState { + /** The check run requires action. */ + ActionRequired = 'ACTION_REQUIRED', + /** The check run has been cancelled. */ + Cancelled = 'CANCELLED', + /** The check run has been completed. */ + Completed = 'COMPLETED', + /** The check run has failed. */ + Failure = 'FAILURE', + /** The check run is in progress. */ + InProgress = 'IN_PROGRESS', + /** The check run was neutral. */ + Neutral = 'NEUTRAL', + /** The check run is in pending state. */ + Pending = 'PENDING', + /** The check run has been queued. */ + Queued = 'QUEUED', + /** The check run was skipped. */ + Skipped = 'SKIPPED', + /** The check run was marked stale by GitHub. Only GitHub can use this conclusion. */ + Stale = 'STALE', + /** The check run has failed at startup. */ + StartupFailure = 'STARTUP_FAILURE', + /** The check run has succeeded. */ + Success = 'SUCCESS', + /** The check run has timed out. */ + TimedOut = 'TIMED_OUT', + /** The check run is in waiting state. */ + Waiting = '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 enum CheckRunType { + /** Every check run available. */ + All = 'ALL', + /** The latest check run. */ + Latest = 'LATEST' +} + +/** The possible states for a check suite or run status. */ +export enum CheckStatusState { + /** The check suite or run has been completed. */ + Completed = 'COMPLETED', + /** The check suite or run is in progress. */ + InProgress = 'IN_PROGRESS', + /** The check suite or run is in pending state. */ + Pending = 'PENDING', + /** The check suite or run has been queued. */ + Queued = 'QUEUED', + /** The check suite or run has been requested. */ + Requested = 'REQUESTED', + /** The check suite or run is in waiting state. */ + Waiting = '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 enum CollaboratorAffiliation { + /** All collaborators the authenticated user can see. */ + All = 'ALL', + /** All collaborators with permissions to an organization-owned subject, regardless of organization membership status. */ + Direct = 'DIRECT', + /** All outside collaborators of an organization-owned subject. */ + Outside = '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 enum CommentAuthorAssociation { + /** Author has been invited to collaborate on the repository. */ + Collaborator = 'COLLABORATOR', + /** Author has previously committed to the repository. */ + Contributor = 'CONTRIBUTOR', + /** Author has not previously committed to GitHub. */ + FirstTimer = 'FIRST_TIMER', + /** Author has not previously committed to the repository. */ + FirstTimeContributor = 'FIRST_TIME_CONTRIBUTOR', + /** Author is a placeholder for an unclaimed user. */ + Mannequin = 'MANNEQUIN', + /** Author is a member of the organization that owns the repository. */ + Member = 'MEMBER', + /** Author has no association with the repository. */ + None = 'NONE', + /** Author is the owner of the repository. */ + Owner = 'OWNER' +} + +/** The possible errors that will prevent a user from updating a comment. */ +export enum CommentCannotUpdateReason { + /** Unable to create comment because repository is archived. */ + Archived = 'ARCHIVED', + /** You cannot update this comment */ + Denied = 'DENIED', + /** You must be the author or have write access to this repository to update this comment. */ + InsufficientAccess = 'INSUFFICIENT_ACCESS', + /** Unable to create comment because issue is locked. */ + Locked = 'LOCKED', + /** You must be logged in to update this comment. */ + LoginRequired = 'LOGIN_REQUIRED', + /** Repository is under maintenance. */ + Maintenance = 'MAINTENANCE', + /** At least one email address must be verified to update this comment. */ + VerifiedEmailRequired = '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 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 enum CommitContributionOrderField { + /** Order commit contributions by how many commits they represent. */ + CommitCount = 'COMMIT_COUNT', + /** Order commit contributions by when they were made. */ + OccurredAt = '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 enum ComparisonStatus { + /** The head ref is ahead of the base ref. */ + Ahead = 'AHEAD', + /** The head ref is behind the base ref. */ + Behind = 'BEHIND', + /** The head ref is both ahead and behind of the base ref, indicating git history has diverged. */ + Diverged = 'DIVERGED', + /** The head ref and base ref are identical. */ + 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 enum ContributionLevel { + /** Lowest 25% of days of contributions. */ + FirstQuartile = 'FIRST_QUARTILE', + /** Highest 25% of days of contributions. More contributions than the third quartile. */ + FourthQuartile = 'FOURTH_QUARTILE', + /** No contributions occurred. */ + None = 'NONE', + /** Second lowest 25% of days of contributions. More contributions than the first quartile. */ + SecondQuartile = 'SECOND_QUARTILE', + /** Second highest 25% of days of contributions. More contributions than second quartile, less than the fourth quartile. */ + ThirdQuartile = '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']; +}; + +/** 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