{
  "name": "vscode-react-native",
  "displayName": "React Native Tools",
  "version": "0.4.1",
  "private": true,
  "publisher": "vsmobile",
  "icon": "images/icon.png",
  "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.8"
  },
  "categories": [
    "Debuggers",
    "Other"
  ],
  "activationEvents": [
    "*"
  ],
  "main": "./out/extension/rn-extension",
  "contributes": {
    "commands": [
      {
        "command": "reactNative.runAndroidSimulator",
        "title": "React Native: Run Android on Simulator"
      },
      {
        "command": "reactNative.runAndroidDevice",
        "title": "React Native: Run Android on Device"
      },
      {
        "command": "reactNative.runIosSimulator",
        "title": "React Native: Run iOS on Simulator"
      },
      {
        "command": "reactNative.runIosDevice",
        "title": "React Native: Run iOS on Device"
      },
      {
        "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",
            "targetType": "simulator",
            "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",
              "targetType": "simulator",
              "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",
              "targetType": "simulator",
              "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
              },
              "sourceMapPathOverrides": {
                "type": "object",
                "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk. See README for details."
              }
            }
          },
          "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": "Name of the emulator or device to run on"
              },
              "targetType": {
                "type": "string",
                "description": "Type of target property ('simulator' or 'device')",
                "enum": ["simulator", "device"],
                "default": "simulator"
              },
              "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"
              },
              "scheme": {
                "type": "string",
                "description": "A scheme name to be passed to react-native run-ios, e.g. 'devDebug' to specify --scheme=devDebug"
              }
            }
          }
        }
      }
    ],
    "configuration": {
      "type": "object",
      "title": "React-Native configuration",
      "properties": {
        "react-native.ios.launchTarget": {
          "description": "Run configuration for iOS",
          "type": "object",
          "properties": {
            "simulator": {
              "type":"string",
              "description": "iOS simulator name (e.g \"iPad Pro (9.7 inch)\"). Run \"xcrun simctl list devices\" in terminal to see all available simulators and their names",
              "default": "iPhone 5"
            },
            "device": {
              "type":"string",
              "description": "iOS device name (e.g \"Max's iPhone\"). If you have \"ios-deploy\" installed you might want to try running \"ios-deploy --detect\" in terminal to see connected devices"
            }
          }
        },
        "react-native.android.launchTarget": {
          "description": "Run configuration for Android",
          "type": "object",
          "properties": {
            "simulator": {
              "type":"string",
              "description": "Android simulator  ID (e.g \"emulator-5554\"). Run \"adb devices\" in terminal to see all available simulators and their names"
            },
            "device": {
              "type":"string",
              "description": "Android device ID. Run \"adb devices\" in terminal to see all available simulators and their names"
            }
          }
        }
      }
    }
  },
  "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",
    "qr-image": "^3.2.0",
    "semver": "5.1.0",
    "source-map-resolve": "^0.5.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/qr-image": "^3.2.0",
    "@types/shelljs": "^0.7.0",
    "@types/source-map": "^0.5.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-istanbul": "^1.1.2",
    "gulp-mocha": "^4.3.1",
    "gulp-preprocess": "^2.0.0",
    "gulp-sourcemaps": "^1.6.0",
    "gulp-tslint": "^8.1.2",
    "gulp-typescript": "^3.1.5",
    "gulp-util": "^3.0.7",
    "isparta": "^4.0.0",
    "minimist": "^1.2.0",
    "mocha": "^3.2.0",
    "mocha-teamcity-reporter": "^1.0.0",
    "mock-fs": "^4.4.1",
    "remap-istanbul": "^0.9.5",
    "run-sequence": "^1.2.2",
    "should": "^8.3.0",
    "sinon": "^1.17.3",
    "source-map-support": "^0.4.0",
    "through2": "^2.0.1",
    "tslint": "^5.6.0",
    "typescript": "2.4.2",
    "vsce": "^1.3.0",
    "vscode": "^1.1.0"
  },
  "extensionDependencies": [
    "ms-vscode.node-debug2"
  ]
}
