{
  "name": "vscode-react-native",
  "displayName": "React Native Tools",
  "version": "0.3.2",
  "private": true,
  "publisher": "vsmobile",
  "icon": "images/icon.svg",
  "galleryBanner": {
    "color": "#3B3738",
    "theme": "dark"
  },
  "description": "Code-hinting, debugging and integrated commands for React Native",
  "bugs": "https://github.com/Microsoft/vscode-react-native/issues",
  "license": "SEE LICENSE IN LICENSE.txt",
  "repository": {
    "type": "git",
    "url": "https://github.com/Microsoft/vscode-react-native"
  },
  "engines": {
    "vscode": "^0.10.1"
  },
  "categories": [
    "Debuggers",
    "Other"
  ],
  "activationEvents": [
    "*"
  ],
  "main": "./out/extension/rn-extension",
  "contributes": {
    "commands": [
      {
        "command": "reactNative.runAndroid",
        "title": "React Native: Run Android"
      },
      {
        "command": "reactNative.runIos",
        "title": "React Native: Run iOS"
      },
      {
        "command": "reactNative.startPackager",
        "title": "React Native: Start Packager"
      },
      {
        "command": "reactNative.startExponentPackager",
        "title": "React Native: Start Exponent Packager"
      },
      {
        "command": "reactNative.stopPackager",
        "title": "React Native: Stop Packager"
      },
      {
        "command": "reactNative.restartPackager",
        "title": "React Native: Restart Packager"
      },
      {
        "command": "reactNative.publishToExpHost",
        "title": "React Native: Publish to Exponent"
      }
    ],
    "debuggers": [
      {
        "type": "reactnative",
        "label": "React Native",
        "program": "./out/debugger/reactNativeDebugEntryPoint.js",
        "runtime": "node",
        "enableBreakpointsFor": {
          "languageIds": [
            "javascript",
            "typescript",
            "javascriptreact",
            "typescriptreact"
          ]
        },
        "initialConfigurations": [
          {
            "name": "Debug Android",
            "program": "${workspaceRoot}/.vscode/launchReactNative.js",
            "type": "reactnative",
            "request": "launch",
            "platform": "android",
            "sourceMaps": true,
            "outDir": "${workspaceRoot}/.vscode/.react"
          },
          {
            "name": "Debug iOS",
            "program": "${workspaceRoot}/.vscode/launchReactNative.js",
            "type": "reactnative",
            "request": "launch",
            "platform": "ios",
            "target": "iPhone 5s",
            "sourceMaps": true,
            "outDir": "${workspaceRoot}/.vscode/.react"
          },
          {
            "name": "Attach to packager",
            "program": "${workspaceRoot}/.vscode/launchReactNative.js",
            "type": "reactnative",
            "request": "attach",
            "sourceMaps": true,
            "outDir": "${workspaceRoot}/.vscode/.react"
          },
          {
            "name": "Debug in Exponent",
            "program": "${workspaceRoot}/.vscode/launchReactNative.js",
            "type": "reactnative",
            "request": "launch",
            "platform": "exponent",
            "sourceMaps": true,
            "outDir": "${workspaceRoot}/.vscode/.react"
          }
        ],
        "configurationSnippets": [
          {
            "label": "React Native: Debug Android",
            "description": "A new configuration for launching react-native app on android",
            "body": {
              "name": "Debug Android",
              "program": "^\"\\${workspaceRoot}/.vscode/launchReactNative.js\"",
              "type": "reactnative",
              "request": "launch",
              "platform": "android",
              "sourceMaps": true,
              "outDir": "^\"\\${workspaceRoot}/.vscode/.react\""
            }
          },
          {
            "label": "React Native: Debug iOS",
            "description": "A new configuration for launching react-native app on iOS",
            "body": {
              "name": "Debug iOS",
              "program": "^\"\\${workspaceRoot}/.vscode/launchReactNative.js\"",
              "type": "reactnative",
              "request": "launch",
              "platform": "ios",
              "sourceMaps": true,
              "target": "iPhone 5s",
              "outDir": "^\"\\${workspaceRoot}/.vscode/.react\""
            }
          },
          {
            "label": "React Native: Attach to packager",
            "description": "A new configuration for attaching to packager",
            "body": {
              "name": "Attach to packager",
              "program": "^\"\\${workspaceRoot}/.vscode/launchReactNative.js\"",
              "type": "reactnative",
              "request": "attach",
              "sourceMaps": true,
              "outDir": "^\"\\${workspaceRoot}/.vscode/.react\""
            }
          },
          {
            "label": "React Native: Debug in Exponent",
            "description": "A new configuration for launching exponent app",
            "body": {
              "name": "Debug in Exponent",
              "program": "^\"\\${workspaceRoot}/.vscode/launchReactNative.js\"",
              "type": "reactnative",
              "request": "launch",
              "platform": "exponent",
              "sourceMaps": true,
              "outDir": "^\"\\${workspaceRoot}/.vscode/.react\""
            }
          }
        ],
        "configurationAttributes": {
          "attach": {
            "required": [
              "program"
            ],
            "properties": {
              "program": {
                "type": "string",
                "description": "The path to launchReactNative.js in the vscode folder"
              },
              "sourceMaps": {
                "type": "boolean",
                "description": "Whether to use JavaScript source maps to map the generated bundled code back to its original sources",
                "default": false
              },
              "outDir": {
                "type": "string",
                "description": "The location of the generated JavaScript code (the bundle file). Normally this should be \"${workspaceRoot}/.vscode/.react\"",
                "default": null
              }
            }
          },
          "launch": {
            "required": [
              "program",
              "platform"
            ],
            "properties": {
              "platform": {
                "type": "string",
                "description": "The platform ('ios' or 'android') to target"
              },
              "program": {
                "type": "string",
                "description": "The path to launchReactNative.js in the vscode folder"
              },
              "target": {
                "type": "string",
                "description": "'simulator', 'device', or the name of the emulator to run on"
              },
              "sourceMaps": {
                "type": "boolean",
                "description": "Whether to use JavaScript source maps to map the generated bundled code back to its original sources",
                "default": false
              },
              "logCatArguments": {
                "type": "array",
                "description": "Arguments to be used for LogCat (The LogCat output will appear on an Output Channel). It can either be an array such as: [\":S\", \"ReactNative:V\", \"ReactNativeJS:V\"] or a string such as \":S ReactNative:V ReactNativeJS:V\"",
                "default": [
                  "*:S",
                  "ReactNative:V",
                  "ReactNativeJS:V"
                ]
              },
              "outDir": {
                "type": "string",
                "description": "The location of the generated JavaScript code (the bundle file). Normally this should be \"${workspaceRoot}/.vscode/.react\"",
                "default": null
              },
              "iosRelativeProjectPath": {
                "type": "string",
                "description": "Relative path to the ios/ folder, if it is not located on the project root.",
                "default": "ios"
              },
              "variant": {
                "type": "string",
                "description": "A variant to be passed to react-native run-android, e.g. 'devDebug' to specify --variant=devDebug"
              }
            }
          }
        }
      }
    ]
  },
  "scripts": {
    "start": "node node_modules/react-native/local-cli/cli.js start",
    "compile": "node ./node_modules/vscode/bin/compile -watch -p ./",
    "vscode:prepublish": "gulp",
    "test": "node ./node_modules/vscode/bin/test",
    "postinstall": "node ./node_modules/vscode/bin/install"
  },
  "dependencies": {
    "extract-opts": "2.2.0",
    "flatten-source-map": "0.0.2",
    "options": "0.0.6",
    "q": "1.4.1",
    "semver": "5.1.0",
    "strip-json-comments": "2.0.1",
    "typechecker": "2.0.8",
    "ultron": "1.0.2",
    "vscode-extension-telemetry": "0.0.5",
    "ws": "1.0.1"
  },
  "devDependencies": {
    "@types/mocha": "^2.2.40",
    "@types/mock-fs": "^3.6.30",
    "@types/node": "^6.0.65",
    "@types/shelljs": "^0.7.0",
    "@types/source-map-support": "^0.2.28",
    "@types/websocket": "0.0.33",
    "@types/ws": "^0.0.39",
    "del": "^2.2.0",
    "gulp": "^3.9.1",
    "gulp-mocha": "^2.2.0",
    "gulp-preprocess": "^2.0.0",
    "gulp-sourcemaps": "^1.6.0",
    "gulp-tslint": "^4.3.3",
    "gulp-typescript": "^3.1.5",
    "gulp-util": "^3.0.7",
    "minimist": "^1.2.0",
    "mocha": "^3.2.0",
    "mocha-teamcity-reporter": "^1.0.0",
    "mock-fs": "^3.8.0",
    "run-sequence": "^1.1.5",
    "should": "^8.3.0",
    "sinon": "^1.17.3",
    "source-map-support": "^0.4.0",
    "through2": "^2.0.1",
    "tslint": "^3.6.0",
    "typescript": "^2.2.1",
    "vsce": "^1.3.0",
    "vscode": "^1.1.0"
  },
  "extensionDependencies": [
    "ms-vscode.node-debug2"
  ]
}
