{
  "name": "vscode-apollo",
  "displayName": "Apollo GraphQL",
  "description": "Rich editor support for GraphQL client and server development that seamlessly integrates with the Apollo platform",
  "version": "2.6.5",
  "referenceID": "87197759-7617-40d0-b32e-46d378e907c7",
  "author": "Apollo GraphQL <opensource@apollographql.com>",
  "license": "MIT",
  "repository": {
    "type": "git",
    "url": "https://github.com/apollographql/vscode-graphql"
  },
  "homepage": "https://github.com/apollographql/vscode-graphql",
  "bugs": "https://github.com/apollographql/vscode-graphql/issues",
  "main": "./lib/extension",
  "types": "lib/index.d.ts",
  "scripts": {
    "build": "node ./src/build.js",
    "build:full": "npm run typecheck && rimraf lib && npm run build:textmate && npm run build --",
    "build:production": "npm run build:full -- --production",
    "build:textmate": "node ./syntaxes/build.ts",
    "watch": "rimraf lib; npm-run-all -p watch:*",
    "watch:esbuild": "npm run build -- --watch",
    "watch:tsc": "npm run typecheck -- --watch",
    "watch:textmate-yaml": "npm run build:textmate -- --debug --watch",
    "sampleWorkspace:run": "node src/__e2e__/mockServer.js",
    "changeset-version": "changeset version && npm i",
    "changeset-publish": "npm run build:production && changeset publish",
    "typecheck": "tsc --noEmit",
    "lint": "eslint src --ext .ts",
    "format": "prettier --write .",
    "test": "NODE_OPTIONS=--experimental-vm-modules jest",
    "test:extension": "node src/__e2e__/runTests.js",
    "test:textmate": "npm run test:textmate-ts && npm run test:textmate-connectors-mapping && npm run test:textmate-graphql-connectors-mapping",
    "test:textmate-ts": "npx vscode-tmgrammar-snap -s source.ts -g src/language-server/__tests__/fixtures/TypeScript.tmLanguage.json src/language-server/__tests__/fixtures/documents/*.ts",
    "test:textmate-connectors-mapping": "npm run build:textmate -- --snapshot connectors.mapping.yaml; npx vscode-tmgrammar-test src/__tests__/fixtures/textmate/*.connectors.mapping",
    "test:textmate-graphql-connectors-mapping": "npm run build:textmate -- --snapshot connectors.mapping.yaml; npx vscode-tmgrammar-test src/__tests__/fixtures/textmate/*.graphql",
    "update-connectors-community": "git subtree pull --prefix sampleWorkspace/connectors-community https://github.com/apollographql/connectors-community.git main --squash",
    "codegen": "graphql-codegen",
    "vscode:prepublish": "npm run build:production",
    "postinstall": "patch-package"
  },
  "engines": {
    "vscode": "^1.90.0"
  },
  "dependencies": {
    "@apollo/client": "3.12.3",
    "@apollo/client-devtools-vscode": "4.20.1",
    "@apollo/subgraph": "2.9.3",
    "@graphql-tools/schema": "10.0.13",
    "@wry/equality": "0.5.7",
    "cosmiconfig": "9.0.0",
    "dotenv": "16.4.7",
    "fractional-indexing": "2.1.0",
    "glob": "11.0.0",
    "graphql": "16.12.0",
    "graphql-language-service": "5.5.0",
    "graphql-tag": "2.12.6",
    "jsonc-parser": "^3.3.1",
    "lodash.debounce": "4.0.8",
    "lz-string": "1.5.0",
    "minimatch": "10.0.1",
    "moment": "2.30.1",
    "semver": "7.6.3",
    "undici": "6.21.2",
    "vscode-languageclient": "9.0.1",
    "vscode-languageserver": "9.0.1",
    "vscode-languageserver-textdocument": "1.0.12",
    "vscode-uri": "3.0.8",
    "which": "5.0.0",
    "ws": "8.18.0",
    "zod": "3.24.1",
    "zod-validation-error": "3.4.0"
  },
  "devDependencies": {
    "@apollo/rover": "0.27.0",
    "@changesets/changelog-github": "0.5.0",
    "@changesets/cli": "2.27.10",
    "@graphql-codegen/cli": "5.0.2",
    "@graphql-codegen/typescript-operations": "4.2.3",
    "@types/jest": "29.5.14",
    "@types/lodash.debounce": "4.0.9",
    "@types/lodash.merge": "4.6.9",
    "@types/node": "20.14.10",
    "@types/vscode": "1.90.0",
    "@typescript-eslint/eslint-plugin": "6.9.1",
    "@typescript-eslint/parser": "6.9.1",
    "@vscode/test-cli": "0.0.10",
    "@vscode/test-electron": "2.4.1",
    "@wry/trie": "0.5.0",
    "esbuild": "0.25.0",
    "eslint": "8.52.0",
    "eslint-config-prettier": "9.1.0",
    "eslint-plugin-prettier": "5.2.1",
    "graphql-http": "1.22.1",
    "import-fresh": "3.3.0",
    "jest": "29.7.0",
    "jest-environment-node": "29.7.0",
    "memfs": "4.15.0",
    "npm-run-all": "4.1.5",
    "oniguruma-parser": "^0.12.1",
    "patch-package": "^8.0.1",
    "prettier": "3.4.2",
    "rimraf": "6.0.1",
    "ts-jest": "29.2.5",
    "ts-node": "10.9.2",
    "typescript": "5.5.3",
    "vscode-tmgrammar-test": "0.1.3",
    "zod-to-json-schema": "3.23.3"
  },
  "publisher": "apollographql",
  "categories": [
    "Programming Languages",
    "Linters"
  ],
  "icon": "images/icon-apollo-blue-400x400.png",
  "activationEvents": [
    "workspaceContains:**/apollo.config.[jt]s",
    "workspaceContains:**/apollo.config.[cm]js",
    "workspaceContains:**/apollo.config.{yaml,yml,json}"
  ],
  "contributes": {
    "configuration": {
      "type": "object",
      "title": "Apollo GraphQL",
      "properties": {
        "apollographql.trace.server": {
          "scope": "window",
          "type": "string",
          "enum": [
            "off",
            "messages",
            "verbose"
          ],
          "default": "off",
          "description": "Traces the communication between VS Code and the language server."
        },
        "apollographql.debug.revealOutputOnLanguageServerError": {
          "type": "boolean",
          "default": true,
          "markdownDescription": "Switches to the \"Output\" tab whenever an error occurs in the language server.",
          "scope": "window"
        },
        "apollographql.display.showRunInStudioButton": {
          "type": "boolean",
          "default": true,
          "markdownDescription": "Show a \"Run in Studio\" button to the right of Operation Signatures.",
          "scope": "window"
        },
        "apollographql.devTools.showPanel": {
          "type": "string",
          "enum": [
            "always",
            "never",
            "detect"
          ],
          "default": "never",
          "markdownDescription": "[Experimental Feature] If the Apollo Client DevTools panel should be shown. If set to `detect`, the panel will only be shown if a configuration file with a client project is found in the workspace.",
          "scope": "window"
        },
        "apollographql.devTools.serverPort": {
          "type": "number",
          "default": 7095,
          "markdownDescription": "The Apollo Client DevTools server port. The server will be started as soon as you start using the DevTools panels.",
          "scope": "window"
        }
      }
    },
    "languages": [
      {
        "id": "graphql",
        "extensions": [
          ".gql",
          ".graphql",
          ".graphqls"
        ],
        "aliases": [
          "GraphQL"
        ],
        "configuration": "./graphql.configuration.json"
      },
      {
        "id": "apollo.connectors.mapping",
        "aliases": [
          "[Apollo Connectors Mapping Syntax]"
        ],
        "filenames": [
          "test.apollo.connectors.mapping"
        ],
        "configuration": "./apollo.connectors.mapping.configuration.json"
      },
      {
        "id": "jsonc",
        "filenames": [
          "apollo.config.json"
        ]
      }
    ],
    "grammars": [
      {
        "language": "graphql",
        "scopeName": "source.graphql",
        "path": "./syntaxes/graphql.json"
      },
      {
        "language": "apollo.connectors.mapping",
        "scopeName": "source.apollo.connectors.mapping",
        "path": "./syntaxes/connectors.mapping.json"
      },
      {
        "injectTo": [
          "source.graphql"
        ],
        "scopeName": "source.apollo.connectors.graphql",
        "path": "./syntaxes/graphql.connectors.json",
        "embeddedLanguages": {
          "meta.embedded.block.connectors.mapping.graphql": "apollo.connectors.mapping",
          "meta.embedded.line.connectors.mapping.graphql": "apollo.connectors.mapping",
          "meta.embedded.string.connectors.mapping.selectionstring.graphql": "apollo.connectors.mapping"
        }
      },
      {
        "injectTo": [
          "source.js",
          "source.ts",
          "source.jsx",
          "source.tsx",
          "source.vue",
          "source.svelte"
        ],
        "scopeName": "inline.graphql",
        "path": "./syntaxes/graphql.js.json",
        "embeddedLanguages": {
          "meta.embedded.block.graphql": "graphql"
        }
      },
      {
        "injectTo": [
          "source.python"
        ],
        "scopeName": "inline.graphql.python",
        "path": "./syntaxes/graphql.py.json",
        "embeddedLanguages": {
          "meta.embedded.block.graphql": "graphql"
        }
      },
      {
        "injectTo": [
          "source.lua"
        ],
        "scopeName": "inline.graphql.lua",
        "path": "./syntaxes/graphql.lua.json",
        "embeddedLanguages": {
          "meta.embedded.block.graphql": "graphql"
        }
      },
      {
        "injectTo": [
          "source.ruby"
        ],
        "scopeName": "inline.graphql.ruby",
        "path": "./syntaxes/graphql.rb.json",
        "embeddedLanguages": {
          "meta.embedded.block.graphql": "graphql"
        }
      },
      {
        "injectTo": [
          "source.dart"
        ],
        "scopeName": "inline.graphql.dart",
        "path": "./syntaxes/graphql.dart.json",
        "embeddedLanguages": {
          "meta.embedded.block.graphql": "graphql"
        }
      },
      {
        "injectTo": [
          "source.reason"
        ],
        "scopeName": "inline.graphql.reason",
        "path": "./syntaxes/graphql.re.json",
        "embeddedLanguages": {
          "meta.embedded.block.graphql": "graphql"
        }
      },
      {
        "injectTo": [
          "source.elixir"
        ],
        "scopeName": "inline.graphql.elixir",
        "path": "./syntaxes/graphql.ex.json",
        "embeddedLanguages": {
          "meta.embedded.block.graphql": "graphql"
        }
      }
    ],
    "jsonValidation": [
      {
        "fileMatch": "apollo.config.json",
        "url": "./schemas/apollo.config.schema.json"
      }
    ],
    "__yamlValidation": "For context, see https://github.com/redhat-developer/vscode-yaml?tab=readme-ov-file#mapping-a-schema-in-an-extension",
    "yamlValidation": [
      {
        "fileMatch": "apollo.config.yml",
        "url": "./schemas/apollo.config.schema.json"
      },
      {
        "fileMatch": "apollo.config.yaml",
        "url": "./schemas/apollo.config.schema.json"
      },
      {
        "fileMatch": "supergraph.yaml",
        "url": "./schemas/supergraph_config_schema.json"
      }
    ],
    "commands": [
      {
        "command": "apollographql/selectSchemaTag",
        "title": "Select schema tag",
        "category": "Apollo"
      },
      {
        "command": "apollographql/reloadService",
        "title": "Reload schema",
        "category": "Apollo"
      },
      {
        "command": "apollographql/showStats",
        "title": "Show Status",
        "category": "Apollo"
      },
      {
        "command": "apollographql/startDevToolsServer",
        "title": "Start Apollo Client DevTools Server",
        "category": "Apollo",
        "when": "config.apollographql.devTools.showPanel=='always' || (config.apollographql.devTools.showPanel=='detect' && vscode-apollo.hasClientProject)"
      },
      {
        "command": "apollographql/stopDevToolsServer",
        "title": "Stop Apollo Client DevTools Server",
        "category": "Apollo",
        "when": "config.apollographql.devTools.showPanel=='always' || (config.apollographql.devTools.showPanel=='detect' && vscode-apollo.hasClientProject)"
      }
    ],
    "viewsContainers": {
      "panel": [
        {
          "id": "client-devtools",
          "title": "Apollo Client DevTools",
          "icon": "images/apollo.svg"
        }
      ]
    },
    "views": {
      "client-devtools": [
        {
          "type": "webview",
          "id": "vscode-apollo-client-devtools",
          "name": "Apollo Client DevTools",
          "icon": "images/apollo.svg",
          "when": "config.apollographql.devTools.showPanel=='always' || (config.apollographql.devTools.showPanel=='detect' && vscode-apollo.hasClientProject)"
        }
      ]
    }
  },
  "galleryBanner": {
    "color": "#1d127d",
    "theme": "dark"
  }
}
