2018-10-01 06:08:12 +00:00
|
|
|
{
|
2018-10-28 08:13:08 +00:00
|
|
|
"private": true,
|
2018-10-01 06:08:12 +00:00
|
|
|
"description": "The Sourcegraph web app",
|
|
|
|
|
"license": "MIT",
|
|
|
|
|
"repository": {
|
|
|
|
|
"type": "git",
|
|
|
|
|
"url": "https://github.com/sourcegraph/sourcegraph"
|
|
|
|
|
},
|
|
|
|
|
"engines": {
|
2020-08-03 09:06:37 +00:00
|
|
|
"node": "^v14.7.0",
|
2018-10-01 06:08:12 +00:00
|
|
|
"yarn": "^1.10.1"
|
|
|
|
|
},
|
|
|
|
|
"scripts": {
|
2018-11-12 09:05:35 +00:00
|
|
|
"prettier": "prettier '**/{*.{js?(on),ts?(x),graphql,md,scss},.*.js?(on)}' --write --list-different --config prettier.config.js",
|
2019-12-10 14:05:27 +00:00
|
|
|
"prettier-check": "yarn -s run prettier --write=false",
|
2020-02-07 11:14:07 +00:00
|
|
|
"all:eslint": "dev/foreach-ts-project.sh yarn -s run eslint --quiet",
|
2019-08-06 01:39:54 +00:00
|
|
|
"all:stylelint": "yarn --cwd web run stylelint && yarn --cwd shared run stylelint && yarn --cwd browser run stylelint",
|
2020-05-05 13:17:12 +00:00
|
|
|
"all:tsgql": "yarn --cwd web run tsgql validate -p . --exitOnWarn && yarn --cwd shared run tsgql validate -p . --exitOnWarn && yarn --cwd browser run tsgql validate -p . --exitOnWarn",
|
2019-11-12 11:26:21 +00:00
|
|
|
"build-ts": "tsc -b .",
|
2018-11-12 09:05:35 +00:00
|
|
|
"graphql-lint": "graphql-schema-linter --old-implements-syntax --comment-descriptions cmd/frontend/graphqlbackend/schema.graphql",
|
2020-07-10 21:15:18 +00:00
|
|
|
"build-web": "yarn --cwd web run build",
|
2020-08-04 18:54:35 +00:00
|
|
|
"generate": "gulp generate",
|
|
|
|
|
"watch-generate": "gulp watchGenerate",
|
2020-06-03 10:33:59 +00:00
|
|
|
"test": "jest --testPathIgnorePatterns end-to-end regression integration storybook",
|
2020-07-10 21:15:18 +00:00
|
|
|
"test-integration": "TS_NODE_PROJECT=web/src/integration/tsconfig.json NODE_NO_WARNINGS=1 mocha ./web/src/integration/**/*.test.ts",
|
|
|
|
|
"cover-integration": "nyc --hook-require=false yarn test-integration",
|
2020-06-03 10:33:59 +00:00
|
|
|
"test-e2e": "TS_NODE_PROJECT=web/src/end-to-end/tsconfig.json mocha ./web/src/end-to-end/end-to-end.test.ts",
|
2020-04-06 21:15:33 +00:00
|
|
|
"cover-e2e": "nyc --hook-require=false yarn test-e2e",
|
2019-05-06 22:57:51 +00:00
|
|
|
"storybook": "start-storybook -p 9001 -c .storybook",
|
2020-05-14 11:15:42 +00:00
|
|
|
"build-storybook": "build-storybook -c .storybook",
|
|
|
|
|
"cover-storybook": "nyc --hook-require=false yarn jest .storybook/coverage",
|
2019-12-17 04:30:51 +00:00
|
|
|
"deduplicate": "yarn-deduplicate -s fewer"
|
2018-10-01 06:08:12 +00:00
|
|
|
},
|
2018-11-12 09:05:35 +00:00
|
|
|
"browserslist": [
|
|
|
|
|
"last 1 version",
|
|
|
|
|
">1%",
|
|
|
|
|
"not dead",
|
|
|
|
|
"not <0.25%",
|
|
|
|
|
"last 1 Chrome versions",
|
|
|
|
|
"not IE > 0"
|
|
|
|
|
],
|
2020-04-06 21:15:33 +00:00
|
|
|
"nyc": {
|
2020-05-14 11:15:42 +00:00
|
|
|
"extends": "@istanbuljs/nyc-config-typescript",
|
2020-04-06 21:15:33 +00:00
|
|
|
"all": true,
|
|
|
|
|
"extension": [
|
|
|
|
|
".tsx",
|
|
|
|
|
".ts"
|
|
|
|
|
],
|
|
|
|
|
"include": [
|
2020-05-14 11:15:42 +00:00
|
|
|
"@(web|shared|browser)/src/**/*.ts?(x)"
|
2020-04-06 21:15:33 +00:00
|
|
|
],
|
|
|
|
|
"exclude": [
|
|
|
|
|
"node_modules",
|
|
|
|
|
"**/*.d.ts",
|
|
|
|
|
"**/*.@(test|story).ts?(x)"
|
|
|
|
|
]
|
|
|
|
|
},
|
2019-05-03 21:20:47 +00:00
|
|
|
"jscpd": {
|
|
|
|
|
"gitignore": true,
|
|
|
|
|
"ignore": [
|
|
|
|
|
"**/__snapshots__",
|
|
|
|
|
"**/__fixtures__",
|
|
|
|
|
"**/*.svg",
|
|
|
|
|
"migrations",
|
2019-05-06 17:36:03 +00:00
|
|
|
"browser/build",
|
2019-05-03 21:20:47 +00:00
|
|
|
"ui",
|
|
|
|
|
"**/assets"
|
|
|
|
|
]
|
|
|
|
|
},
|
2018-10-01 06:08:12 +00:00
|
|
|
"devDependencies": {
|
2020-05-27 06:47:18 +00:00
|
|
|
"@atlassian/aui": "^7.10.1",
|
2020-07-16 22:24:37 +00:00
|
|
|
"@babel/core": "^7.10.5",
|
2020-07-07 12:21:58 +00:00
|
|
|
"@babel/plugin-proposal-class-properties": "^7.10.4",
|
2020-07-16 22:24:37 +00:00
|
|
|
"@babel/plugin-proposal-decorators": "^7.10.5",
|
2020-07-07 12:21:58 +00:00
|
|
|
"@babel/preset-env": "^7.10.4",
|
|
|
|
|
"@babel/preset-typescript": "^7.10.4",
|
2020-07-16 22:24:37 +00:00
|
|
|
"@babel/runtime": "^7.10.5",
|
2018-10-17 19:35:10 +00:00
|
|
|
"@gql2ts/from-schema": "^1.10.1",
|
2018-11-01 07:25:26 +00:00
|
|
|
"@gql2ts/language-typescript": "^1.9.0",
|
2020-06-24 09:00:55 +00:00
|
|
|
"@gql2ts/types": "^1.9.0",
|
2020-05-14 11:15:42 +00:00
|
|
|
"@istanbuljs/nyc-config-typescript": "^1.0.1",
|
2020-01-02 02:23:58 +00:00
|
|
|
"@octokit/rest": "^16.36.0",
|
2020-02-04 15:14:09 +00:00
|
|
|
"@percy/puppeteer": "^1.1.0",
|
2020-07-16 15:33:55 +00:00
|
|
|
"@pollyjs/adapter-puppeteer": "^5.0.0",
|
|
|
|
|
"@pollyjs/core": "^5.0.0",
|
|
|
|
|
"@pollyjs/persister-fs": "^5.0.0",
|
2020-07-16 23:04:08 +00:00
|
|
|
"@slack/web-api": "^5.10.0",
|
2019-06-13 03:43:15 +00:00
|
|
|
"@sourcegraph/babel-plugin-transform-react-hot-loader-wrapper": "^1.0.0",
|
2020-08-07 19:13:32 +00:00
|
|
|
"@sourcegraph/eslint-config": "^0.20.0",
|
2020-03-22 14:10:21 +00:00
|
|
|
"@sourcegraph/prettierrc": "^3.0.3",
|
2020-05-28 09:52:38 +00:00
|
|
|
"@sourcegraph/stylelint-config": "^1.1.9",
|
2020-03-25 02:35:43 +00:00
|
|
|
"@sourcegraph/tsconfig": "^4.0.1",
|
2020-06-01 13:52:22 +00:00
|
|
|
"@storybook/addon-actions": "^5.3.19",
|
2019-09-21 11:06:46 +00:00
|
|
|
"@storybook/addon-console": "^1.2.1",
|
2020-06-01 13:52:22 +00:00
|
|
|
"@storybook/addon-info": "^5.3.19",
|
|
|
|
|
"@storybook/addon-knobs": "^5.3.19",
|
|
|
|
|
"@storybook/addon-links": "^5.3.19",
|
|
|
|
|
"@storybook/addon-options": "^5.3.19",
|
|
|
|
|
"@storybook/addon-storyshots": "^5.3.19",
|
|
|
|
|
"@storybook/addon-storyshots-puppeteer": "^5.3.19",
|
|
|
|
|
"@storybook/addons": "^5.3.19",
|
|
|
|
|
"@storybook/components": "^5.3.19",
|
|
|
|
|
"@storybook/core": "^5.3.19",
|
|
|
|
|
"@storybook/react": "^5.3.19",
|
|
|
|
|
"@storybook/theming": "^5.3.19",
|
2020-07-16 23:03:49 +00:00
|
|
|
"@testing-library/react": "^10.4.7",
|
2020-06-05 15:24:19 +00:00
|
|
|
"@testing-library/react-hooks": "^3.3.0",
|
2020-07-06 18:57:39 +00:00
|
|
|
"@types/babel__core": "7.1.9",
|
2020-08-01 07:24:19 +00:00
|
|
|
"@types/chai": "4.2.12",
|
2020-07-06 22:45:58 +00:00
|
|
|
"@types/chai-as-promised": "7.1.3",
|
2020-08-01 07:24:52 +00:00
|
|
|
"@types/chrome": "0.0.122",
|
2020-03-06 21:16:19 +00:00
|
|
|
"@types/classnames": "2.2.10",
|
2019-12-01 15:11:06 +00:00
|
|
|
"@types/command-exists": "1.2.0",
|
2019-03-02 10:07:19 +00:00
|
|
|
"@types/d3-axis": "1.0.12",
|
2020-04-01 15:40:13 +00:00
|
|
|
"@types/d3-scale": "2.2.0",
|
2019-03-02 10:24:47 +00:00
|
|
|
"@types/d3-selection": "1.4.1",
|
2019-11-01 08:14:00 +00:00
|
|
|
"@types/d3-shape": "1.3.2",
|
2020-06-04 10:11:46 +00:00
|
|
|
"@types/enzyme": "3.10.5",
|
2020-02-01 08:09:55 +00:00
|
|
|
"@types/expect": "24.3.0",
|
2019-03-02 10:41:51 +00:00
|
|
|
"@types/fancy-log": "1.3.1",
|
2020-06-01 07:19:14 +00:00
|
|
|
"@types/got": "9.6.11",
|
2019-04-02 00:45:13 +00:00
|
|
|
"@types/gulp": "4.0.6",
|
2020-04-01 15:40:54 +00:00
|
|
|
"@types/he": "1.1.1",
|
2020-06-01 07:19:52 +00:00
|
|
|
"@types/highlight.js": "9.12.4",
|
2019-09-01 07:16:18 +00:00
|
|
|
"@types/is-absolute-url": "3.0.0",
|
2020-08-07 01:21:35 +00:00
|
|
|
"@types/jest": "26.0.9",
|
2019-07-01 10:11:34 +00:00
|
|
|
"@types/jsdom": "12.2.4",
|
2020-08-07 03:15:29 +00:00
|
|
|
"@types/lodash": "4.14.159",
|
2020-07-07 08:52:31 +00:00
|
|
|
"@types/marked": "1.1.0",
|
2020-07-13 19:22:02 +00:00
|
|
|
"@types/mime-types": "2.1.0",
|
2020-03-01 08:10:04 +00:00
|
|
|
"@types/mini-css-extract-plugin": "0.9.1",
|
2018-11-12 09:29:11 +00:00
|
|
|
"@types/mkdirp-promise": "5.0.0",
|
2020-08-03 09:07:12 +00:00
|
|
|
"@types/mocha": "8.0.1",
|
2019-04-12 08:05:57 +00:00
|
|
|
"@types/mockdate": "2.0.0",
|
2020-06-01 08:16:29 +00:00
|
|
|
"@types/mz": "2.7.1",
|
2020-05-08 15:23:18 +00:00
|
|
|
"@types/node": "13.13.5",
|
2019-10-07 23:32:53 +00:00
|
|
|
"@types/optimize-css-assets-webpack-plugin": "5.0.1",
|
2020-07-06 17:09:41 +00:00
|
|
|
"@types/pollyjs__adapter-puppeteer": "4.0.0",
|
|
|
|
|
"@types/pollyjs__core": "4.3.0",
|
|
|
|
|
"@types/pollyjs__persister-fs": "2.0.0",
|
2020-07-17 13:23:32 +00:00
|
|
|
"@types/puppeteer": "3.0.1",
|
2020-08-01 08:48:00 +00:00
|
|
|
"@types/react": "16.9.44",
|
2020-03-03 06:22:56 +00:00
|
|
|
"@types/react-circular-progressbar": "1.0.2",
|
2020-06-01 08:17:38 +00:00
|
|
|
"@types/react-dom": "16.9.8",
|
2020-08-01 08:48:37 +00:00
|
|
|
"@types/react-grid-layout": "0.17.2",
|
2019-07-01 07:11:21 +00:00
|
|
|
"@types/react-hot-loader": "4.1.0",
|
2020-07-06 18:59:56 +00:00
|
|
|
"@types/react-router": "5.1.8",
|
2020-05-08 15:02:36 +00:00
|
|
|
"@types/react-router-dom": "5.1.5",
|
2020-02-03 18:47:00 +00:00
|
|
|
"@types/react-stripe-elements": "6.0.4",
|
2020-02-01 13:09:18 +00:00
|
|
|
"@types/react-test-renderer": "16.9.2",
|
2020-03-01 09:13:08 +00:00
|
|
|
"@types/reactstrap": "8.4.2",
|
2020-07-06 22:09:46 +00:00
|
|
|
"@types/recharts": "1.8.14",
|
2020-02-01 08:09:55 +00:00
|
|
|
"@types/resize-observer-browser": "0.1.3",
|
2020-05-26 12:16:53 +00:00
|
|
|
"@types/sanitize-html": "1.23.0",
|
2020-07-03 00:48:58 +00:00
|
|
|
"@types/semver": "7.3.1",
|
2020-06-05 15:25:36 +00:00
|
|
|
"@types/shelljs": "0.8.8",
|
2020-04-02 22:33:34 +00:00
|
|
|
"@types/signale": "1.4.1",
|
2019-11-01 12:14:42 +00:00
|
|
|
"@types/simmerjs": "0.5.1",
|
2020-06-04 10:06:26 +00:00
|
|
|
"@types/sinon": "9.0.4",
|
2020-08-01 08:49:15 +00:00
|
|
|
"@types/socket.io": "2.1.10",
|
2020-06-01 15:06:26 +00:00
|
|
|
"@types/socket.io-client": "1.4.33",
|
2019-06-05 23:11:23 +00:00
|
|
|
"@types/storybook__addon-actions": "3.4.3",
|
2019-12-03 15:47:00 +00:00
|
|
|
"@types/storybook__addon-info": "5.2.1",
|
2019-10-01 08:19:14 +00:00
|
|
|
"@types/storybook__addon-knobs": "5.0.4",
|
2019-06-06 03:12:37 +00:00
|
|
|
"@types/storybook__addon-options": "4.0.2",
|
2019-12-01 13:03:32 +00:00
|
|
|
"@types/storybook__addon-storyshots": "5.1.2",
|
2019-06-06 05:11:42 +00:00
|
|
|
"@types/storybook__react": "4.0.2",
|
2019-04-15 21:52:51 +00:00
|
|
|
"@types/textarea-caret": "3.0.0",
|
2020-06-04 10:08:00 +00:00
|
|
|
"@types/uuid": "8.0.0",
|
2020-08-07 19:41:39 +00:00
|
|
|
"@types/webpack": "4.41.21",
|
2020-06-01 17:45:03 +00:00
|
|
|
"@types/webpack-dev-server": "3.11.0",
|
2019-09-20 20:21:24 +00:00
|
|
|
"abort-controller": "^3.0.0",
|
2020-05-27 06:55:59 +00:00
|
|
|
"autoprefixer": "^9.8.0",
|
2020-05-26 12:17:39 +00:00
|
|
|
"babel-jest": "^25.5.1",
|
2020-03-22 21:31:42 +00:00
|
|
|
"babel-loader": "^8.1.0",
|
2018-11-12 09:05:35 +00:00
|
|
|
"babel-plugin-lodash": "^3.3.4",
|
2020-03-22 21:31:42 +00:00
|
|
|
"babel-preset-react-app": "^9.1.2",
|
2020-05-08 15:17:11 +00:00
|
|
|
"browserslist": "^4.12.0",
|
2020-01-18 16:32:30 +00:00
|
|
|
"bundlesize": "^0.18.0",
|
2019-05-01 13:27:33 +00:00
|
|
|
"chai": "^4.2.0",
|
use jest for testing (#1456)
Goal: help people write reliable UI code by making it easier to write and run tests.
Using Facebook's [jest](https://jestjs.io) for tests helps us achieve this goal because:
- jest has great first-class support for testing React components (see https://jestjs.io/docs/en/tutorial-react) and is by far the most popular way that people test React components, so the bugs are ironed out and the tooling is good
- jest can run all of our tests (`shared/`, `web/`, and `client/browser/` -- and unit tests **AND** e2e tests) from the same runner (`yarn test` in the root dir)
- jest has a great `--watch` UI and a good [vscode-jest extension](https://github.com/jest-community/vscode-jest)
- debugging tests in VS Code works with no additional effort
- jest requires a lot less configuration and code to set up testing and coverage than Mocha (no `--require ts-node --require source-map-support mocha.opts --require long-stack-traces --require esm ...`, no test-time bundling required using `unit-test-utils.ts`, etc.)
**Note:** Most of the diff is from https://github.com/skovhus/jest-codemods, which automatically updates our test code to use jest style (`describe`, `test`, `expect`, etc., not `it` and `assert`).
jest appears to be the most popular tool for solving the problem that we have (testing a large web/multi-platform application), and it was surprisingly painless to set up and a joy to use.
TODOs:
- [x] Make it pass on Buildkite
- [x] Ensure e2e, screenshots-after-failures, and coverage still work on Buildkite
- [x] Test on macOS
- [x] Add docs to repo
---
Usage:
> This is also documented in `doc/dev/testing.md` and `doc/dev/web_app.md`.
- To run all unit tests, run `yarn test` from the root directory.
- To run unit tests in development (only running the tests related to uncommitted code), run `yarn test --watch`.
- And/or use [vscode-jest](https://github.com/jest-community/vscode-jest) with `jest.autoEnable: true` (and, if you want, `jest.showCoverageOnLoad: true`)
- To debug tests in VS Code, use [vscode-jest](https://github.com/jest-community/vscode-jest) and click the **Debug** code lens next to any `test('name ...', ...)` definition in your test file (be sure to set a breakpoint or break on uncaught exceptions by clicking in the left gutter).
- e2e tests:
- To run e2e tests for the browser extension: `cd client/browser && yarn test-e2e`
- To run e2e tests for the browser extension: `cd web && yarn test-e2e`
- You can also run `yarn test` from any of the individual project dirs (`shared/`, `web/`, `client/browser/`).
Usually while developing you will either have `yarn test --watch` running in a terminal or you will use vscode-jest.
---
Notes:
- There are no regressions. The following are all preserved as before: Puppeteer screenshots after test failures, jsdom tests, e2e tests, Codecov and lcov coverage, VS Code integration, etc.
- You will need to write tests using [jest matchers](https://jestjs.io/docs/en/using-matchers) (or [jest async matchers](https://jestjs.io/docs/en/asynchronous) for async code), not `assert`. They are very similar.
- You need to use `test()` instead of `it()` for defining test cases.
2018-12-17 02:13:40 +00:00
|
|
|
"chai-as-promised": "^7.1.1",
|
2020-07-07 12:07:20 +00:00
|
|
|
"chalk": "^4.1.0",
|
2019-11-01 14:35:11 +00:00
|
|
|
"chokidar-cli": "^2.1.0",
|
2020-08-07 18:36:41 +00:00
|
|
|
"chromatic": "^5.1.0",
|
2018-11-15 18:18:11 +00:00
|
|
|
"chrome-webstore-upload-cli": "^1.2.0",
|
2020-05-15 15:09:51 +00:00
|
|
|
"command-exists": "^1.2.9",
|
2020-03-07 00:23:52 +00:00
|
|
|
"cross-env": "^7.0.2",
|
2020-07-07 12:07:46 +00:00
|
|
|
"css-loader": "^3.6.0",
|
2020-06-04 07:59:12 +00:00
|
|
|
"enzyme": "^3.11.0",
|
|
|
|
|
"enzyme-adapter-react-16": "^1.15.2",
|
2020-06-04 20:17:51 +00:00
|
|
|
"enzyme-to-json": "^3.5.0",
|
2020-08-01 08:52:30 +00:00
|
|
|
"eslint": "^7.6.0",
|
2020-06-15 13:39:19 +00:00
|
|
|
"eslint-formatter-lsif": "^1.0.3",
|
2020-06-02 21:45:48 +00:00
|
|
|
"execa": "^4.0.2",
|
2018-12-30 08:56:48 +00:00
|
|
|
"fancy-log": "^1.3.3",
|
2020-02-01 16:15:46 +00:00
|
|
|
"get-port": "^5.1.1",
|
2020-03-03 06:18:07 +00:00
|
|
|
"googleapis": "^47.0.0",
|
2019-05-01 11:48:45 +00:00
|
|
|
"gql2ts": "^1.10.1",
|
2020-07-11 22:21:40 +00:00
|
|
|
"graphql": "^14.7.0",
|
2020-07-07 01:29:35 +00:00
|
|
|
"graphql-schema-linter": "^0.5.0",
|
2020-08-07 18:11:50 +00:00
|
|
|
"@graphql-codegen/cli": "1.17.7",
|
|
|
|
|
"@graphql-codegen/typescript": "1.17.7",
|
|
|
|
|
"@graphql-codegen/typescript-operations": "1.17.7",
|
2019-09-09 01:52:46 +00:00
|
|
|
"gulp": "^4.0.2",
|
2019-01-08 07:44:08 +00:00
|
|
|
"identity-obj-proxy": "^3.0.0",
|
2020-05-26 12:17:39 +00:00
|
|
|
"jest": "^25.5.4",
|
2019-11-04 14:46:31 +00:00
|
|
|
"jsdom": "^15.2.1",
|
2020-08-07 18:14:04 +00:00
|
|
|
"json-schema-ref-parser": "^9.0.6",
|
2020-07-11 23:32:17 +00:00
|
|
|
"json-schema-to-typescript": "^9.1.1",
|
2019-09-09 03:22:53 +00:00
|
|
|
"latest-version": "^5.1.0",
|
2020-04-16 20:44:54 +00:00
|
|
|
"license-checker": "^25.0.1",
|
2019-08-05 10:24:43 +00:00
|
|
|
"message-port-polyfill": "^0.2.0",
|
2020-07-13 19:22:02 +00:00
|
|
|
"mime-types": "^2.1.27",
|
2020-01-01 14:49:23 +00:00
|
|
|
"mini-css-extract-plugin": "^0.9.0",
|
2018-11-01 07:25:26 +00:00
|
|
|
"mkdirp-promise": "^5.0.1",
|
2020-08-07 19:33:34 +00:00
|
|
|
"mocha": "^8.1.1",
|
2020-06-01 14:30:40 +00:00
|
|
|
"mockdate": "^3.0.2",
|
2020-01-07 16:45:52 +00:00
|
|
|
"monaco-editor-webpack-plugin": "^1.8.2",
|
2018-10-01 06:08:12 +00:00
|
|
|
"mz": "^2.7.0",
|
2019-09-20 20:21:24 +00:00
|
|
|
"node-fetch": "^2.6.0",
|
2020-06-04 10:09:08 +00:00
|
|
|
"nyc": "^15.1.0",
|
2020-06-01 13:18:22 +00:00
|
|
|
"open": "^7.0.4",
|
2019-08-06 10:51:42 +00:00
|
|
|
"optimize-css-assets-webpack-plugin": "^5.0.3",
|
2019-11-08 00:03:39 +00:00
|
|
|
"p-retry": "^4.2.0",
|
2020-05-20 13:20:28 +00:00
|
|
|
"postcss-focus-visible": "^5.0.0",
|
2018-11-12 09:05:35 +00:00
|
|
|
"postcss-loader": "^3.0.0",
|
2020-05-08 19:34:26 +00:00
|
|
|
"prettier": "^2.0.5",
|
2020-08-03 09:06:00 +00:00
|
|
|
"puppeteer": "5.2.1",
|
2020-02-01 16:12:45 +00:00
|
|
|
"puppeteer-firefox": "^0.5.1",
|
2019-01-08 07:44:08 +00:00
|
|
|
"react-docgen-typescript-webpack-plugin": "^1.1.0",
|
2020-06-01 13:18:45 +00:00
|
|
|
"react-hot-loader": "^4.12.21",
|
2020-04-02 22:23:27 +00:00
|
|
|
"react-test-renderer": "^16.13.1",
|
2020-07-24 19:40:50 +00:00
|
|
|
"sass": "^1.26.10",
|
2020-08-07 19:16:35 +00:00
|
|
|
"sass-loader": "^9.0.3",
|
2020-06-05 15:25:36 +00:00
|
|
|
"shelljs": "^0.8.4",
|
2019-05-01 13:18:13 +00:00
|
|
|
"signale": "^1.4.0",
|
2019-05-03 08:40:15 +00:00
|
|
|
"simmerjs": "^0.5.6",
|
2020-06-04 10:06:26 +00:00
|
|
|
"sinon": "^9.0.2",
|
2020-03-03 06:04:38 +00:00
|
|
|
"socket.io": "^2.3.0",
|
|
|
|
|
"socket.io-client": "^2.3.0",
|
2020-07-16 16:58:11 +00:00
|
|
|
"storybook-addon-designs": "^5.4.0",
|
2020-01-17 17:43:24 +00:00
|
|
|
"string-width": "^4.2.0",
|
2020-06-02 08:10:10 +00:00
|
|
|
"style-loader": "^1.2.1",
|
2020-07-01 23:10:29 +00:00
|
|
|
"stylelint": "^13.6.1",
|
2020-02-03 15:41:11 +00:00
|
|
|
"term-size": "^2.2.0",
|
2020-08-07 19:48:10 +00:00
|
|
|
"terser-webpack-plugin": "^4.0.0",
|
2019-12-06 23:18:08 +00:00
|
|
|
"thread-loader": "^2.1.3",
|
2020-04-20 16:05:16 +00:00
|
|
|
"to-string-loader": "^1.1.6",
|
2020-05-05 13:17:12 +00:00
|
|
|
"ts-graphql-plugin": "^1.12.0",
|
2020-07-16 22:40:10 +00:00
|
|
|
"ts-morph": "^7.1.2",
|
2020-06-05 15:25:12 +00:00
|
|
|
"ts-node": "^8.10.2",
|
2020-05-15 14:18:06 +00:00
|
|
|
"typescript": "^3.9.2",
|
2020-06-03 07:10:10 +00:00
|
|
|
"utc-version": "^2.0.2",
|
2020-06-05 15:24:46 +00:00
|
|
|
"web-ext": "^4.2.0",
|
2020-08-07 19:41:39 +00:00
|
|
|
"webpack": "^4.44.1",
|
2020-05-11 23:42:32 +00:00
|
|
|
"webpack-dev-server": "^3.11.0",
|
2019-05-02 23:09:20 +00:00
|
|
|
"worker-loader": "^2.0.0",
|
2020-07-16 22:45:48 +00:00
|
|
|
"yarn-deduplicate": "^2.1.1"
|
2018-11-12 09:05:35 +00:00
|
|
|
},
|
|
|
|
|
"dependencies": {
|
2020-04-02 17:11:41 +00:00
|
|
|
"@hot-loader/react-dom": "^16.13.0",
|
2020-03-18 21:36:34 +00:00
|
|
|
"@primer/octicons-react": "^9.6.0",
|
2020-05-14 06:20:37 +00:00
|
|
|
"@reach/accordion": "^0.10.2",
|
2020-05-14 05:53:56 +00:00
|
|
|
"@reach/listbox": "^0.10.1",
|
2020-05-11 23:42:58 +00:00
|
|
|
"@reach/menu-button": "0.10.2",
|
2020-07-01 23:09:52 +00:00
|
|
|
"@sentry/browser": "^5.19.0",
|
2018-11-12 09:05:35 +00:00
|
|
|
"@slimsag/react-shortcuts": "^1.2.1",
|
2020-07-02 20:37:40 +00:00
|
|
|
"@sourcegraph/codeintellify": "^7.1.0",
|
2020-07-16 22:19:09 +00:00
|
|
|
"@sourcegraph/extension-api-classes": "^1.1.0",
|
2018-12-10 05:35:40 +00:00
|
|
|
"@sourcegraph/extension-api-types": "link:packages/@sourcegraph/extension-api-types",
|
2018-12-17 05:00:57 +00:00
|
|
|
"@sourcegraph/react-loading-spinner": "0.0.7",
|
2018-11-12 09:05:35 +00:00
|
|
|
"@sqs/jsonc-parser": "^1.0.3",
|
2020-08-07 19:14:57 +00:00
|
|
|
"bootstrap": "^4.5.2",
|
2019-02-11 03:26:22 +00:00
|
|
|
"classnames": "^2.2.6",
|
2020-05-04 12:27:12 +00:00
|
|
|
"comlink": "^4.3.0",
|
2020-03-02 00:50:41 +00:00
|
|
|
"copy-to-clipboard": "^3.3.1",
|
2020-05-08 15:16:49 +00:00
|
|
|
"core-js": "^3.6.5",
|
2019-05-01 14:28:21 +00:00
|
|
|
"d3-axis": "^1.0.12",
|
2020-03-03 12:07:28 +00:00
|
|
|
"d3-scale": "^3.2.1",
|
2020-02-03 14:23:55 +00:00
|
|
|
"d3-selection": "^1.4.1",
|
2020-02-03 12:59:48 +00:00
|
|
|
"d3-shape": "^1.3.7",
|
2020-06-01 13:17:41 +00:00
|
|
|
"date-fns": "^2.14.0",
|
2019-11-27 15:15:05 +00:00
|
|
|
"delay": "^4.3.0",
|
2020-01-02 02:21:31 +00:00
|
|
|
"downshift": "^3.4.8",
|
2020-04-04 11:50:48 +00:00
|
|
|
"focus-visible": "^5.1.0",
|
2020-08-07 19:01:19 +00:00
|
|
|
"got": "^11.5.2",
|
2020-07-08 11:55:43 +00:00
|
|
|
"graphiql": "^1.0.3",
|
2018-12-07 18:50:22 +00:00
|
|
|
"he": "^1.2.0",
|
2020-07-10 10:41:35 +00:00
|
|
|
"highlight.js": "^10.1.1",
|
2020-04-20 17:07:40 +00:00
|
|
|
"highlightjs-graphql": "^1.0.1",
|
2019-11-01 22:16:29 +00:00
|
|
|
"is-absolute-url": "^3.0.3",
|
2020-08-07 19:50:09 +00:00
|
|
|
"lodash": "^4.17.19",
|
2020-08-07 19:34:13 +00:00
|
|
|
"marked": "^1.1.1",
|
2020-05-28 07:50:43 +00:00
|
|
|
"mdi-react": "^7.3.0",
|
2018-11-12 09:05:35 +00:00
|
|
|
"minimatch": "^3.0.4",
|
2019-12-03 15:53:57 +00:00
|
|
|
"monaco-editor": "^0.18.1",
|
2020-05-13 13:33:51 +00:00
|
|
|
"nice-ticks": "^1.0.1",
|
2020-01-02 02:20:04 +00:00
|
|
|
"open-color": "^1.7.0",
|
2019-08-06 10:41:11 +00:00
|
|
|
"pretty-bytes": "^5.3.0",
|
2020-04-02 22:23:27 +00:00
|
|
|
"react": "^16.13.1",
|
2020-03-03 14:33:21 +00:00
|
|
|
"react-circular-progressbar": "^2.0.3",
|
2020-04-02 23:15:44 +00:00
|
|
|
"react-dom": "npm:@hot-loader/react-dom@^16.13.0",
|
2020-07-03 00:47:01 +00:00
|
|
|
"react-dom-confetti": "^0.1.4",
|
2020-05-15 17:22:22 +00:00
|
|
|
"react-grid-layout": "^0.18.3",
|
2020-06-01 14:06:27 +00:00
|
|
|
"react-router": "^5.2.0",
|
|
|
|
|
"react-router-dom": "^5.2.0",
|
2020-06-03 07:02:16 +00:00
|
|
|
"react-stripe-elements": "^6.1.2",
|
2019-10-02 13:37:10 +00:00
|
|
|
"react-visibility-sensor": "^5.1.1",
|
2020-02-01 15:46:57 +00:00
|
|
|
"reactstrap": "^8.4.1",
|
2019-11-01 22:13:01 +00:00
|
|
|
"recharts": "^1.8.5",
|
2020-07-31 10:03:51 +00:00
|
|
|
"rxjs": "^6.6.2",
|
2020-06-04 10:04:58 +00:00
|
|
|
"sanitize-html": "^1.26.0",
|
2020-05-08 15:26:09 +00:00
|
|
|
"semver": "^7.3.2",
|
2020-07-01 23:11:40 +00:00
|
|
|
"slugify": "^1.4.4",
|
2018-11-12 09:05:35 +00:00
|
|
|
"sourcegraph": "link:packages/sourcegraph-extension-api",
|
|
|
|
|
"string-score": "^1.0.1",
|
2020-04-20 16:05:16 +00:00
|
|
|
"tagged-template-noop": "^2.1.1",
|
2019-04-15 20:44:57 +00:00
|
|
|
"textarea-caret": "^3.1.0",
|
2020-06-04 10:08:40 +00:00
|
|
|
"ts-key-enum": "^2.0.3",
|
2020-08-07 19:18:14 +00:00
|
|
|
"tslib": "^2.0.1",
|
2019-12-01 14:23:26 +00:00
|
|
|
"utility-types": "^3.10.0",
|
2020-07-03 09:34:59 +00:00
|
|
|
"uuid": "^8.2.0",
|
2020-05-15 16:24:12 +00:00
|
|
|
"webext-domain-permission-toggle": "^1.0.1",
|
2020-05-15 18:41:22 +00:00
|
|
|
"webextension-polyfill": "^0.6.0"
|
2019-06-12 12:07:44 +00:00
|
|
|
},
|
|
|
|
|
"resolutions": {
|
|
|
|
|
"history": "4.5.1"
|
2018-10-01 06:08:12 +00:00
|
|
|
}
|
|
|
|
|
}
|