{ "author": "Grafana Labs", "license": "Apache-2.0", "private": true, "name": "grafana", "version": "7.0.0-pre", "repository": "github:grafana/grafana", "scripts": { "api-tests": "jest --notify --watch --config=devenv/e2e-api-tests/jest.js", "build": "grunt build", "dev": "webpack --progress --colors --config scripts/webpack/webpack.dev.js", "e2e": "./e2e/start-and-run-suite", "e3e:debug": "./e2e/start-and-run-suite debug", "e2e:dev": "./e2e/start-and-run-suite dev", "jest": "jest --notify --watch", "jest-ci": "mkdir -p reports/junit && export JEST_JUNIT_OUTPUT_DIR=reports/junit && jest --ci --reporters=default --reporters=jest-junit --maxWorkers 2", "lint": "eslint public/app e2e/suite1 public/test --ext=.js,.ts,.tsx", "lint:fix": "yarn lint --fix", "packages:build": "lerna run clean && lerna run build", "packages:docsExtract": "rm -rf ./scripts/docs && lerna run docsExtract", "packages:docsToMarkdown": "api-documenter markdown --input-folder ./reports/docs/ --output-folder ./docs/sources/packages_api/ --hugo --draft", "packages:lint": "lerna run lint", "packages:prepare": "lerna version --no-push --no-git-tag-version --force-publish --exact", "packages:publish": "lerna publish from-package --contents dist", "packages:publishCanary": "lerna publish from-package --contents dist --dist-tag canary --yes", "packages:publishLatest": "lerna publish from-package --contents dist --yes", "packages:publishNext": "lerna publish from-package --contents dist --dist-tag next --yes", "packages:typecheck": "lerna run typecheck", "precommit": "grafana-toolkit precommit", "prettier:check": "prettier --list-different \"**/*.{ts,tsx,scss}\"", "prettier:write": "prettier --list-different \"**/*.{ts,tsx,scss}\" --write", "start": "grafana-toolkit core:start --watchTheme", "start:hot": "grafana-toolkit core:start --hot --watchTheme", "start:ignoreTheme": "grafana-toolkit core:start --hot", "start:noTsCheck": "grafana-toolkit core:start --noTsCheck", "stats": "webpack --mode production --config scripts/webpack/webpack.prod.js --profile --json > compilation-stats.json", "storybook": "cd packages/grafana-ui && yarn storybook --ci", "storybook:build": "cd packages/grafana-ui && yarn storybook:build", "test": "grunt test", "themes:generate": "ts-node --project ./scripts/cli/tsconfig.json ./scripts/cli/generateSassVariableFiles.ts", "typecheck": "tsc --noEmit", "watch": "yarn start -d watch,start core:start --watchTheme " }, "husky": { "hooks": { "pre-commit": "lint-staged && npm run precommit" } }, "lint-staged": { "*.{ts,tsx,json,scss}": [ "prettier --write", "git add" ], "*pkg/**/*.go": [ "gofmt -w -s", "git add" ] }, "prettier": { "trailingComma": "es5" }, "devDependencies": { "@babel/core": "7.8.4", "@babel/plugin-proposal-nullish-coalescing-operator": "7.8.3", "@babel/plugin-proposal-optional-chaining": "7.8.3", "@babel/plugin-syntax-dynamic-import": "7.8.3", "@babel/preset-env": "7.8.4", "@babel/preset-react": "7.8.3", "@babel/preset-typescript": "7.8.3", "@emotion/core": "10.0.27", "@grafana/api-documenter": "0.9.3", "@microsoft/api-extractor": "7.7.8", "@rtsao/plugin-proposal-class-properties": "7.0.1-patch.1", "@testing-library/react-hooks": "^3.2.1", "@types/angular": "1.6.56", "@types/angular-route": "1.7.0", "@types/classnames": "2.2.9", "@types/clipboard": "2.0.1", "@types/d3": "5.7.2", "@types/d3-scale-chromatic": "1.3.1", "@types/enzyme": "3.10.5", "@types/enzyme-adapter-react-16": "1.0.6", "@types/expect-puppeteer": "4.4.0", "@types/file-saver": "2.0.1", "@types/hoist-non-react-statics": "3.3.0", "@types/is-hotkey": "0.1.1", "@types/jest": "24.0.13", "@types/jquery": "3.3.32", "@types/lodash": "4.14.149", "@types/lru-cache": "^5.1.0", "@types/marked": "0.6.5", "@types/mousetrap": "1.6.3", "@types/node": "13.7.0", "@types/papaparse": "4.5.9", "@types/pixelmatch": "4.0.0", "@types/pngjs": "3.4.1", "@types/prismjs": "1.16.0", "@types/puppeteer-core": "2.0.0", "@types/react": "16.8.16", "@types/react-dom": "16.8.4", "@types/react-grid-layout": "0.16.7", "@types/react-redux": "7.1.2", "@types/react-select": "3.0.8", "@types/react-test-renderer": "16.9.2", "@types/react-transition-group": "4.2.4", "@types/react-window": "1.8.1", "@types/redux-logger": "3.0.7", "@types/redux-mock-store": "1.0.1", "@types/reselect": "2.2.0", "@types/slate": "0.47.1", "@types/slate-plain-serializer": "0.6.1", "@types/slate-react": "0.22.5", "@types/testing-library__react-hooks": "^3.2.0", "@types/tinycolor2": "1.4.2", "@typescript-eslint/eslint-plugin": "2.19.0", "@typescript-eslint/parser": "2.19.0", "angular-mocks": "1.6.6", "autoprefixer": "9.7.4", "axios": "0.19.2", "babel-core": "7.0.0-bridge.0", "babel-jest": "24.8.0", "babel-loader": "8.0.6", "babel-plugin-angularjs-annotate": "0.10.0", "clean-webpack-plugin": "3.0.0", "css-loader": "3.4.2", "enzyme": "3.11.0", "enzyme-adapter-react-16": "1.15.2", "enzyme-to-json": "3.4.4", "es6-promise": "4.2.8", "es6-shim": "0.35.5", "eslint": "6.8.0", "eslint-config-prettier": "6.10.0", "eslint-loader": "^3.0.3", "eslint-plugin-jsdoc": "22.1.0", "eslint-plugin-prettier": "3.1.2", "eslint-plugin-react": "7.18.3", "expect-puppeteer": "4.4.0", "expect.js": "0.3.1", "expose-loader": "0.7.5", "file-loader": "5.0.2", "fork-ts-checker-webpack-plugin": "4.0.3", "gaze": "1.1.3", "glob": "7.1.6", "grunt": "1.0.4", "grunt-angular-templates": "1.1.0", "grunt-cli": "1.3.2", "grunt-contrib-clean": "2.0.0", "grunt-contrib-compress": "1.6.0", "grunt-contrib-copy": "1.0.0", "grunt-exec": "3.0.0", "grunt-newer": "1.3.0", "grunt-notify": "0.4.5", "grunt-postcss": "0.9.0", "grunt-sass-lint": "0.2.4", "grunt-usemin": "3.1.1", "grunt-webpack": "3.1.3", "html-loader": "0.5.5", "html-webpack-harddisk-plugin": "1.0.1", "html-webpack-plugin": "3.2.0", "husky": "4.2.1", "jest": "24.8.0", "jest-canvas-mock": "2.1.2", "jest-date-mock": "1.0.7", "lerna": "^3.20.2", "lint-staged": "10.0.7", "load-grunt-tasks": "5.1.0", "mini-css-extract-plugin": "0.9.0", "mocha": "7.0.1", "module-alias": "2.2.2", "monaco-editor": "0.15.6", "mutationobserver-shim": "0.3.3", "ngtemplate-loader": "2.0.1", "node-sass": "4.13.1", "optimize-css-assets-webpack-plugin": "5.0.3", "phantomjs-prebuilt": "2.1.16", "pixelmatch": "5.1.0", "pngjs": "3.4.0", "postcss-browser-reporter": "0.6.0", "postcss-loader": "3.0.0", "postcss-reporter": "6.0.1", "prettier": "1.19.1", "puppeteer-core": "2.1.1", "react-hot-loader": "4.8.0", "react-test-renderer": "16.12.0", "redux-mock-store": "1.5.3", "regexp-replace-loader": "1.0.1", "rimraf": "3.0.1", "rxjs-spy": "^7.5.1", "sass-lint": "1.12.1", "sass-loader": "8.0.2", "sinon": "8.1.1", "style-loader": "1.1.3", "terser-webpack-plugin": "2.3.5", "ts-jest": "24.1.0", "ts-node": "8.8.1", "tslib": "1.10.0", "typescript": "3.7.5", "webpack": "4.41.5", "webpack-bundle-analyzer": "3.6.0", "webpack-cleanup-plugin": "0.5.1", "webpack-cli": "3.3.10", "webpack-dev-server": "3.10.3", "webpack-merge": "4.2.2", "zone.js": "0.7.8" }, "dependencies": { "@braintree/sanitize-url": "4.0.0", "@grafana/slate-react": "0.22.9-grafana", "@reduxjs/toolkit": "1.2.1", "@torkelo/react-select": "3.0.8", "@types/md5": "^2.1.33", "@types/react-loadable": "5.5.2", "@types/react-virtualized-auto-sizer": "1.0.0", "abortcontroller-polyfill": "1.4.0", "angular": "1.6.9", "angular-bindonce": "0.3.1", "angular-native-dragdrop": "1.2.2", "angular-route": "1.6.6", "angular-sanitize": "1.6.6", "baron": "3.0.3", "brace": "0.11.1", "calculate-size": "1.1.1", "classnames": "2.2.6", "clipboard": "2.0.4", "core-js": "3.6.4", "d3": "5.15.0", "d3-scale-chromatic": "1.5.0", "emotion": "10.0.27", "eventemitter3": "4.0.0", "fast-text-encoding": "^1.0.0", "file-saver": "2.0.2", "hoist-non-react-statics": "3.3.0", "immutable": "3.8.2", "is-hotkey": "0.1.6", "jquery": "3.4.1", "lodash": "4.17.15", "lru-cache": "^5.1.1", "marked": "0.6.2", "md5": "^2.2.1", "memoize-one": "5.1.1", "moment": "2.24.0", "mousetrap": "1.6.5", "mousetrap-global-bind": "1.1.0", "nodemon": "2.0.2", "papaparse": "4.6.3", "prismjs": "1.19.0", "prop-types": "15.7.2", "rc-cascader": "1.0.1", "re-resizable": "^6.2.0", "react": "16.12.0", "react-dom": "16.12.0", "react-grid-layout": "0.17.1", "react-highlight-words": "0.16.0", "react-loadable": "5.5.0", "react-popper": "1.3.3", "react-redux": "7.1.1", "react-sizeme": "2.6.12", "react-split-pane": "0.1.89", "react-transition-group": "4.3.0", "react-use": "13.27.0", "react-virtualized-auto-sizer": "1.0.2", "react-window": "1.8.5", "redux": "4.0.4", "redux-logger": "3.0.6", "redux-thunk": "2.3.0", "regenerator-runtime": "0.13.3", "reselect": "4.0.0", "rst2html": "github:thoward/rst2html#990cb89", "rxjs": "6.5.4", "search-query-parser": "1.5.4", "slate": "0.47.8", "slate-plain-serializer": "0.7.10", "tether": "1.4.7", "tether-drop": "https://github.com/torkelo/drop/tarball/master", "tinycolor2": "1.4.1", "tti-polyfill": "0.2.2", "whatwg-fetch": "3.0.0", "xss": "1.0.6" }, "resolutions": { "caniuse-db": "1.0.30000772" }, "workspaces": { "packages": [ "packages/*" ], "nohoist": [ "**/@types/*", "**/@types/*/**" ] }, "_moduleAliases": { "puppeteer": "node_modules/puppeteer-core" }, "engines": { "node": ">=12 <13" }, "volta": { "node": "12.16.1" } }