{
  "name": "root",
  "private": true,
  "workspaces": [
    "modules/*"
  ],
  "scripts": {
    "preinstall": "node -e \"if(process.env.npm_execpath.indexOf('yarn') === -1) throw new Error('You must use Yarn to install, not NPM')\"",
    "tinymce-grunt": "grunt --gruntfile modules/tinymce/Gruntfile.js",
    "tinymce-rollup": "run-s \"tinymce-grunt dev rollup\"",
    "oxide-icons-build": "yarn -s --cwd modules/oxide-icons-default build",
    "oxide-icons-ci": "yarn --cwd modules/oxide-icons-default ci",
    "oxide-build": "yarn -s --cwd modules/oxide build",
    "oxide-start": "yarn -s --cwd modules/oxide start",
    "oxide-ci": "yarn --cwd modules/oxide ci",
    "tsc": "tsc -b",
    "watch": "tsc -b -w",
    "eslint": "lerna exec --stream --no-bail -- eslint src/**/*.ts",
    "start": "run-p watch \"tinymce-grunt start\"",
    "dev": "npm-run-all oxide-icons-build oxide-build -p tsc \"tinymce-grunt dev\"",
    "ci": "npm-run-all -p oxide-ci oxide-icons-ci -p tsc \"tinymce-grunt dev\"",
    "ci-all": "npm-run-all -p eslint ci -s tinymce-rollup",
    "local-ci": "npm-run-all ci-all -s phantomjs-test browser-test",
    "test": "run-s local-ci",
    "build": "npm-run-all -p oxide-icons-ci oxide-ci -s tinymce-grunt",
    "prepublishOnly": "run-s oxide-icons-ci",
    "browser-test": "yarn -s grunt browser-auto",
    "browser-test-manual": "yarn -s grunt browser-manual",
    "phantomjs-test": "yarn -s grunt phantomjs-auto",
    "phantomjs-test-manual": "yarn -s grunt phantomjs-manual",
    "bedrock": "bedrock --customRoutes modules/tinymce/src/core/test/json/routes.json --polyfills Promise Symbol",
    "test-one": "yarn tsc && yarn bedrock-auto -b chrome-headless -f"
  },
  "devDependencies": {
    "@ephox/bedrock-client": "^11.1.1",
    "@ephox/bedrock-server": "^11.2.0",
    "@ephox/oxide-icons-tools": "^2.2.2",
    "@ephox/swag": "^4.3.0",
    "@ephox/wrap-jsverify": "^2.0.1",
    "@ephox/wrap-prismjs": "^1.23.0",
    "@tinymce/eslint-plugin": "^1.7.2",
    "@types/chai": "^4.2.15",
    "awesome-typescript-loader": "^5.2.0",
    "chai": "^4.3.3",
    "chalk": "^4.1.0",
    "emojilib": "^2.4.0",
    "eslint-plugin-mocha": "^7.0.0",
    "eslint-plugin-notice": "^0.9.10",
    "fast-check": "^1.18.1",
    "grunt": "^1.0.2",
    "grunt-contrib-clean": "^2.0.0",
    "grunt-contrib-concat": "^1.0.1",
    "grunt-contrib-copy": "^1.0.0",
    "grunt-contrib-less": "2.0.0",
    "grunt-contrib-symlink": "^1.0.0",
    "grunt-contrib-uglify": "5.0.0",
    "grunt-contrib-watch": "^1.1.0",
    "grunt-eslint": "^23.0.0",
    "grunt-nuget-pack": "^0.0.6",
    "grunt-shell": "^3.0.1",
    "grunt-webpack": "^4.0.2",
    "gulp": "^4.0.0",
    "gulp-clean": "^0.4.0",
    "gulp-clean-css": "^4.0.0",
    "gulp-connect": "^5.7.0",
    "gulp-header": "^2.0.7",
    "gulp-less": "^4.0.1",
    "gulp-rename": "^2.0.0",
    "gulp-sourcemaps": "^2.6.4",
    "gulp-stylelint": "^13.0.0",
    "lerna": "^3.18.4",
    "less-plugin-autoprefix": "^2.0.0",
    "load-grunt-tasks": "^5.1.0",
    "moxie-zip": "0.0.4",
    "npm-run-all": "^4.1.5",
    "resolve": "^1.18.1",
    "source-map-loader": "^1.1.0",
    "string-replace-loader": "^2.1.1",
    "stylelint": "^13.2.1",
    "stylelint-config-standard": "^20.0.0",
    "stylelint-order": "^4.0.0",
    "ts-loader": "^6.2.2",
    "tsconfig-paths-webpack-plugin": "^3.2.0",
    "tslib": "^2.0.0",
    "twemoji": "^13.0.1",
    "typescript": "^4.0.5",
    "webpack": "^4.41.2",
    "webpack-cli": "^3.3.10",
    "webpack-dev-server": "^3.9.0",
    "webpack-livereload-plugin": "^2.1.1"
  }
}
